首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven-surefire-plugin和forked模式

Maven-surefire-plugin和forked模式
EN

Stack Overflow用户
提问于 2010-08-18 03:55:23
回答 1查看 2K关注 0票数 1

因此,我有一些依赖于jar文件的类,jar文件中包含本机方法。在模拟这个jar file...so中的对象时,我遇到了一些问题,我找到了一个可行的解决方案。

使用forkedmode pertest似乎可以解决这个问题。然而,有5个文件受影响,需要在forkedmode...there中运行是130其他测试不需要分支,与cobertura和一切都是非常慢的构建时间,因为它在该pom中的每个测试分支...

所以我的问题是is...is有没有一种方法来指定你想要在forkedmode中运行哪些类,并正常运行其他所有的类呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-18 05:27:16

有没有办法指定你想要在forkedmode中运行哪些类,并正常运行其他所有的类?

为此,您可以指定两个具有特定<configuration><execution>元素:一个默认元素用于大多数测试(不包括那些需要forked的测试),forkMode设置为once;另一个特殊元素用于forkMode设置为always的特殊测试(仅包括特殊测试)。

下面是一个pom代码片段,展示了如何做到这一点:

代码语言:javascript
复制
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <!-- Lock down plugin version for build reproducibility -->
  <version>2.6</version>
  <executions>
    <execution>
      <id>default-test</id><!-- here we configure the default execution -->
      <configuration>
        <forkMode>once</forkMode><!-- this is the default, can be omitted -->
        <excludes>
          <exclude>**/somepackage/*Test.java</exclude>
        </excludes>
      </configuration>
    </execution>
    <execution>
      <id>special-test</id><!-- and here we configure the special execution -->
      <phase>test</phase>
      <goals>
        <goal>test</goal>
      </goals>
      <configuration>
        <forkMode>always</forkMode>
        <includes>
          <include>**/somepackage/*Test.java</include>
        </includes>
      </configuration>
    </execution>
  </executions>
</plugin>

另请参阅

  • 7.1.6. Setting Parameters for Goals Bound to Default Lifecycle
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3506391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档