Maven 定义在jenkins上执行集成测试的时间

Maven 定义在jenkins上执行集成测试的时间,maven,jenkins,integration-testing,Maven,Jenkins,Integration Testing,我在詹金斯身上做了一些集成测试。总的来说,他们需要大约30分钟的时间来完成。这花的时间太长了。因此,我们试图找到一种方法,让一个测试类(占用大部分时间)在另一个时间执行。我们如何才能做到这一点 目前,我们正在以这种方式包括测试: <build> <testResources> <testResource> <directory>config</directory>

我在詹金斯身上做了一些集成测试。总的来说,他们需要大约30分钟的时间来完成。这花的时间太长了。因此,我们试图找到一种方法,让一个测试类(占用大部分时间)在另一个时间执行。我们如何才能做到这一点

目前,我们正在以这种方式包括测试:

<build>
    <testResources>
        <testResource>
            <directory>config</directory>
            <includes>
                <include>**/*.properties</include>
            </includes>
            <filtering>true</filtering>
        </testResource>
    </testResources>

    <plugins>
        <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skip>${skip.integration.test}</skip>
                <includes>
                    <include>**/*Test.class</include>
                </includes>
            </configuration>
        </plugin>
    </plugins>
</build>

配置
**/*.物业
符合事实的
maven surefire插件
${skip.integration.test}
**/*测试类
我听到过一些类似于以下的激活配置文件:

<profiles>
  <profile>
    <activation>
      <jdk>1.4</jdk>
    </activation>
    ...
  </profile>
</profiles>

1.4
...

你知道除了每天一个测试类外,我如何执行所有测试,并且在一周的某一天执行所有测试吗?

我不会跳过几天的集成测试。因为,您的开发人员越早得到反馈,他们的一项更改导致测试失败越好。由于最近的更改更容易记住,因此更正应用得更快。否则,依赖于罪犯的更改的所有其他开发人员也会针对损坏的代码进行开发,甚至会被阻止更长的时间

您的意思是,当您的开发人员在本地测试其更改时,这些集成测试也会运行吗?我不建议这样做,我也同意“大约30分钟”肯定太长了

请参阅,了解如何分别运行单元测试和集成测试。(是的,它是通过Maven配置文件实现的。请参阅。)

我会使用这里提到的
dev
配置文件作为默认配置文件,并在像Jenkins这样的CI系统上使用
集成测试
配置文件