In this lesson we will discuss why testing needs to be part of the software development cycle and how such a cycle can be implemented. We will exercise a collaborative testing/code review workflow.
|15:00||Motivation||Why should we write tests?|
What are unit tests, regression tests, and integration tests?
What is test coverage?
How should we approach testing?
|15:20||Tools||What tools are out there?|
|15:30||Exercise: Testing with pytest||
How can we implement a test suite using pytest?
I am a Fortran developer, do I need to care about pytest?
|15:50||Exercise: Automatic testing with Travis CI and Coveralls||
How can we implement automatic testing each time we push changes to the repository?
Why is it good to autoclose issues with commit messages?
|16:30||Exercise: Create a test for a function you have recently written|
|16:55||Conclusions and recommendations||What can we take home from this lesson?|