Test suite maintainers are responsible for taking care of our automated test suite by:

  • Maintaining the test suite across technical migrations in:

    • the Tails codebase
    • Debian and the other software we are based on
    • the test suite platform and technologies (Cucumber, rjb, etc.)
  • Making the test suite more robust and maintainable, build in new generic features (snapshots, network services, refactoring, etc.).

  • Writing tests for regressions, unexpected or unbudgeted features, etc.

  • Refactoring the test suite code as needed, whenever we're trying to solve another practical problem, and the lack of refactoring gets in the way. In other words: refactoring will be dealt with by test suite maintainers as a integral part of modifying code, and not as a separate task.

Writing tests for new features should be estimated and budgeted each time we write grant applications for such features. Same for the refactoring that such work may require.

Writing tests to replace our old manual tests should also be budgeted separately.