2010-07-01 64 views
3

我使用maven war插件來構建war包。Maven - 在'test'和'war'階段使用不同的java類

執行包構建測試之前。要使用示例數據預初始化我的數據庫,我使用spring bean。我想在測試中使用我的數據庫中的不同數據,而在應用程序啓動時有不同的數據。

我在想,也許有可能在'測試'和'戰爭'階段使用兩個不同的彈簧初始化類,但我不知道如何實現這一點。

回答

3

您必須將所需的不同類放入src/main/java或src/test/java中,或者可以將補充application.xml放到src/main/resources或src/test/resources中。測試初始化​​程序可以通過一個Test類來完成,該類在所有測試運行之前首先初始化(看看具有這種功能的te​​stng)。

+0

這樣工作是因爲Maven在運行測試時自動將src/main/java,src/test/java和src/test/resources添加到類路徑中,並且僅將src/main/java和src/main/resources添加到WAR中。 – 2010-07-01 18:23:06

1

您的測試不應該使用生產Spring上下文(xml)文件。如果您需要在測試中訪問ApplicationContext(或者如果您使用的是基本測試用例類,如AbstractTransactionalJUnit4SpringContextTests),請設置一個test-context.xml上下文,該上下文指向測試數據庫配置和測試數據腳本。

相關問題