2012-04-26 33 views
2

我爲Play寫了一個簡單的測試課! 2.0:如何在PLAY中啓動Play Framework 2.0中的手動測試! V1?

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"); 

     } 
    }); 
    } 
} 

在玩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 

回答

5

你可以試試玩乾淨然後再試玩測試。我得到相同的「沒有測試運行」消息,直到我做了一個乾淨的。

+0

這幫了我;-)看起來像緩存是邪惡的(但它有助於更​​快地執行) – 2012-11-06 22:00:13

1

他們是否放置在test文件夾?

你做得對,否則。命令確實是:

play test 

但是沒有用於測試的網頁界面。一切都通過命令行。

+0

是的,它被放置在defualt包的測試文件夾中,因此沒有包但是測試文件夾根目錄中的類... – adis 2012-04-26 13:33:53

+0

添加了更多信息。 – 2012-04-27 13:54:35

+0

嗯,爲什麼這些依賴需要,我沒有在劇本文檔中看到這個?但很高興知道,沒有網絡界面,我期待一個:-) – adis 2012-04-27 14:25:05

0

這一點似乎是,測試類必須在'測試'包。這意味着,你必須插入'包裝測試';在你的java文件的頂部。

對我來說,這會在IDE中創建一條錯誤消息,但播放控制檯上的「測試」命令按預期運行測試。

0

我通過添加「擴展TestCase」來修復它。只有@Test註釋是不夠的。

相關問題