我试着"动态符号执行";与klee。
如何创建针对指定分支的测试用例?
int a = 0;
klee_make_symbolic(&a, sizeof(a), "a");
if (a == 0)
... // I want to touch only this branch
else if (a > 0)
...
else
...
是否有任何选择进行指定的分支?
我不想做所有的测试用例。
将assert(0);
语句插入到感兴趣的分支中,然后使用参数-exit-on-error-type=Assert
运行klee。
KLEE将退出并为您检测的路径生成测试用例。这是我想出的最简单的方法。