【问题标题】:How do I create a testcase that targets a specified branch?如何创建针对特定分支的测试用例?
【发布时间】:2022-10-23 20:32:40
【问题描述】:

我尝试使用 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
    ...

是否有任何选项可以创建指定的分支?

我不想制作所有测试用例。

【问题讨论】:

    标签: llvm klee symbolic-execution


    【解决方案1】:

    assert(0); 语句插入您感兴趣的分支,然后使用参数 -exit-on-error-type=Assert 运行 klee。

    KLEE 将退出并为您检测的路径生成一个测试用例。这是我想出的最简单的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-07
      • 1970-01-01
      • 2013-06-28
      相关资源
      最近更新 更多