我为Play编写了一个简单的测试类! 2.0:
public class TestLogin {
@Test
public void test() {
running(testServer(3333, fakeApplication(inMemoryDatabase())), HTMLUNIT, new Callback<TestBrowser>() {
@Override
public void invoke(TestBrowser browser) {
browser.goTo("http://localhost:3333");
assertThat(browser.$("section h1").first().getText()).isEqualTo("Login");
}
});
}
}
在Play v1中,您可以执行命令:
play test
你可以转到http://localhost:9000/@tests
。但是现在在Play 2.0中这不起作用而且没有记录?我只是想开始我的Selenium测试,手动(每个测试用例/方法)自动化(一堆测试用例)。
如何在Play2.0中实现这一目标?
BTW:运行命令播放测试在我的终端输出以下内容:
[warn] 1 warning
[info] No tests to run for test:test
答案 0 :(得分:5)
您可以尝试播放清洁,然后再次尝试播放测试。我得到了相同的“没有测试运行”消息,直到我干净了。
答案 1 :(得分:1)
它们是否放在test
文件夹中?
你做得对,否则。命令确实是:
play test
但是没有用于测试推送的Web界面。一切都通过命令行。
答案 2 :(得分:0)
关键似乎是,测试类必须在'test'包中。这意味着,您必须插入'package test;'在你的java文件的顶部。
对我来说,这会在IDE中创建一条错误消息,但播放控制台上的'test'命令会按预期运行测试。
答案 3 :(得分:0)
我通过添加“extends TestCase”来修复它。只有@Test注释是不够的。