我有一个测试用例,应该验证在 POST 调用后,用户是否被重定向到正确的页面。
"Redirect Page" in {
running(FakeApplication()) {
val Some(result) = route(FakeRequest(POST, "/product/add/something")
.withFormUrlEncodedBody(
"Id" -> "666",
)
.withSession("email" -> "User")
)
status(result) must equalTo(SEE_OTHER)
// contentAsString(result) at this point is just blank
这将验证是否给出了重定向 URL。然后,如何让单元测试转到重定向的 URL,以便我可以验证其内容?
您可以使用以下命令测试重定向到的 URL:
redirectLocation(result) must beSome.which(_ == "/product/666")
如果您想检查内容,请按照重定向操作:
val nextUrl = redirectLocation(result) match {
case Some(s: String) => s
case _ => ""
}
nextUrl must contain("/product/666")
val newResult = route(FakeRequest(GET, nextUrl)).get
status(newResult) must equalTo(OK)
contentType(newResult) must beSome.which(_ == "text/html")
contentAsString(newResult) must contain("something")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)