Maintaining test data and scenarios
Test cases verify that the application will behave as expected when deployed to production. The tests also ensure that the expectations are still met when new features are developed.
However, it's not sufficient to define test scenarios and test data only once. Business logic will evolve and change over time and test cases need to adapt.
Importance of maintainable tests
Both for writing and managing test cases, it's crucial to create maintainable test code. Over time the number of test cases will increase. In order to stay productive during development, some time and effort needs to be spent on the test code quality.
For production code, every engineer agrees that code quality is an important requirement. Since tests are not part of the application that is running in production they are often treated differently. Experience shows that developers rarely invest time and effort in test code quality. However, the quality of test cases has a huge impact on the...