scala テスト クラスの内容を spec から specs2 に「転送」するのに苦労しています。私が持っている最後のことは問題doBefore{}
です"test" in {}
私"testing" should { doBefore{}
と何人か "getting" in {} }
は私にこのエラーを与えます
説明 リソース パス ロケーション タイプ
タイプ org.specs2.execute.AsResult[Unit] の証拠パラメーターの暗黙的な値が見つかりませんでした
「Unit」は私のプロジェクトのクラスだと思いますが、両方ともdoBefore
何in {}
も返さないので、何が起こっているのかわかりません。
MydoBefore
は、たとえば、いくつかのクラスにランダムな値を入力するだけです(これはクラスにありますextends SpecificationWithJUnit with TestUtil with BeforeExample with AfterExample
"retrieving and counting users by criteria" should {
var user1: User = null
var user2: User = null
var user3: User = null
doBefore {
val params = Map("login" -> "notExist", "roles" -> Seq(someRoles).asJava
val params2 = Map("login" -> "notExistAnother", "roles" -> Seq(someRoles).asJava
val params3 = Map("login" -> "notExistAnotherAnother", "roles" -> Seq(someRoles).asJava).asJava
val users = Seq(params, params2, params3).map( { PopulateUser.insertUserParams(_).asInstanceOf[User] })
user1 = users(0)
user2 = users(1)
user3 = users(2)
}
私は Scala にはかなり慣れていませんが、specs2 で doBefore が異なるように見えることを読んだことがありますが、正直なところ、コードにこれをどのように実装すればよいかわかりません。私はこれを読んでいました。したがって、誰かがコードにこれを実装する方法とその原因を知っています(仕様と仕様2の違いは巨大ですが、どういうわけか私のテスト(doBeforeを除く)は同じエラーを発生させることはほとんどありません)