This lesson is being piloted (Beta version)

Testing

This lesson provides an introduction to testing in the context of developing scientific software.

Prerequisites

Working knowledge of Python

Schedule

Setup Download files required for the lesson
00:00 1. Introduction Why do we test software?
00:10 2. Working with Legacy Code What is legacy code?
Why should you test legacy code before changing it?
00:45 3. Test framework What is a test framework?
How to write test cases using a test frmework?
01:15 4. Test Driven Development Why should you write tests first?
What are the 3 phases of TDD?
01:45 5. Refactoring for Testing Why are long methods hard to test?
02:45 6. Testing Big Changes What does it mean if you have to change a lot of tests while adding features?
What are the advantages of testing an interface?
03:45 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.