DocumentCode :
1851485
Title :
ReAssert: Suggesting Repairs for Broken Unit Tests
Author :
Daniel, Brett ; Jagannath, Vilas ; Dig, Danny ; Marinov, Darko
Author_Institution :
Univ. of Illinois at Urbana-Champaign, Urbana, IL, USA
fYear :
2009
fDate :
16-20 Nov. 2009
Firstpage :
433
Lastpage :
444
Abstract :
Developers often change software in ways that cause tests to fail. When this occurs, developers must determine whether failures are caused by errors in the code under test or in the test code itself. In the latter case, developers must repair failing tests or remove them from the test suite. Repairing tests is time consuming but beneficial, since removing tests reduces a test suite´s ability to detect regressions. Fortunately, simple program transformations can repair many failing tests automatically. We present ReAssert, a novel technique and tool that suggests repairs to failing tests´ code which cause the tests to pass. Examples include replacing literal values in tests, changing assertion methods, or replacing one assertion with several. If the developer chooses to apply the repairs, ReAssert modifies the code automatically. Our experiments show that ReAssert can repair many common test failures and that its suggested repairs correspond to developers´ expectations.
Keywords :
program testing; software maintenance; ReAssert; assertion method; broken unit tests; code under test; program transformation; test code; test repair; test suite; Application software; Automatic testing; Government; Logic testing; Performance evaluation; Programming; Protection; Software engineering; Software testing; USA Councils; Software maintenance; Software test maintenance; Software testing; Software tools;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Automated Software Engineering, 2009. ASE '09. 24th IEEE/ACM International Conference on
Conference_Location :
Auckland
ISSN :
1938-4300
Print_ISBN :
978-1-4244-5259-0
Electronic_ISBN :
1938-4300
Type :
conf
DOI :
10.1109/ASE.2009.17
Filename :
5431753
Link To Document :
بازگشت