首页 文章

使用testkit对akka进行gradle测试

提问于
浏览
1

我有一个Scala Akka Gradle应用程序和以下测试:

class UserCRUDSpec() extends TestKit(ActorSystem("UserCRUDSpec"))
  with ImplicitSender
  with WordSpecLike
  with Matchers
  with Mockito
  with DomainSuit {

  val userDao: UserDao = mock[UserDao]
  val actor: ActorRef = system.actorOf(UserCRUD.props(self, userDao))

  "The UserCRUD actor " must {

    "search actor by id if actorId specified and exists" in {
       ...
    }

  }

}

和gradle build.gradle 依赖项:

apply plugin: 'scala'

    dependencies {
        compile 'org.scala-lang:scala-compiler:2.12.6'
        compile('com.typesafe.akka:akka-cluster_2.12:2.5.14') {
            exclude group: 'org.scala-lang'
        }
        testCompile ('com.typesafe.akka:akka-testkit_2.12:2.5.14') {
            exclude group: 'org.scala-lang'
        }
        testCompile ('org.scalatest:scalatest_2.12:3.0.5') {
            exclude group: 'org.scala-lang'
        }
        testCompile ('org.specs2:specs2-core_2.12:4.3.3') {
            exclude group: 'org.scala-lang'
        }
        testCompile ('org.specs2:specs2-mock_2.12:4.3.3') {
            exclude group: 'org.scala-lang'
        }
    }
}

当我运行 ./gradle test 时,它表示没有找到测试 . 有什么方法可以添加TestKit测试以便 gradle test 任务可见吗?

1 回答

  • 0

    最后,我刚切换到scalatest并指定了actor系统:

    class UserCRUDSpec() extends WordSpec with TestKitBase ... {
      ...
      implicit lazy val system: ActorSystem = ActorSystem("UserCRUDSpec")
      ...
    }
    

相关问题