2016-12-02 49 views
0

我正在運行連接到數據庫的sql腳本,我在@Before鉤子中運行它然而,這需要一段時間,我只需要運行腳本一次。這些測試正在運行,因爲當它通過我的數據表時,它會在測試之前再次運行腳本。有沒有辦法解決這個問題,因爲我只需要運行一次腳本。黃瓜中是否存在@BeforeClass鉤子?

@Before 公共無效設置()拋出IOException異常,{的SQLException

if (!clean){ 
     DatabaseConnection.getStatement(); 
     cleanUp(); 
    } 
+0

使用靜態布爾標誌。最初設置爲false。檢入標誌的值爲前。如果爲false,則運行腳本並將標誌設置爲true。下次這不會運行。 – Grasshopper

+0

我會試一試謝謝你。 – Peter

+0

如果你不需要這個鉤子來運行所有場景,你應該通過添加相關標籤來限制它的範圍。 – Grasshopper

回答

0

手工軋製之前的行爲,蟈蟈建議是一個好主意。它將解決您的問題,直到您能夠以更小,不連貫的步驟設置您的環境爲止。

對我來說,依靠一個大的設置感覺很危險。如果功能以不同的順序執行,會發生什麼?如果他們不依賴執行順序,那很好。但是他們確實有依賴對方的風險,你會錯過它,直到一切都失敗了。

+0

在這種情況下,這些功能不依賴於彼此,它們是獨立的實體。 – Peter