Well-defined and automatically testable specifications
- Testing scientific software is highly important,
as it has direct impact on scientific insight.
- Most scientific software is not thoroughly tested
or even not tested at all.
- Tests can only prove the existence of bugs, not their absence.
- Testing should be done as early as possible, as often as possible,
and as automatic as possible.
- Test automatisation has dramatic impact on the design
of the code to be tested (e.g., modularity).
- Test-driven development turns the usual sequence upside down
and results in high test coverage.
- High test coverage by automatic tests increases the trust in software.
- Test-driven development leads to tests
that document the code and its specifications.
Which tool to use
Note: This section is clearly opinionated. There are definitely other tools available. However, this is the tool the author recommends from own experience.
Python Unittest Module
Unit testing framework originally inspired by JUnit
tools/tests/index.txt · Last modified: 2020/09/27 12:26 by till