如何让SBT重新运行失败的测试

Chr*_*lls 13 unit-testing scala sbt scalatest scalacheck

有没有办法让SBT重新运行测试套件最后一次运行失败的测试?例如,如果我运行sbt test并且20次测试中有3次运行失败,是否有任何命令我可以运行让SBT重新运行那些失败的3个测试?

具体来说,我正在使用Scala Test和Scala Check来测试我通过SBT运行的测试.

Cam*_*yer 13

如果您使用的是最新版本的sbt,只需运行sbt testQuick即可.

http://www.scala-sbt.org/0.13/docs/Testing.html

  • 运行 `sbt testQuick` 不起作用,因为当至少有一个测试失败时,它会重新运行一组 Scala Test 测试中的所有测试。此外,无论是否失败,它都会忽略所有 ScalaCheck 测试。 (3认同)
  • 我不相信有一种方法可以在套件内重新运行所有失败的测试而不运行整个测试套件.此外,您需要在ScalaTest中执行ScalaCheck测试,以使这些测试与ScalaTests一起重新运行.这是如何做到这一点的一个很好的例子.http://sanj.ink/posts/2016-07-06-how-to-run-scalacheck-from-scalatest-and-generate-html-reports.html (3认同)