Sciweavers

PPPJ
2015
ACM

Identifying Test Refactoring Candidates with Assertion Fingerprints

7 years 11 months ago
Identifying Test Refactoring Candidates with Assertion Fingerprints
Test cases constitute around 30% of the codebase of a number of large software systems. Poor design of test suites hinders test comprehension and maintenance. Developers often copy-paste existing tests and reproduce both boilerplate and essential environment setup code as well as assertions. Test case refactoring would be valuable for developers aiming to control technical debt arising due to copy-pasted test cases. In the context of test code, identifying candidates for refactoring requires tedious manual effort. In this work, we specifically tailor static analysis techniques for test analysis. We present a novel technique, assertion fingerprints, for finding similar test cases based on the set of assertion calls in test methods. Assertion fingerprints encode the control flow around the ordered set of assertions in methods. We have implemented similar test case detection using assertion fingerprints and applied it to 10 test suites for opensource Java programs. We provide an e...
Zheng Felix Fang, Patrick Lam
Added 16 Apr 2016
Updated 16 Apr 2016
Type Journal
Year 2015
Where PPPJ
Authors Zheng Felix Fang, Patrick Lam
Comments (0)