INTERDEPENDENT TEST CASES
Test cases depend on each other, that is they can only be executed in a fixed sequence
Test cases must be executed in a fixed sequence because the preceding test cases create the initial conditions for the following ones.
Who designed the test cases, and for what purpose? Are manual test cases being automated "as is"?
If so, this can cause problems, because what makes sense for manual testing may not be the most appropriate solution for automated tests, particularly the dependencies of tests on each other. If one of a sequence of manual tests fails, the tester can usually find a way to continue testing, possibly by inserting the data that should have been produced by the failing test. But the tool will simply be "stopped in its tracks" by a failing test - it's not possible or practical to anticipate all possible ways that all tests can fail so that an automated solution can be implemented.
See also MANUAL MIMICRY - an issue describing what happens when you try to automate manual tests too literally.
- FRESH SETUP: use this pattern to initialize each test case independently
- INDEPENDENT TEST CASES: this pattern is the best solution for this issue