DocumentCode
625532
Title
Automated Detection of Test Fixture Strategies and Smells
Author
Greiler, Michaela ; Van Deursen, Arie ; Storey, Margaret-Anne
Author_Institution
Delft Univ. of Technol., Delft, Netherlands
fYear
2013
fDate
18-22 March 2013
Firstpage
322
Lastpage
331
Abstract
Designing automated tests is a challenging task. One important concern is how to design test fixtures, i.e. code that initializes and configures the system under test so that it is in an appropriate state for running particular automated tests. Test designers may have to choose between writing in-line fixture code for each test or refactor fixture code so that it can be reused for other tests. Deciding on which approach to use is a balancing act, often trading off maintenance overhead with slow test execution. Additionally, over time, test code quality can erode and test smells can develop, such as the occurrence of overly general fixtures, obscure in-line code and dead fields. In this paper, we show that test smells related to fixture set-up occur in industrial projects. We present a static analysis technique to identify fixture related test smells. We implemented this test analysis technique in a tool, called TestHound, which provides reports on test smells and recommendations for refactoring the smelly test code. We evaluate the tool through three industrial case studies and show that developers find that the tool helps them to understand, reflect on and adjust test code.
Keywords
program diagnostics; program testing; software maintenance; TestHound; automated detection; automated tests design; maintenance overhead; software refactoring; static analysis technique; test analysis technique; test code quality; test fixture strategies; test smells; Fixtures; Java; Maintenance engineering; Measurement; Medical services; Software systems; Testing; maintainability; software testing; test code comprehension; test code refactoring; test fixture; test smells;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Testing, Verification and Validation (ICST), 2013 IEEE Sixth International Conference on
Conference_Location
Luembourg
Print_ISBN
978-1-4673-5961-0
Type
conf
DOI
10.1109/ICST.2013.45
Filename
6569744
Link To Document