2013-08-05 36 views
6

隨着junit-interface亞軍,有這個方便的選項:如何只顯示一個scalatest測試的標準輸出,如果失敗

-q禁止標準輸出成功的測試。 Stderr通常會打印到 控制檯 。標準輸出寫入緩衝區,並在測試成功時丟棄。如果失敗,則將緩衝區轉儲到控制檯。因爲在Java中stdio 重定向是一個糟糕的混亂(System.setOut()更改靜態 最終字段System.out通過本機代碼),這可能不適用於所有 方案。斯卡拉擁有自己的控制檯,具有明智的重定向功能。如果在類路徑中檢測到 Scala,則junit-interface嘗試重新路由 scala.Console的stdout。

我想知道是否有一個簡單的方法讓scalatest做同樣的事情。我可以嘗試自己重定向輸出,但如果可能的話,寧願使用標準的東西。

+0

也許這不正是你想要的,但有一個看看我的回答http://stackoverflow.com/questions/21806312/how-to-configure-sbt-test-scalatest-to -only-show-failures – goozez

+0

我們使用maven。任何maven(非sbt)解決方案可用? – javadba

回答

0

根據這一info的ScalaTest網站上,你可以設置一些標誌,以抑制一些信息:

如果您在build.sbt添加一行這樣的,你的記錄不會顯示在標準輸出測試成功:

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-oN")

相關問題