How to Choose the Right Test Cases for Automation Testing

Daniel A
DSF Web Services Engineering
3 min readFeb 7, 2022

In DSF Web Services, we use agile practice approach to keep our products evolving and getting bigger and wider to serve our business and clients. The more requirements are pilling up, the more test cases that we have. Automation testing is needed to help us maintaining the quality of the products.

Even though the automation testing helps us to run most of the cases, automating everything will only do more harm than good. To choose the right test cases to be automated is a critical step in automation testing development. In this article, I will share how to choose the right test cases to be automated, so it will be more effective and efficient for our process.

Test Cases and Their Roles

A test case is a collection of specifications/requirements, steps, input data, testing conditions, and expected outcomes for a software or application under the test. One feature have to be at least 2 (two) test cases or scenario to achieve the desired result: a positive scenario where the input and expectation is correctness and a negative scenario where the input and expectation is incorrectness. The combination of both test cases and scenario is set into a test suite to achieve the high coverage of testing. Not all test cases have to be automated because it will be costly, especially in time. Choosing the unsuitable test cases to be automated can be wasting time and resources.

Test Case Criteria for Automation Testing

To choose the suitable test case for automation testing, we need to pay attention on the requirements and team’s capability. The test cases can be chosen by considering some following factors:

  • Effectiveness and efficiency of the test case.
  • Resources, e.g. devices, browser, OS, database involved.
  • Test case’s characteristics: the more critically and complex the feature, the more it is likely to be automated to avoid human error.
  • The downside of automation, e.g. implementation cost, maintenance cost, and human flexibility shouldn’t outweigh the value of time, insights, etc.

Test Case Recommendation for Automation Testing

These are several test cases which are recommended for automation testing:

  1. Part of Regression Testing. Regression testing are often time consuming but really needed for each release’s testing process.
  2. Part of Performance Testing, because they are deliberately repetitive and time consuming.
  3. Part of Data-driven Testing and happens of the crucial feature, because automation testing is to minimize human error
  4. Part of Integration testing
  5. API Testing
  6. Cross Browser testing, to minimize the time consumed.

Test cases that are not recommended for automation testing:

  1. Exploratory and Ad-hoc testing, because these testing don’t have fixed criteria and often resulting false outcome
  2. Usability Testing or UX, because automation testing cannot perfectly imitating human’s expression
  3. Intermittent Test, because automation for this testing will produce unreliable result
  4. Anti-automation Test like captcha and others.

Conclusion

Automation testing could greatly increase testing speed and help testers in maintaining the quality of the product. Choosing the proper test cases to be automated is a crucial part to meet an effective and efficient process. Choosing improper test case could do more harm than good for our process. By choosing the right ones, the testers can work more efficiently without eliminating the quality of our products.

--

--