2014-09-26 23 views
1

我一直在使用SBT在我的代碼上運行單元測試,並且最近做了一些改變,導致測試開始變得怪異。爲什麼sbt在執行測試時退出而沒有錯誤?

我看到的所有測試都失敗了,但是當用sbt運行測試時,它只是在中間停下來並關閉而沒有提供錯誤消息。輸出中沒有失敗的測試。

有人知道爲什麼會發生這種情況,或者我怎麼知道問題出在哪裏?

+2

除非你配置了sbt來運行你的測試,否則它們將運行在與sbt相同的JVM中,所以如果它們導致JVM崩潰或者只是調用System.exit(0)它將終止sbt以及測試。也許將測試配置爲fork並且使用該JVM會發生什麼? – johanandren 2014-09-26 13:44:24

+0

這有幫助。結果發現有一個java.io.EOFException以某種方式發生。 – mp94 2014-09-26 14:16:14

+0

@ mp94你能回答你的問題並接受嗎? – 2014-09-27 07:53:12

回答

1

感謝the comment by @johanandren,我設法將它歸結爲一個異常,它迫使sbt在新過程中分叉測試。 假裝爲內存不足錯誤java.lang.OutOfMemoryError: PermGen space - 在SBT runs out of memory中描述的使用SBT_OPTS環境變量中的參數-XX:MaxPermSize幫助解決該問題。

相關問題