【发布时间】:2013-03-07 03:16:25
【问题描述】:
我正在尝试按照play framework 上的教程进行操作,但是当我到达他们运行测试的部分时,测试失败了。当我在浏览器中查看错误时,它说它找不到索引视图。我不确定为什么会这样。我猜他们在他们网站上的视频教程中使用的是旧版本。
如果你知道为什么最新版本(2.1.0)坏了,你能给我解释一下吗?
package controllers;
import play.*;
import play.mvc.*;
import views.html.*;
public class Application extends Controller {
public static Result index() {
return ok(index.render("Hello World."));
}
}
这是导致测试失败的文件。当我查看 IntelliJ 时,错误提示“无法解析符号索引”。
@Test
public void renderTemplate() {
Content html = views.html.index.render("Hello World.");
assertThat(contentType(html)).isEqualTo("text/html");
assertThat(contentAsString(html)).contains("Your new application is ready.");
}
这是 index.scala.html 文件中的代码
@(message: String)
@main("Welcome to Play 2.1") {
@play20.welcome(message, style = "Java")
}
这是失败的测试。如果我像这样摆脱索引 返回 ok("Hello World."); 并对测试进行适当的调整,事情就会过去。但我想知道为什么他们一开始就失败了。特别是因为几乎所有东西都是开箱即用的。此外,事情运行没有错误。启动服务器时我可以看到索引页面,但由于某种原因,当我尝试运行测试时,我被告知测试看不到索引文件。
【问题讨论】:
-
我认为这可能是一个错误 2.1.0 正在为 2.1.1 修复。能否提供失败的测试代码以及错误或失败原因?
-
@JamesWard 由于 index.scala.html 文件,测试失败。
-
@JamesWard 我添加了文件中的代码和导致事情失败的测试。
-
您是否更改了您的
index.scala.html?如果它仍然有欢迎消息,它应该可以工作,因为the html does contain“您的新应用程序已准备就绪。” -
IntelliJ 错误是由于模板尚未编译为类。
标签: java playframework playframework-2.1