运行验收测试播放2 - 服务器未启动

时间:2012-10-02 23:21:01

标签: java testing playframework playframework-2.0

我在Play中写了一个验收测试! 2框架,我的测试是:

    @Test
public void goToIndexPageAT() {
    running(testServer(3333, fakeApplication(inMemoryDatabase())), HTMLUNIT, new Callback<TestBrowser>()  {
        public void invoke(TestBrowser browser) {
            browser.goTo("http://localhost:3333/");
            assertThat(browser.url()).isEqualTo("http://localhost:3333/activities");
            assertThat(browser.$("#title").getTexts().get(0)).isEqualTo("FitTime");
        }

    });
}

但是当我尝试使用命令play test运行此测试时出现错误:

Test acceptenceTest.ApplicationTest.goToIndexPageAT failed: Server is not started!
[error]     at scala.sys.package$.error(package.scala:27)
[error]     at play.api.test.TestServer.stop(Selenium.scala:116)
[error]     at play.test.Helpers.stop(Helpers.java:308)
[error]     at play.test.Helpers.running(Helpers.java:338)
[error]     at acceptenceTest.ApplicationTest.goToIndexPageAT(ApplicationTest.java:17)

我做错了什么?

由于

2 个答案:

答案 0 :(得分:2)

我通过将端口3333用于另一个应用程序然后开始测试来重现此错误消息。

也许您之前已经完成了测试并且没有正确关闭。

你可以找到它的PID netstat -onap | grep 3333#我在Linux上使用它

示例输出: tcp6 0 0 ::: 3333 ::: * LISTEN 13173 / java aus(0.00 / 0/0)

杀死这个过程: 杀死-9 13173

答案 1 :(得分:0)

这里的测试:

@Test
public void goToIndexPageAT() {
    running(testServer(3333, fakeApplication(inMemoryDatabase())), HTMLUNIT, new Callback<TestBrowser>()  {
        public void invoke(TestBrowser browser) {
            browser.goTo("http://localhost:3333/");
            assertThat(browser.url()).isEqualTo("http://localhost:3333/activities");
            assertThat(browser.$("#title").getTexts().get(0)).isEqualTo("FitTime - Manage Your Exercises");
        }

    });
}

@Test
public void createNewActivityAT() {
     running(testServer(3333, fakeApplication(inMemoryDatabase())), HTMLUNIT, new Callback<TestBrowser>()  {
        public void invoke(TestBrowser browser) {
            browser.goTo("http://localhost:3333/");
            browser.$("#name").text("bike");
            browser.$("#time").text("10 KM");
        }

    });
}

我不知道发生了什么......