混合试验
可执行文件
象征性执行
计算机科学
调试
嵌入式软件
代码覆盖率
嵌入式系统
测试用例
软件
最坏情况执行时间
特征(语言学)
程序设计语言
执行时间
哲学
回归分析
机器学习
语言学
作者
Ting Chen,Xiaosong Zhang,Xiao‐li Ji,Cong Zhu,Yang Bai,Yue Wu
出处
期刊:IEEE Transactions on Reliability
[Institute of Electrical and Electronics Engineers]
日期:2014-10-21
卷期号:64 (1): 284-296
被引量:9
标识
DOI:10.1109/tr.2014.2363153
摘要
Traditional software testing methods are not effective for testing embedded software thoroughly due to the fact that generating effective test inputs to cover all code is extremely difficult. In this work, we propose an automatic method to generate test inputs for embedded executables which is based on concolic execution. The core idea of our method is to divide concolic execution into symbolic execution on hosts, and concrete execution on targets, so considerable development work can be saved. Our method overcomes the limitations of the software and hardware abilities of embedded systems by restricting heavy-weight work on resourceful hosts. One feature of our method is that it targets executables, so the source of tested software is not needed. Another feature is that tested programs run in a real environment rather than in a simulator, so accurate run-time information can be acquired. Symbolic execution and concrete execution are coordinated by cross-debugging functions. Then we implement our method on Wind River VxWorks. Experiments show that our method achieves high code coverage with acceptable speed.
科研通智能强力驱动
Strongly Powered by AbleSci AI