簡體   English   中英

有沒有辦法使用Spring Boot,Liquibase和sql腳本進行集成測試?

[英]Is there any way to use Spring Boot, Liquibase and an sql-script for integration tests?

我使用liquibase來設置我的數據庫模式。 我禁用hibernate來創建任何東西。 因此,我的import.sql被忽略。 在liquibase創建表之后,有沒有辦法配置spring boot或liquibase或任何其他部分來加載測試數據?

如果您需要粗略的東西(即,不是實際的數據遷移),您可以在Spring Boot中使用Spring的JDBC初始化程序 簡而言之,您需要:

  1. 創建一個data-test.sql來加載數據,並將其放在src/main/resources目錄中。 對於不同的環境,只需使用命名約定data-{platform}.sql
  2. 使用以下命令將applications-test.properties添加到src/main/resourcesspring.datasource.platform=test # this actives data-test.sql above spring.datasource.continueOnError=???? # depends on your needs spring.datasource.platform=test # this actives data-test.sql above spring.datasource.continueOnError=???? # depends on your needs
  3. 要在測試期間激活application-test.properties ,請確保“test”是集成測試期間處於活動狀態的配置文件之一。 一種方法是使用@ActiveProfiles({"test", ...})注釋您的測試類。

最簡單的方法似乎是使用liquibase加載數據。 您可以使用普通的Changeset(XML或JSON)或SQL格式Changeset來完成此操作 最常見的方法是加載CSV數據或運行現有的SQL文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM