Continuous integration 如何在单元测试和集成测试之前设置测试环境?
我想在整个测试开始之前创建一个数据库,并在测试结束时以这种方式删除数据库:Continuous integration 如何在单元测试和集成测试之前设置测试环境?,continuous-integration,integration-testing,qa,exec-maven-plugin,maven-failsafe-plugin,Continuous Integration,Integration Testing,Qa,Exec Maven Plugin,Maven Failsafe Plugin,我想在整个测试开始之前创建一个数据库,并在测试结束时以这种方式删除数据库: <build> <plugins> <!-- MOJO PLUGIN THAT LOADS THE INITIAL DATABASE --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven
<build>
<plugins>
<!-- MOJO PLUGIN THAT LOADS THE INITIAL DATABASE -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>load-test-db</id>
<phase>test</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.example.ci.ScriptRunner</mainClass>
<classpathScope>test</classpathScope>
</configuration>
</plugin>
</plugins>
</build>
<build>
<plugins>
<!-- MOJO PLUGIN THAT LOADS THE INITIAL DATABASE -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>load-test-db</id>
<phase>test</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.example.ci.ScriptRunner</mainClass>
<classpathScope>test</classpathScope>
</configuration>
</plugin>
</plugins>
</build>
org.codehaus.mojo
execmaven插件
1.2
负载测试数据库
测验
JAVA
com.example.ci.ScriptRunner
测验
然而,该类从未被调用,好像测试阶段永远不会开始。。。
我的方法有效吗?您创建的数据集是什么格式?你的框架中有现有的数据层吗?嗨,Mutt,有一个mysql,应用程序直接使用JDBC。我个人会创建SQL创建/删除脚本,并在前后执行它们。它可以直接嵌入数据访问层,并在测试开始和结束时调用。如果数据库是可靠的,您可以导出这些脚本。谢谢。问题是,有数百个JUnit和数十个集成测试,它们都是从maven调用的。前后如何执行?我想要上面的maven代码(我更新了原始问题)。由于某种原因,代码没有调用POJO方法。。。或者其他技术?