2009-12-31 33 views
2

我有一個Scala項目,我正在使用SBT和規格。當我運行sbt測試時,它正確運行我的測試,但是失敗的測試會導致巨大的堆棧跟蹤。如何通過SBT運行規格時消除堆棧跟蹤?

[info] 
== caravan.DependenciesSpec == 
[info] specifies 
[info] x Status should mirror single job 
org.specs.specification.FailureExceptionWithResult: 'caravan.Status(2)' is not equal to 'caravan.Status(3)' 
    at caravan.DependenciesSpec$$anonfun$1.apply(DependenciesSpec.scala:13) 
...about 70 lines of stack trace though specs... 
[error] org.specs.specification.FailureExceptionWithResult: 'caravan.Status(2)' is not equal to 'caravan.Status(3)' 

我期望的是它只是報告測試失敗。我使用Scala 2.7.5運行規格1.6.0和SBT 0.5.5。我的規格寫爲:

object DependenciesSpec extends Specification { 
... 

有沒有什麼辦法讓可用輸出了規格/ SBT的?

回答

1

我剛剛看到新的xsbt啓動程序0.6.10添加了trace on|off|<n>命令來控制堆棧跟蹤輸出。請參閱sbt google組的thread以瞭解發佈公告和issue report

顯然它將取決於Specs是否也將堆棧跟蹤發送到sbt

+1

需要規格1.6.2,其中包含用於從sbt啓動規格測試的修復程序。請參閱http://code.google.com/p/specs/wiki/ChangeLog。 – huynhjl 2010-01-25 15:03:57