Recently, I have started to help with implementing the test automation suite for our nightly and on-pull request builds.
We are following an agile scrum (2-week) process which includes two review processes (we work with an off-shore team - one testing and client code review). During our code review stage, we evaluate each test case using 7 steps:
- Matches business requirements
- Following set coding standards (using tools and documentation)
- Runs in headless mode
- Runs in UI mode
- Fails if expected condition doesn’t match (using debug, we change the actual element before it’s validated to ensure no false-positives)
- Report looks good
- Doesn’t fail in Jenkins (single test)
If we’re happy, the ticket would be merged into the Develop branch. Then if needed, the whole regression suite is ran via Jenkins to ensure no related issues.
How do you review test cases to ensure they’re acceptable for the test suite?