@inbook{4ef1a38e9e2a497f857192e7911a46bc,
title = "Experiments with test case generation and runtime analysis",
abstract = "Software testing is typically an ad hoc process where human testers manually write many test inputs and expected test results, perhaps automating their execution in a regression suite. This process is cumbersome and costly. This paper reports preliminary results on an approach to further automate this process. The approach consists of combining automated test case generation based on systematically exploring the program's input domain, with runtime analysis, where execution traces are monitored and verified against temporal logic specifications, or analyzed using advanced algorithms for detecting concurrency errors such as data races and deadlocks. The approach suggests to generate specifications dynamically per input instance rather than statically once-and-for-all. The paper describes experiments with variants of this approach in the context of two examples, a planetary rover controller and a space craft fault protection system.",
author = "Cyrille Artho and Doron Drusinksy and Allen Goldberg and Klaus Havelund and Mike Lowry and Corina Pasareanu and Grigore Ro{\c s}u and Willem Visser",
year = "2003",
doi = "10.1007/3-540-36498-6_5",
language = "English (US)",
isbn = "3540006249",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer",
pages = "87--107",
editor = "Egon Borger and Angelo Gargantini and Elvinia Riccobene",
booktitle = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
address = "Germany",
}