Testing with FIRST principles
The FIRST principles of testing stand for:
- FAST - tests should run fast, slow tests are a deterrent to developers running them.
- Isolated/Independent - tests should have no external dependencies
- Repeatable - you should be able to run a test over and over again, no state outside the test is affected
- Self-validating - the outcome of the test is asserted inside the test
- Thorough - assertions are appropriate and complete