Test organization and naming
As our system grows, so will our test suites.
For our production code, we have learned techniques to keep it maintainable.
For example, we try to structure our logic into sub-aspects, put them in specific locations and give the units meaningful names.
We want to achieve the same for our tests.
One of the main goals is that a developer - or generally speaking, the person who has to maintain the test - knows where to find which test.
We also want to understand as quickly as possible what the test is for and what might be the reason for a failing test.