Prioritizing manual test cases in traditional and rapid release environments

H Hemmati, Z Fang, MV Mantyla - 2015 IEEE 8th international …, 2015 - ieeexplore.ieee.org
2015 IEEE 8th international conference on software testing …, 2015ieeexplore.ieee.org
Test case prioritization is one of the most practically useful activities in testing, specially for
large scale systems. The goal is ranking the existing test cases in a way that they detect
faults as soon as possible, so that any partial execution of the test suite detects maximum
number of defects for the given budget. Test prioritization becomes even more important
when the test execution is time consuming, eg, manual system tests vs. automated unit tests.
Most existing test case prioritization techniques are based on code coverage, which requires …
Test case prioritization is one of the most practically useful activities in testing, specially for large scale systems. The goal is ranking the existing test cases in a way that they detect faults as soon as possible, so that any partial execution of the test suite detects maximum number of defects for the given budget. Test prioritization becomes even more important when the test execution is time consuming, e.g., manual system tests vs. automated unit tests. Most existing test case prioritization techniques are based on code coverage, which requires access to source code. However, manual testing is mainly done in a black- box manner (manual testers do not have access to the source code). Therefore, in this paper, we first examine the existing test case prioritization techniques and modify them to be applicable on manual black-box system testing. We specifically study a coverage- based, a diversity-based, and a risk driven approach for test case prioritization. Our empirical study on four older releases of Mozilla Firefox shows that none of the techniques are strongly dominating the others in all releases. However, when we study nine more recent releases of Firefox, where the development has been moved from a traditional to a more agile and rapid release environment, we see a very signifiant difference (on average 65% effectiveness improvement) between the risk-driven approach and its alternatives. Our conclusion, based on one case study of 13 releases of an industrial system, is that test suites in rapid release environments, potentially, can be very effectively prioritized for execution, based on their historical riskiness; whereas the same conclusions do not hold in the traditional software development environments.
ieeexplore.ieee.org
Showing the best result for this search. See all results