无法使用 GeneratorDrivenPropertyChecks 启动测试
Unable to launch test with GeneratorDrivenPropertyChecks
我想使用带有 scalatest 的 scalacheck 来测试一些具有随机输入值的对象。
首先,我尝试了一个简单的示例,但如果我通过 Eclipse 或通过 sbt 启动它,它会抛出错误。
代码是:
package test
import org.scalatest._
import org.scalatest.prop.GeneratorDrivenPropertyChecks
class SamplePropGenCheck extends PropSpec with GeneratorDrivenPropertyChecks with Matchers {
property("Int simple test") {
forAll("a") { a : Int =>
whenever (a > 0) {
(a * 2) should be (a + a)
}
}
}
}
在执行时,我有这个错误:
*** RUN ABORTED ***
java.lang.AbstractMethodError:
org.scalatest.prop.Configuration$$anon.TestParams()Lorg/scalacheck/Test$Parameters$TestParams$;
at org.scalacheck.Test$Parameters$class.$init$(Test.scala:98)
at org.scalatest.prop.Configuration$$anon.<init>(Configuration.scala:332)
at org.scalatest.prop.Configuration$class.getParams(Configuration.scala:332)
我使用 scalatest_2.11-2.2.1 和 scalacheck_2.11-1.12.3 与 scala 2.11.6
当我进行其他测试时,使用 TableDrivenPropertyChecks 而不是 GeneratorDrivenPropertyChecks,效果很好。
我没有在文档或 google 中找到任何帮助。是代码错误,还是bug,还是版本问题?
有人可以帮我找到解决方案吗?
尝试降级到 scalacheck 1.12.2。
我在 scalacheck_2.10-1.12.3 上看到了同样的错误。它适用于 scalacheck_2.10-1.12.2。
编辑:ScalaCheck 1.12.3 与 ScalaTest 的兼容性存在问题,该问题已在 1.12.4-SNAPSHOT 中修复。 https://github.com/rickynils/scalacheck/issues/165
我想使用带有 scalatest 的 scalacheck 来测试一些具有随机输入值的对象。 首先,我尝试了一个简单的示例,但如果我通过 Eclipse 或通过 sbt 启动它,它会抛出错误。 代码是:
package test
import org.scalatest._
import org.scalatest.prop.GeneratorDrivenPropertyChecks
class SamplePropGenCheck extends PropSpec with GeneratorDrivenPropertyChecks with Matchers {
property("Int simple test") {
forAll("a") { a : Int =>
whenever (a > 0) {
(a * 2) should be (a + a)
}
}
}
}
在执行时,我有这个错误:
*** RUN ABORTED ***
java.lang.AbstractMethodError:
org.scalatest.prop.Configuration$$anon.TestParams()Lorg/scalacheck/Test$Parameters$TestParams$;
at org.scalacheck.Test$Parameters$class.$init$(Test.scala:98)
at org.scalatest.prop.Configuration$$anon.<init>(Configuration.scala:332)
at org.scalatest.prop.Configuration$class.getParams(Configuration.scala:332)
我使用 scalatest_2.11-2.2.1 和 scalacheck_2.11-1.12.3 与 scala 2.11.6
当我进行其他测试时,使用 TableDrivenPropertyChecks 而不是 GeneratorDrivenPropertyChecks,效果很好。
我没有在文档或 google 中找到任何帮助。是代码错误,还是bug,还是版本问题? 有人可以帮我找到解决方案吗?
尝试降级到 scalacheck 1.12.2。
我在 scalacheck_2.10-1.12.3 上看到了同样的错误。它适用于 scalacheck_2.10-1.12.2。
编辑:ScalaCheck 1.12.3 与 ScalaTest 的兼容性存在问题,该问题已在 1.12.4-SNAPSHOT 中修复。 https://github.com/rickynils/scalacheck/issues/165