我正在运行sbt
的specs2测试套件,使用test
命令。当ScalaCheck属性失败时,我只能在我的代码中看到specs2匹配失败的文件名和行号 - 当这恰好是一种实用方法时,这种做法并不是非常有用,它常常执行常见的检查类型。堆栈跟踪会更好。从specs2中的失败Scalacheck属性中确定确切的失败匹配
我试过了sbt中的last
命令,但是这并不显示我正在寻找的堆栈跟踪。唯一的堆栈跟踪last
显示这是一个通用:
java.lang.RuntimeException: Tests unsuccessful
at scala.sys.package$.error(package.scala:27)
at scala.Predef$.error(Predef.scala:66)
at sbt.Tests$.showResults(Tests.scala:168)
at sbt.Defaults$$anonfun$testTasks$5.apply(Defaults.scala:279)
at sbt.Defaults$$anonfun$testTasks$5.apply(Defaults.scala:279)
at sbt.Scoped$$anonfun$hf2$1.apply(Structure.scala:473)
at sbt.Scoped$$anonfun$hf2$1.apply(Structure.scala:473)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:41)
at sbt.Scoped$Reduced$$anonfun$combine$1$$anonfun$apply$11.apply(Structure.scala:295)
at sbt.Scoped$Reduced$$anonfun$combine$1$$anonfun$apply$11.apply(Structure.scala:295)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$5.work(System.scala:67)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:221)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:221)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute.work(Execute.scala:227)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:221)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:221)
at sbt.CompletionService$$anon$1$$anon$2.call(CompletionService.scala:26)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
我也有属性文件中的java.util.logging启用最详细的日志记录级别。
现在我正在使用Eclipse调试器解决此问题,但这在某些情况下是不必要的重量级。
不幸的是,我添加了这两个,但现在我遇到了一个不同的失败的匹配,并且我看不到匹配失败的位置。我认为堆栈跟踪是在比赛实际失败后生成的。 –