在 scalatest 中将测试标记为损坏
Flag a test as broken in scalatest
有时测试是有效的,但被测试的代码是错误的,并且有针对测试场景的缺陷记录。修复缺陷后,测试将通过。
在那之前,我可以将测试标记为 "ignore",并在评论中添加缺陷编号。那么测试将不会 运行,它会被标记为被忽略,并且指标将反映它被忽略的事实。当缺陷被标记为已修复时,我可以找到测试用例并重新启用测试。
我可能可以使用它,但我有点想要另一种选择:将测试标记为缺陷。这导致测试仍然是 运行,但反转了语义,在这种情况下,失败是预期的,没有什么值得惊慌的,而通过是庆祝的理由,并被召集。在这种情况下,还有两个汇总统计:预期的测试失败和意外的测试通过。
ScalaTest 中是否已经存在这样的东西?
阅读 ScalaTest 的 scaladoc,我找到了答案:pendingUntilFixed
一个示例(使用 FreeSpec,因为这是我的首选语法):
"some test that is known to be broken" in {
pendingUntilFixed {
info("Broken - see DEFECT-12345")
// original test code
...
}
}
这完全符合我最初的要求,包括一旦代码不再被破坏就会失败。为 ScalaTest 欢呼! :)
有时测试是有效的,但被测试的代码是错误的,并且有针对测试场景的缺陷记录。修复缺陷后,测试将通过。
在那之前,我可以将测试标记为 "ignore",并在评论中添加缺陷编号。那么测试将不会 运行,它会被标记为被忽略,并且指标将反映它被忽略的事实。当缺陷被标记为已修复时,我可以找到测试用例并重新启用测试。
我可能可以使用它,但我有点想要另一种选择:将测试标记为缺陷。这导致测试仍然是 运行,但反转了语义,在这种情况下,失败是预期的,没有什么值得惊慌的,而通过是庆祝的理由,并被召集。在这种情况下,还有两个汇总统计:预期的测试失败和意外的测试通过。
ScalaTest 中是否已经存在这样的东西?
阅读 ScalaTest 的 scaladoc,我找到了答案:pendingUntilFixed
一个示例(使用 FreeSpec,因为这是我的首选语法):
"some test that is known to be broken" in {
pendingUntilFixed {
info("Broken - see DEFECT-12345")
// original test code
...
}
}
这完全符合我最初的要求,包括一旦代码不再被破坏就会失败。为 ScalaTest 欢呼! :)