Invasive Software Testing: Mutating Target Programs to Diversify Test Exploration for High Test Coverage
Invasive Software Testing: Mutating Target Programs to Diversify Test Exploration for High Test Coverage
复制标题
侵入式软件测试:改变目标程序以使测试探索多样化以实现高测试覆盖率
DOI:
--
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Moonzoo Kim
中科院分区:
文献类型:
--
作者:
Yunho Kim;Shin Hong;Bongseok Ko;Duy Loc Phan;Moonzoo Kim
Software testing techniques have advanced significantly over several decades; however, most of current techniques still test a target program as it is, and fail to utilize valuable information of diverse test executions on many variants of the original program in test generation. This paper proposes a new direction for software testing – Invasive Software Testing (IST). IST first generates a set of target program variants m1; :::;mn from an original target program p by applying mutation operations 1; :::; n. Second, given a test suite T, IST executes m1; :::;mn with T and records the test runs which increase test coverage compared to p with T. Based on the recorded information, IST generates guideposts for automated test generation on p toward high test coverage. Finally, IST generates test inputs on p with the guideposts and achieves higher test coverage. We developed DEMINER which implements IST for C programs through software mutation and concolic testing. Further, we showed the effectiveness of DEMINER on three real-world target programs Busybox-ls, Busybox-printf, and GNU-find. The experiment results show that the amount of the improved branch coverage by DEMINER is 24.7% relatively larger than those of the conventional concolic testing techniques on average.