是否有一个Java工具可以找到特定JUnit测试的哪些代码行?

Gra*_*oss 5 java junit

是否有一个Java工具,给定一组JUnit测试和一个要测试的类,它会告诉你测试中哪些类的行被测试?即.要求测试成功运行.我的意思并不是"代码覆盖率",它只会告诉您是否执行了一行,而是更强大的代码:测试所需的行是否通过?

我经常注释掉一行代码并运行一个测试,看看测试是否真的在测试那行代码.我认为这可以通过半智能工具自动完成(例如,类似IDE的东西,可以解决从方法中删除的内容,同时保持其可编辑性).

Nat*_*hes 5

有一个名为Jester 的开源突变测试工具,它可以更改源代码行,然后运行测试,并报告测试是否通过。听起来比代码覆盖工具更接近您的需求。

Jester 是用于测试 Java JUnit 测试的测试测试器(Pester 用于 Python PyUnit 测试)。它会修改您的源代码,运行测试并报告测试是否通过尽管更改了代码。这可能表明缺少测试或冗余代码。

在讨论纯 TDD 项目中是否需要这些工具时,Jester 项目网页上有一个链接,该链接指向在 TDD 会话期间使用 Jester 编写代码的好处的帖子(Bob 叔叔臭名昭著的保龄球 TDD 示例)。