1

いくつかのオブジェクトをランダムな入力値でテストするために、scalatest で scalacheck を使用したいと考えています。まず、簡単なサンプルを 1 つ試してみましたが、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$1.TestParams()Lorg/scalacheck/Test$Parameters$TestParams$;
      at org.scalacheck.Test$Parameters$class.$init$(Test.scala:98)
      at org.scalatest.prop.Configuration$$anon$1.<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 で使用しています。

GeneratorDrivenPropertyChecks の代わりに TableDrivenPropertyChecks を使用して別のテストを行うと、うまくいきます。

ドキュメントやグーグルでヘルプが見つかりません。コードエラーですか、バグですか、それともバージョンの問題ですか? 誰かが解決策を見つけるのを手伝ってくれますか?

4

1 に答える 1