In this lesson, we'll discuss three topics that fall under the category of best practices--software development techniques that aren't required, but have been found helpful and productivity-enhancing.
The topics:
- unit testing,
- continuous integration, and
- collaboration techniques
were selected because they're used on a near-daily basis at CSDMS for the development and maintenance of pymt and Landlab, and we believe they're helpful, in general, for the work of ESP scientists.
Learning objectives:
- Understand unit testing concepts
- See how to write a unit test for
pytest
- Understand continuous integration concepts
- Understand some recommended behaviors for working on collaborative projects
This lesson continues in the following sections.