Scala 如何将sbt测试/缩放测试配置为仅显示故障?

Scala 如何将sbt测试/缩放测试配置为仅显示故障?,scala,sbt,scalatest,Scala,Sbt,Scalatest,是否有方法截断测试结果,仅在单元测试失败时显示单元测试的结果文本?我正在从事一个Scala项目,该项目有850个单元测试,成功的单元测试中的绿色文本使我们很难只关注失败 testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oNCXELOPQRM") 我所说的例子: [info] - should have colors [info] - should not be dead //.... x 100 [info]

是否有方法截断测试结果,仅在单元测试失败时显示单元测试的结果文本?我正在从事一个Scala项目,该项目有850个单元测试,成功的单元测试中的绿色文本使我们很难只关注失败

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oNCXELOPQRM")
我所说的例子:

[info] - should have colors
[info] - should not be dead
//.... x 100
[info] - animals should not be rainbows *** FAILED *** 
[info] -"[rainbow]s" was not equal to "[ponie]s" (HappinessSpec.scala:31)
我想要的是能够显示失败的东西:

我意识到有
testquick
sbt命令,但它仍然在运行 在我的例子中,单元测试只有30次失败

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oNCXELOPQRM")
在使用方面,我正在寻找与此类似的东西:

sbt>~测试-仅显示故障

我也会很高兴看到在跑步结束时所有的失败
单元测试。IIRC,这就是RSpec在Ruby中的工作方式…

在build.sbt中添加以下内容后,scalaTest将在standart报告后显示失败摘要:

testOptions in Test += Tests.Argument("-oI") 

I - show reminder of failed and canceled tests without stack traces
T - show reminder of failed and canceled tests with short stack traces
G - show reminder of failed and canceled tests with full stack traces
还有一个“drop TestSuccessed events”标志,但我没有使用它:

对于使用带有scalatest maven插件的maven的用户,您可以添加以下配置:

<configuration>
  <stdout>I</stdout>
</configuration>

您可以尝试使用sbt命令

上次grep错误测试


这应该只显示错误/失败。

更新了Scalatest 3的答案。

以下是
build.sbt
文件的新语法,用于重新打印测试套件运行底部的所有失败:

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oI")
您可能还希望抑制信息通知,以便更容易看到故障

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oNCXELOPQRM")
以下是所有选项所代表的内容:

  • N-drop TestStarting事件
  • C-drop testsuccessed事件
  • X-drop TestIgnored事件
  • E-drop TestPending事件
  • H-drop SuiteStarting事件
  • L-放弃SuiteCompleted事件
  • O-删除InfoProved事件
  • P-删除作用域打开的事件
  • Q-删除范围已关闭事件
  • R-删除范围挂起事件
  • M-删除标记提供的事件
“-oI”
在测试套件运行结束时再次打印错误通知,而
“-oNCXELOPQRM”
仅显示失败的测试


有关更多详细信息,请参阅。

您是否碰巧有一个小型sbt框架项目显示此功能正常工作?我在Scala 2.10和ScalaTest 1.9.1中尝试了它,它似乎只适用于配置选项,而在ScalaTest 2.0中,我遇到了奇怪的ScalaTest异常,并且所有配置选项似乎都不起作用。是的,它似乎只适用于ScalaTest 2.0。我们使用maven。我们运气不好吗?