在Maven中运行集成测试时,我想运行Flyway插件。对于集成测试,我使用的是故障安全插件。
首先,是否可以定义两次Flyway插件?一个用于一般用途(例如,从命令行)和一个用于集成测试?如何在集成测试的Flyway插件中定义单独的配置?
发布于 2014-07-10 16:02:55
您可以通过不同的插件执行来实现这一点。每次执行都可以有自己的配置。
发布于 2017-02-08 01:30:58
您可以使用不同的配置为Failsafe的pre-integration-test阶段添加执行,请参见Maven Failsafe Plugin
Maven生命周期有四个阶段来运行集成测试:
用于设置集成测试environment.
和Guide to Configuring Plug-ins
使用标签的
您还可以使用标签配置mojo。这最常用于打算参与构建生命周期的某些阶段的mojos。
例如:
<plugin>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-maven-plugin</artifactId>
<version>4.0.3</version>
<configuration>
<url>jdbc:jtds:sqlserver://myCompany.com/generalDatabase</url>
<user>dbUser</user>
<password>password</password>
<locations>
<location>filesystem:src/main/resources/db/migration</location>
</locations>
</configuration>
<dependencies>
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.2.7</version>
<scope>runtime</scope>
</dependency>
</dependencies>
<executions>
<execution>
<id>integration-test-database-setup</id>
<phase>pre-integration-test</phase>
<goals>
<goal>clean</goal>
<goal>migrate</goal>
</goals>
<configuration>
<url>jdbc:jtds:sqlserver://myCompany.com/testDatabase</url>
<user>dbUser</user>
<password>password</password>
<locations>
<location>filesystem:src/test/resources/db/migration</location>
</locations>
</configuration>
</execution>
</executions>
</plugin>https://stackoverflow.com/questions/24660373
复制相似问题