我是新的程序分析区域和在这个区域阅读一些材料后,我有一些问题我找不到相应的答案..

参见,如果我实现工具:符号执行+具体执行 就像 dart

然后,我认为它应该覆盖所有执行路径,同时保持动态分析功能..

我告诉动态分析不能涵盖所有的执行路径,但基本上是为什么?我认为像Dart这样的技术现在已经成熟...

其他,如模型检查,理论上保证100%代码覆盖......我是对的吗?

谁能给我一些帮助吗?谢谢!

有帮助吗?

解决方案

通过一段代码的路径数是“如果”语句的数量的指数。例如,如果您有这样的代码:

if (a) {
  // do something
}
if (b) {
  // do something
}
...
if (z) {
  // do something
}
.

然后有67108864可能的代码路径,具体取决于26个布尔变量的值。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top