Automatic generation of high quality test sets via CBMC

作者: Enrico Giunchiglia , Massimo Narizzano , Alessandra Puddu , Emanuele Di Rosa , Gabriele Palma

DOI:

关键词:

摘要: Software Testing is the most used technique for software verication in industry. In case of safety critical software, test set can be required to cover a high percentage (up 100%) code according some metrics. Unfortunately, attaining such percentages not easy using standard automatic tools tests generation, and manual generation by domain experts often necessary, thereby signicantly increasing associated costs. previous papers, we have shown how it possible automatize process C programs via bounded model checker CBMC. particular, productively use CBMC sets covering 100% branches 5 modules ERTMS/ETCS, industrial Ansaldo STS. automatically generated, lower \quality" if compared manually generated experts: Both attained desired branch coverage, but sizes are roughly twice corresponding ones. Indeed, contain redundant tests, i.e. that do contribute reach coverage. These useless from perspective detect then eliminate posteriori, and, maintained, imply additional costs during process. this paper present new methodology \high quality" guaranteeing full Given an initially empty T , basic idea extend with as many which covered . This requires analysis control ow graph

参考文章(16)
Vivekananda Murthy Vedula, HDL slicing for verification and test ,(2003)
Niklas Eén, Niklas Sörensson, An Extensible SAT-solver theory and applications of satisfiability testing. ,vol. 2919, pp. 502- 518 ,(2003) , 10.1007/978-3-540-24605-3_37
Jonathan de Halleux, Nikolai Tillmann, Parameterized Unit Testing with Pex Tests and Proofs. pp. 171- 181 ,(2008) , 10.1007/978-3-540-79124-9_12
Hana Chockler, Orna Kupferman, Robert P. Kurshan, Moshe Y. Vardi, A Practical Approach to Coverage in Model Checking computer aided verification. pp. 66- 78 ,(2001) , 10.1007/3-540-44585-4_7
Cristian Cadar, Daniel Dunbar, Dawson Engler, KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs operating systems design and implementation. pp. 209- 224 ,(2008) , 10.5555/1855741.1855756
Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, F. Kenneth Zadeck, Efficiently computing static single assignment form and the control dependence graph ACM Transactions on Programming Languages and Systems. ,vol. 13, pp. 451- 490 ,(1991) , 10.1145/115372.115320
Gordon Fraser, Franz Wotawa, Paul Ammann, Issues in using model checkers for test case generation Journal of Systems and Software. ,vol. 82, pp. 1403- 1418 ,(2009) , 10.1016/J.JSS.2009.05.016
David A. Plaisted, Steven Greenbaum, A Structure-preserving Clause Form Translation Journal of Symbolic Computation. ,vol. 2, pp. 293- 304 ,(1986) , 10.1016/S0747-7171(86)80028-1
Gordon Fraser, Franz Wotawa, Using LTL rewriting to improve the performance of model-checker based test-case generation Proceedings of the 3rd international workshop on Advances in model-based testing - A-MOST '07. pp. 64- 74 ,(2007) , 10.1145/1291535.1291542
Koushik Sen, Darko Marinov, Gul Agha, CUTE: a concolic unit testing engine for C foundations of software engineering. ,vol. 30, pp. 263- 272 ,(2005) , 10.1145/1081706.1081750