Authors
Cyrille Artho, Howard Barringer, Allen Goldberg, Klaus Havelund, Sarfraz Khurshid, Mike Lowry, Corina Pasareanu, Grigore Roşu, Koushik Sen, Willem Visser, Rich Washington
Publication date
2005/5/26
Journal
Theoretical Computer Science
Volume
336
Issue
2-3
Pages
209-234
Publisher
Elsevier
Description
Software testing is typically an ad hoc process where human testers manually write test inputs and descriptions of expected test results, perhaps automating their execution in a regression suite. This process is cumbersome and costly. This paper reports results on a framework to further automate this process. The framework consists of combining automated test case generation based on systematically exploring the input domain of the program with runtime verification, where execution traces are monitored and verified against properties expressed in temporal logic. Capabilities also exist for analyzing traces for concurrency errors, such as deadlocks and data races. The input domain of the program is explored using a model checker extended with symbolic execution. Properties are formulated in an expressive temporal logic. A methodology is advocated that automatically generates properties specific to each input …
Total citations
200520062007200820092010201120122013201420152016201720182019202020212022202320249810129118897939872532
Scholar articles
C Artho, H Barringer, A Goldberg, K Havelund… - Theoretical Computer Science, 2005