Scalacheck冗长

Scalacheck冗长,scala,scalacheck,Scala,Scalacheck,从Scalacheck的《用户指南》中直接获取此示例: scala> import org.scalacheck.Prop.{forAll, BooleanOperators} scala> val propTrivial = forAll { n: Int => | (n == 0) ==> (n == 0) | } scala> propTrivial.check ! Gave up after only 4 passed tests.

从Scalacheck的《用户指南》中直接获取此示例:

scala> import org.scalacheck.Prop.{forAll, BooleanOperators}

scala> val propTrivial = forAll { n: Int =>
     |  (n == 0) ==> (n == 0)
     | }

scala> propTrivial.check
! Gave up after only 4 passed tests. 500 tests were discarded.
我想看看导致测试失败的实际值。我的项目中有一个类似的测试用例,它生成了一个类似的(无用的)消息

我尝试将详细选项添加到sbt:

testOptions in Test += Tests.Argument(TestFrameworks.ScalaCheck, "-verbosity", "5")
还试着给酒店打电话,比如

testOptions in Test += Tests.Argument(TestFrameworks.ScalaCheck, "-verbosity", "5")

但两者都不起作用。我无法获得更多的输出。

在本例中,没有任何值导致测试失败,但ScalaCheck放弃了,因为它找不到足够的值来尝试。这就是为什么它说,
500个测试被丢弃了
——这不是一条无用的错误消息,它只是说生成的值与您的
n==0
前提条件不匹配

如果您尝试的测试确实失败,它将告诉您失败的测试:

scala> forAll { n: Int => n > 0 }
res0: org.scalacheck.Prop = Prop

scala> res0.check
! Falsified after 2 passed tests.
> ARG_0: -2147483648

好的,我想我明白了。我在ScalaTest中使用ScalaCheck,ScalaTest必须认为这是一个错误,而事实上它不是。。。。