September 27, 2013

No Time to Test

There was a thought-provoking discussion in the Software Testing Space LinkedIn group this month. The problem posed by Amit (many thanks for raising an important practical problem) was thus.

Problem One is the only QA engineer for a large team of developers. The rate at which the developers build new features is far greater than the rate at which the QA engineer can test them. How would one ensure high quality is maintained in the application?

Here are the solutions to this common problem that were proposed by the expert group members:
  1. Involve the developers in the team for some testing.
  2. At first, test the high business priority features and then the high-risk features. Perform a regression test whenever time permits.
  3. Prioritize all features to be tested. Test the new features and important bug fixes first.
  4. Raise the problem to the team highlighting the limited test coverage due to lack of time. Make sure that the team understands and accepts the risk.
  5. Use test automation to automate sanity test and regression test cases. Build the test automation framework so that developers can easily build automated test scripts.
  6. Merge test cases or write workflow-based test cases that allow more coverage and take less effort to write and execute.
  7. Use Requirement and Risk based testing approach by defining the testing scope based on priority, impact and timelines.
Overall, the members agreed on the best solutions as no. 4 and no. 1 and 5. Michael neatly summarized the solution. Many thanks, Michael.

Solution Ensure that the team is aware of the limitations of time and resources for testing new features and bug fixes and regression testing. The team needs to understand the risk due to these limitations. Always do your best. Ask and accept help from any team member with your testing tasks.