当测试失败时如何运行maven目标?

0mkxixxg  于 2023-04-05  发布在  Maven
关注(0)|答案(6)|浏览(127)

我想知道是否有一种方法可以在测试失败时执行目标?
由于maven在遇到测试失败后停止执行(fail fast模式),当测试失败时,是否有任何选项来启动目标?
问候。

bfnvny8b

bfnvny8b1#

我也一直在寻找一种方法来做到这一点,但没有太大的成功。
然而,以下问题可能提供一些一般性提示:
Maven reporting plugins do not execute if a unit test failure occurs
这个想法是你先运行mvn install(或其他),然后运行:
mvn -Dmaven.test.skip=true your-plugin:your-goal
这将让你在不运行测试的情况下再次运行构建,保留结果供你仔细阅读。当然,这只在你的插件解析测试结果时有用...

zc0qhyus

zc0qhyus2#

虽然不推荐使用,但通过将surefire属性testFailureIgnore设置为true,即使在测试失败时也可以继续执行maven。

...
<plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.11</version>
    ...
    <configuration>
        <testFailureIgnore>true</testFailureIgnore>
        ...
    </configuration>
</plugin>
...
vm0i2vca

vm0i2vca3#

做一个月一个月

wqnecbli

wqnecbli4#

我在pom.xml中添加了这个插件,它工作得很好。

<plugin>

               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-plugin</artifactId>
               <version>2.19.1</version>
               <configuration>
               <testFailureIgnore>true</testFailureIgnore>
            </configuration>

           </plugin>
bd1hkmkf

bd1hkmkf5#

如果您希望构建运行时预先知道会有失败,您可以用途:

mvn <goal> -Dmaven.test.skip = true
ffx8fchx

ffx8fchx6#

在添加下面的插件后,我认为我们在这里所做的是我们忽略了测试用例。我不认为这是正确的解决方案,请提供任何乐观的解决方案。

<groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-surefire-plugin</artifactId>
           <version>2.19.1</version>
           <configuration>
           <testFailureIgnore>true</testFailureIgnore>
        </configuration>

       </plugin>

相关问题