我最近被要求,有效地將我的部門出售給單元測試。我無法告訴你這讓我興奮,但我確實有一個擔憂。我們在Spring和Maven中使用JUnit,這意味着每次調用mvn test
時,都會重建數據庫。顯然,我們無法將其與我們的生產服務器整合 - 它會殺死有價值的數據。有沒有辦法阻止Maven測試重建數據庫?
如何防止重建瞞着行家跳過測試?
我能想出的最好的是指定的腳本在測試數據庫操作(添加爲便於閱讀,換行):
mvn test
-Ddbunit.schema=<database>test
-Djdbc.url=jdbc:mysql://localhost/<database>test?
createDatabaseIfNotExist=true&
useUnicode=true&characterEncoding=utf-8
我不禁覺得必須有一個更好的辦法。
我在學習,如果有一個簡單的方法來告訴Maven的是隻在特定類別的測試,沒有建立任何東西特別感興趣? mvn -Dtest=<test-name> test
仍然重建數據庫。
======= =======更新
我的臉在這裏雞蛋位。我沒有意識到我在兩個地方使用了相同的變量,這意味着POM使用「skip.test」變量來重建數據庫和運行測試...
如果它接觸到實時生產數據庫,它不是一個「單元測試」 – 2010-02-19 02:18:00
瞭解如何爲單元測試初始化dbunit和Spring將會很有幫助。 – 2010-02-19 06:43:00