如何在单元测试和集成测试之前设置测试环境?

时间:2014-04-04 12:27:55

标签: continuous-integration integration-testing qa exec-maven-plugin maven-failsafe-plugin

我希望在整个测试开始之前以及以这种方式完成删除数据库之后创建一个数据库:

  1. 使用测试数据集
  2. 创建数据库
  3. 执行Junits
  4. 执行集成测试
  5. 使用测试数据集删除数据库
  6. 我认为在预集成测试阶段使用maven-failsafe-plugin是可能的,但是在junit测试之后该阶段会被触发。

    关于如何实现这一目标的任何想法?谢谢!

    更新: 我尝试使用exec-maven-plugin实现这一点。我创建了一个加载数据库的java类,显然可以做任何我想做的事情。我这样称呼它:

    <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>
    

    然而,课程从未被调用,好像测试阶段永远不会开始...... 我的方法是否有效?

0 个答案:

没有答案