Unit tests reloaded: parameterized unit testing with symbolic execution
- 17 July 2006
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Software
- Vol. 23 (4), 38-47
- https://doi.org/10.1109/ms.2006.117
Abstract
Unit tests are becoming popular. Are there ways to automate the generation of good unit tests? Parameterized unit tests are unit tests that depend on inputs. PUTs describe behavior more concisely than traditional unit tests. We use symbolic execution techniques and constraint solving to find inputs for PUTs that achieve high code coverage, to turn existing unit tests into PUTs, and to generate entirely new PUTs that describe an existing implementation's behavior. Traditional testing benefits from these techniques because test inputs - including the behavior of entire classes - can often be generated automatically from compact PUTsKeywords
This publication has 4 references indexed in Scilit:
- CUTEPublished by Association for Computing Machinery (ACM) ,2005
- Test input generation with java PathFinderPublished by Association for Computing Machinery (ACM) ,2004
- A static analyzer for finding dynamic programming errorsSoftware: Practice and Experience, 2000
- Symbolic execution and program testingCommunications of the ACM, 1976