我有一个用 Java 编写的 Controller ,我想使用 Scala 和 specs2 来测试它。我可以使用 JUnit 测试我的 Controller ,它工作得很好。但我无法用specs2来测试它。我已关注the documentation它提到我应该传递一个 fakeRequest 作为参数。但 Java Controller 中的方法不接受任何参数,因此我无法使用此方法。
我该如何测试它?我能想到的唯一方法是使用与 JUnit 中相同的方法,但使用 specs2 不会带来好处。
最佳答案
哦,我自己已经弄清楚了。
我可以使用 play.test.Helpers
中的帮助程序,然后将它们与 specs2 匹配器一起使用,并且它按预期工作。
import controllers.routes
import org.specs2.mutable.Specification
import play.test.Helpers._
import play.api.test._
class MyControllerSpec extends Specification {
"My Controller" should {
"respond with text/plain content type" in new WithApplication {
val result = callAction(routes.ref.MyController.index(), fakeRequest())
contentType(result) mustEqual "text/plain"
}
}
}
关于java - 我可以在 Play Framework 2 中使用 specs2 测试 Java Controller 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20532139/