测试工具,单一或功能,正在运行某些部分的代码。因此,我们可以定义代码覆盖的概念,这是代码的一部分,实际上正在由测试工具进行测试。
但是,是否有任何基于测试工具的特性或插件可以帮助您了解代码的某些部分是否从未在应用程序中执行,即死代码?
发布于 2021-02-24 17:35:47
您正在寻找一个动态的、运行时的解决方案,因为就像您编写的静态分析器一样,只能做到这一点。
一个好的解决方案,但不是100%的精确(*),可以是突变测试与动态代码覆盖工具相结合。笛卡尔:一种用于PIT的变异引擎是这样一种解决方案,但它仅仅是Java,在高性能系统中可能不能很好地工作。
(*)你所做的是随机行使系统,你有一个非零的机会,你将错过一个州,它将被错误地宣布为死码。
发布于 2021-02-24 14:09:00
当您说“死代码”时,您的意思是无法到达的代码,或者仅仅是您的自动检查未涵盖的代码?
对于第一种情况,编译器通常已经指示了这样的代码块。大多数文本编辑器都是临时执行的。
对于第二种情况,大多数代码覆盖率分析工具通过突出显示未发现的代码。因为大多数工具还提供了机器可读的报告,所以您可以放弃它,以更好的方式报告未发现的代码。

https://sqa.stackexchange.com/questions/46934
复制相似问题