×

使用符号执行的Java程序中的运行时异常检测。 (英语) Zbl 1313.68025号

摘要:软件系统的大多数运行时故障都只能在测试执行过程中发现,这会带来非常高的成本。在Java程序中,运行时故障表现为未处理的运行时异常。
在本文中,我们提供了一种方法和工具,用于检测Java程序中的运行时异常,而无需对软件执行测试。我们使用符号执行技术来实现该方法。通过符号化地执行程序的方法,我们可以确定抛出异常的执行分支。我们的算法能够生成导致程序在运行时失败的具体测试输入。
我们使用Java PathFinder的Symbolic PathFindr扩展作为符号执行引擎。除了一些小的示例代码外,我们还在三个开源系统上评估了我们的算法:jEdit、ArgoUML和log4j。我们在log4j系统中发现了多个错误,这些错误也被报告为其错误跟踪系统中的实际错误。

MSC公司:

68甲15 编程语言理论
第68页第19页 其他编程范式(面向对象、顺序、并发、自动等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部 链接