Integration testing is vitally important for ensuring software quality, since many serious software defects are not isolated in single components. Unfortunately, creating integration tests is often a manual and laborious effort. A fundamental problem of software testing is how to automatically create effective integration tests with oracles that find bugs efficiently.We created a novel approach for Automatically SyntheSizing Integration Software Tests (ASSIST) that automatically obtains models that describe frequently interacting components in software applications, thus reducing the number of synthesized integration tests and increasing their bug-finding power. In ASSIST, static and dynamic analyses are used along with carving runtime states to obtain test input data as well as oracles for the synthesized integration tests. We experimented with three Java applications and show that integration tests that are synthesized using ASSIST have comparable bug finding power with manually created integration tests.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.