Title :
Test factoring: focusing test suites for the task at hand
Author :
Saff, David ; Ernst, Michael D.
Author_Institution :
Comput. Sci. & Artificial Intelligence Lab, MIT, USA
Abstract :
Frequent execution of a test suite during software maintenance can catch regression errors early, indicate whether progress is being made, and improve productivity. However, if the test suite takes a long time to produce feedback, the developer is slowed down, and the benefit of frequent testing is reduced. After a program is edited, ideally, only changed code would be tested. Any time spent executing previously tested, unchanged parts of the code is wasted. For a large test suite containing many small unit tests, test selection and prioritization can be effective. Test selection runs only those tests that are possibly affected by the most recent change, and test prioritization can run first the tests that are most likely to reveal a recently-introduced error.
Keywords :
program testing; software maintenance; mock object; regression error; software maintenance; test factoring; test prioritization; test selection; unit testing; Algorithm design and analysis; Artificial intelligence; Automatic testing; Computer bugs; Computer science; Costs; Debugging; Instruments; Software testing; System testing;
Conference_Titel :
Software Engineering, 2005. ICSE 2005. Proceedings. 27th International Conference on
Print_ISBN :
1-59593-963-2
DOI :
10.1109/ICSE.2005.1553636