Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1353673.1353676acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
research-article

Efficient time-aware prioritization with knapsack solvers

Published: 05 November 2007 Publication History

Abstract

Regression testing is frequently performed in a time constrained environment. This paper explains how 0/1 knapsack solvers (e.g., greedy, dynamic programming, and the core algorithm) can identify a test suite reordering that rapidly covers the test requirements and always terminates within a specified testing time limit. We conducted experiments that reveal fundamental trade-offs in the (i) time and space costs that are associated with creating a reordered test suite and (ii) quality of the resulting prioritization. We find knapsack-based prioritizers that ignore the overlap in test case coverage incur a low time overhead and a moderate to high space overhead while creating prioritizations exhibiting a minor to modest decrease in effectiveness. We also find that the most sophisticated 0/1 knapsack solvers do not always identify the most effective prioritization, suggesting that overlap-aware prioritizers with a higher time overhead are useful in certain testing contexts.

References

[1]
S. Elbaum, A. G. Malishevsky, and G. Rothermel. Test case prioritization: A family of empirical studies. IEEE Trans. Softw. Eng., 28(2):159--182, 2002.
[2]
S. G. Elbaum, A. G. Malishevsky, and G. Rothermel. Incorporating varying test costs and fault severities into test case prioritization. In Proc. of 23rd ICSE, pages 329--338, 2001.
[3]
M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York, NY, USA, 1979.
[4]
E. Gossett. Discrete Mathematics with Proof. Pearson Education, Inc., Upper Saddle River, New Jersey, 2003.
[5]
M. Hutchins, H. Foster, T. Goradia, and T. Ostrand. Experiments of the effectiveness of dataflow- and controlflow-based test adequacy criteria. In Proc. of ICSE, pages 191--200, 1994.
[6]
H. Kellerer, U. Pferschy, and D. Pisinger. Knapsack Problems. Springer-Verlag, Berlin, Germany, 2004.
[7]
A. Memon, I. Banerjee, N. Hashmi, and A. Nagarajan. DART: A framework for regression testing "nightly/daily builds" of GUI applications. In Proc. of ICSM, 2003.
[8]
D. Pisinger. Core problems in knapsack algorithms. Operations Research, 47(4):570--575, 1999.
[9]
G. Rothermel, R. J. Untch, and C. Chu. Prioritizing test cases for regression testing. IEEE Trans. on Softw. Eng., 27(10):929--948, 2001.
[10]
V. Roubtsov. Emma: a free java code coverage tool. http://emma.sourceforge.net/index.html, March 2005.
[11]
A. Srivastava and J. Thiagarajan. Effectively prioritizing tests in development environment. In Proc. of ISSTA, pages 97--106, 2002.
[12]
K. R. Walcott, M. L. Soffa, G. M. Kapfhammer, and R. S. Roos. Time-aware test suite prioritization. In Proc. of ISSTA, pages 1--12, New York, NY, USA, 2006.

Cited By

View all
  • (2023)EASE: An effort-aware extension of unsupervised key class identification approachesACM Transactions on Software Engineering and Methodology10.1145/3635714Online publication date: 2-Dec-2023
  • (2023)A Systematic Literature Review on Test Case Prioritization TechniquesAgile Software Development10.1002/9781119896838.ch7(101-159)Online publication date: 8-Feb-2023
  • (2021)Applying test case prioritization to software microbenchmarksEmpirical Software Engineering10.1007/s10664-021-10037-x26:6Online publication date: 30-Sep-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
WEASELTech '07: Proceedings of the 1st ACM international workshop on Empirical assessment of software engineering languages and technologies: held in conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE) 2007
November 2007
59 pages
ISBN:9781595938800
DOI:10.1145/1353673
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 November 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. coverage testing
  2. knapsack problem
  3. test prioritization

Qualifiers

  • Research-article

Conference

ASE07
Sponsor:

Acceptance Rates

WEASELTech '07 Paper Acceptance Rate 11 of 15 submissions, 73%;
Overall Acceptance Rate 11 of 15 submissions, 73%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)EASE: An effort-aware extension of unsupervised key class identification approachesACM Transactions on Software Engineering and Methodology10.1145/3635714Online publication date: 2-Dec-2023
  • (2023)A Systematic Literature Review on Test Case Prioritization TechniquesAgile Software Development10.1002/9781119896838.ch7(101-159)Online publication date: 8-Feb-2023
  • (2021)Applying test case prioritization to software microbenchmarksEmpirical Software Engineering10.1007/s10664-021-10037-x26:6Online publication date: 30-Sep-2021
  • (2020)Regression Test Case Prioritization Based on Fixed Size Candidate Set ART AlgorithmInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402050013830:03(291-320)Online publication date: 28-Apr-2020
  • (2019)An Empirical Study on the Use of Defect Prediction for Test Case Prioritization2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST)10.1109/ICST.2019.00041(346-357)Online publication date: Apr-2019
  • (2019)Prioritizing JUnit Test Cases Without Coverage Information: An Optimization Heuristics Based ApproachIEEE Access10.1109/ACCESS.2019.29223877(78092-78107)Online publication date: 2019
  • (2018)Redefining prioritizationProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180213(688-698)Online publication date: 27-May-2018
  • (2018)Optimal Scheduling for Combinatorial Software Testing and Design of Experiments2018 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)10.1109/ICSTW.2018.00063(295-301)Online publication date: Apr-2018
  • (2017)Coverage-Based Reduction of Test Execution Time: Lessons from a Very Large Industrial Project2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)10.1109/ICSTW.2017.6(3-12)Online publication date: Mar-2017
  • (2016)How does regression test prioritization perform in real-world software evolution?Proceedings of the 38th International Conference on Software Engineering10.1145/2884781.2884874(535-546)Online publication date: 14-May-2016
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media