摘要
创新点
软件测试是工业界最常用的软件验证技术, 而白盒测试是最基础的软件测试方法。 为了提高白盒测试有效性, 本文创新性地提出了一种混合的覆盖驱动测试方法, 它接受一个待测程序和目标覆盖准则为输入, 然后为可达的测试对象自动生成测试用例, 同时也检测出不可达的测试对象。 本文将驱动测试问题转化为特定路径的寻找问题, 提出了带引导的符号执行技术和增强的模型检查技术, 最终又将两项技术结合在一起, 进一步提高测试覆盖率并降低测试时间, 实现优势互补。
References
Myers G J, Sandler C. The Art of Software Testing. Hoboken: John Wiley & Sons, 2004
National Institute of Standards and Technology. The Economic Impacts of Inadequate Infrastructure for Software Testing. Planning Report 02-3. 2004
Ammann P, Offutt A J, Huang H. Coverage criteria for logical expressions. In: Proceedings of the 14th International Symposium on Software Reliability Engineering, Denver, 2003. 99–107
Su T, Wu K, Miao W, et al. A Survey on Data Flow Testing. Technical Report SU01. 2015
Godefroid P, Klarlund N, Sen K. DART: directed automated random testing. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation. New York: ACM, 2005. 213–223
Beyer D, Chlipala A J, Henzinger T A, et al. Generating tests from counterexamples. In: Proceedings of the 26th International Conference on Software Engineering, Edinburgh, 2004. 326–335
Su T, Fu Z, Pu G, et al. Combining symbolic execution and model checking for data flow testing. In: Proceedings of IEEE/ACM 37th International Conference on Software Engineering, Florence, 2015. 654–665
Su T, Pu G, Fang B, et al. Automated coverage-driven test data generation using dynamic symbolic execution. In: Proceedings of the 8th International Conference on Software Security and Reliability (SERE), San Francisco, 2014. 98–107
Author information
Authors and Affiliations
Corresponding authors
Additional information
The authors declare that they have no conflict of interest.
Rights and permissions
About this article
Cite this article
Su, T., Pu, G., Miao, W. et al. Automated coverage-driven testing: combining symbolic execution and model checking. Sci. China Inf. Sci. 59, 98101 (2016). https://doi.org/10.1007/s11432-016-5589-6
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s11432-016-5589-6