Extraction-Based Regression Test Selection
(2016) 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, PPJ '16- Abstract
- Frequent regression testing is a core activity in agile software development, but large test suites can lead to long test running times, hampering agility. By safe RTS (Regression Test Selection) techniques, a subset of the tests can be identified that cover all tests that can change result since the last run. To pay off in practice, the RTS overhead must be low. Most existing RTS techniques are based on dynamic coverage analysis, making the overhead related to the tests run. We present Extraction-Based RTS, a new safe RTS technique which uses a fast static analysis with very low overhead, related to the size of the modification rather than to the tests run. The method is suitable for program-driven testing, commonly used in agile... (More)
- Frequent regression testing is a core activity in agile software development, but large test suites can lead to long test running times, hampering agility. By safe RTS (Regression Test Selection) techniques, a subset of the tests can be identified that cover all tests that can change result since the last run. To pay off in practice, the RTS overhead must be low. Most existing RTS techniques are based on dynamic coverage analysis, making the overhead related to the tests run. We present Extraction-Based RTS, a new safe RTS technique which uses a fast static analysis with very low overhead, related to the size of the modification rather than to the tests run. The method is suitable for program-driven testing, commonly used in agile development, where each test is a piece of code that uses parts of the system under test. We have implemented the method for Java, and bench-marked it on a number of open source projects, showing that it pays off substantially in practice. (Less)
Please use this url to cite or link to this publication:
https://lup.lub.lu.se/record/182aae2b-336d-4340-941e-fafddf652981
- author
- Öqvist, Jesper LU ; Hedin, Görel LU and Magnusson, Boris LU
- organization
- publishing date
- 2016-08-29
- type
- Chapter in Book/Report/Conference proceeding
- publication status
- published
- subject
- host publication
- Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform : Virtual Machines, Languages, and Tools - Virtual Machines, Languages, and Tools
- article number
- 5
- publisher
- Association for Computing Machinery (ACM)
- conference name
- 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, PPJ '16
- conference location
- Lugano, Switzerland
- conference dates
- 2016-08-29 - 2016-09-02
- external identifiers
-
- scopus:85021840562
- ISBN
- 978-1-4503-4135-6
- DOI
- 10.1145/2972206.2972224
- project
- Contributions to Declarative Implementation of Static Program Analysis
- ELLIIT LU P05: Scalable Language Tools for Cyber-Physical Systems
- language
- English
- LU publication?
- yes
- id
- 182aae2b-336d-4340-941e-fafddf652981
- date added to LUP
- 2016-12-15 13:07:02
- date last changed
- 2022-04-24 20:07:56
@inproceedings{182aae2b-336d-4340-941e-fafddf652981, abstract = {{Frequent regression testing is a core activity in agile software development, but large test suites can lead to long test running times, hampering agility. By safe RTS (Regression Test Selection) techniques, a subset of the tests can be identified that cover all tests that can change result since the last run. To pay off in practice, the RTS overhead must be low. Most existing RTS techniques are based on dynamic coverage analysis, making the overhead related to the tests run. We present Extraction-Based RTS, a new safe RTS technique which uses a fast static analysis with very low overhead, related to the size of the modification rather than to the tests run. The method is suitable for program-driven testing, commonly used in agile development, where each test is a piece of code that uses parts of the system under test. We have implemented the method for Java, and bench-marked it on a number of open source projects, showing that it pays off substantially in practice.}}, author = {{Öqvist, Jesper and Hedin, Görel and Magnusson, Boris}}, booktitle = {{Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform : Virtual Machines, Languages, and Tools}}, isbn = {{978-1-4503-4135-6}}, language = {{eng}}, month = {{08}}, publisher = {{Association for Computing Machinery (ACM)}}, title = {{Extraction-Based Regression Test Selection}}, url = {{http://dx.doi.org/10.1145/2972206.2972224}}, doi = {{10.1145/2972206.2972224}}, year = {{2016}}, }