为什么测试版本2.1.0的播放框架文件?

时间:2013-03-07 03:16:26

标签: java playframework playframework-2.1

我正在尝试按照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")

}

这是失败的测试。如果我摆脱这样的索引     return ok(“Hello World。”); 并且对测试进行适当的调整,事情就会过去。但我想知道他们为什么一开始就失败了。特别是因为一切都是开箱即用的。事情也没有错误。我在启动服务器时可以看到索引页面,但出于某种原因,当我尝试运行测试时,我被告知测试无法看到索引文件。

1 个答案:

答案 0 :(得分:2)

看起来像教程中的错误。测试似乎在寻找错误的字符串。尝试将最后一项资产更改为:

assertThat(contentAsString(html)).contains("Hello World.");