posted on 2011-12-15, 10:50authored byMazeiar Salehie, Sen Li, Ladan Tahvildari, Rozita Dara, Mark Moore
Any changes for maintenance or evolution purposes may break existing working features, or may violate the requirements established in the previous software releases. Regression testing is essential to avoid these problems, but it may
be ended up with executing many time-consuming test cases. This paper tries to address prioritizing requirements-based
regression test cases. To this end, system-level testing is focused on two practical issues in industrial environments: i) addressing multiple goals regarding quality, cost and effort in a project, and ii) using non-code metrics due to the lack of detailed code metrics in some situations. This paper reports a goal-driven practice at Research In Motion (RIM) towards prioritizing
requirements-based test cases regarding these issues. Goal-Question-Metric (GQM) is adopted in identifying metrics for
prioritization. Two sample goals are discussed to demonstrate the approach: detecting bugs earlier and maintaining testing effort. We use two releases of a prototype Web-based email client to conduct a set of experiments based on the two
mentioned goals. Finally, we discuss lessons learned from applying the goal-driven approach and experiments, and we propose few directions for future research.
History
Publication
Industrial tack of 15th European Conference on Software Maintenance and Reengineering (CSMR);03/2011