符号执行

符号执行


什么是符号执行?

符号执行是一种软件测试技术,有助于生成测试数据和证明程序质量。

使用符号执行的步骤:

  • 执行需要选择由一组数据值执行的路径。使用实际数据执行的程序会输出一系列值。

  • 在符号执行中,数据被具有一组表达式的符号值替换,每个输出变量一个表达式。

  • 符号执行的常用方法是对程序进行分析,从而创建流程图。

  • 流程图标识了与每个流程相关联的决策点和分配。通过从入口点遍历流图,生成赋值语句和分支谓词的列表。

符号执行的问题:

  • 如果循环中的迭代次数已知,则符号执行无法继续。

  • 第二个问题是任何外部代码或模块调用的调用。

  • 符号执行不能用于数组。

  • 符号执行无法识别不可行的路径。

符号执行应用:

  • 路径域检查

  • 测试数据生成

  • 分区分析

  • 符号调试

觉得文章有用?

点个广告表达一下你的爱意吧 !😁