gpt4 book ai didi

scala - 为什么 Scalatest 会混淆输出?

转载 作者:行者123 更新时间:2023-12-03 22:36:17 24 4
gpt4 key购买 nike

我从 sbt 运行我的 scalatest,并且输出变得困惑 - scalatest 打印所有测试运行,并向它们发表评论,并在中间的某个地方打印统计信息:

> test
[info] Compiling 1 Scala source to /home/platon/Tor/scala-dojo-02/target/scala-2.9.1/classes...
[info] FunsWithListsTests:
[info] - should return list of labels
[info] - should return the average rating of games belonging to Zenga
[info] - should return the total ratings of all games
[info] - should return the total ratings of EA games *** FAILED ***
[info] 0 did not equal 170 (FunsWithListsTests.scala:35)
[error] Failed: : Total 8, Failed 5, Errors 0, Passed 3, Skipped 0
[info] - should increase all games rating by 10 *** FAILED ***
[error] Failed tests:
[error] dojo.FunsWithListsTests
[info] List() did not equal List(Game(Activision,40), Game(Zenga,70), Game(Zenga,20), Game(EA,70), Game(EA,120)) (FunsWithListsTests.scala:40)
[info] - should decrease all Zenga games rating by 10 *** FAILED ***
[info] List() did not equal List(Game(Activision,30), Game(Zenga,50), Game(Zenga,0), Game(EA,60), Game(EA,110)) (FunsWithListsTests.scala:45)
[info] - should create function to find Activision games *** FAILED ***
[info] List(Game(Activision,30), Game(Zenga,60), Game(Zenga,10), Game(EA,60), Game(EA,110)) did not equal List(Game(Activision,30)) (FunsWithListsTests.scala:50)
[info] - should return a List of tuples consisting of game label and game *** FAILED ***
[info] List() did not equal List((ACTIVISION,Game(Activision,30)), (ZENGA,Game(Zenga,60)), (ZENGA,Game(Zenga,10)), (EA,Game(EA,60)), (EA,Game(EA,110))) (FunsWithListsTests.scala:56)
[error] {file:/home/platon/Tor/scala-dojo-02/}default-940f03/test:test: Tests unsuccessful
[error] Total time: 1 s, completed Mar 20, 2012 9:27:13 AM

看来,如果我要积累大量的测试,搜索那些统计数据和失败的测试将变得很痛苦。

有没有办法来解决这个问题?

最佳答案

在我看来,原因是 SBT 默认情况下并行执行测试,就像 maven-surefire-plugin 一样。

正如 ScalaTest wiki 中所解释的,这可以通过以下方式解决:

禁用并行执行测试
默认情况下,sbt 并行运行所有任务。因为每个测试都映射到一个任务,所以默认情况下测试也是并行运行的。要禁用测试的并行执行:

parallelExecution in Test := false

关于scala - 为什么 Scalatest 会混淆输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9782264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com