Maven 测试在停止执行后不会从 jenkins/command line/eclipse 终止

Maven test not terminating from jenkins/command line/eclipse after stopping execution

我的 pom.xml 文件:

<build>
 <pluginManagement>
  <plugins>
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
     <source>1.7</source>
     <target>1.7</target>
    </configuration>
   </plugin>
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.12</version>
    <inherited>true</inherited>
    <configuration>
     <suiteXmlFiles>
      <suiteXmlFile>testng.xml</suiteXmlFile>
     </suiteXmlFiles>
    </configuration>
   </plugin>
  </plugins>
 </pluginManagement>
</build>

我在eclipse中用maven+testNG创建了一个项目

我在testng中总共有23个测试场景

问题是:

  1. I 运行 我的 eclipse 项目 --> 右击项目 --> 运行 as --> maven 安装 --> 项目开始执行。当我随时使用 "Terminate" 按钮停止它时,从 eclipse 执行停止但实际上在后台处理 运行s 并且所有 23 个测试场景继续执行

  2. 通过命令行执行 --> mvn test --> Ctrl+C --> 它询问终止进程时会发生同样的事情吗? Y/N? --> Y --> 执行在前台停止,但进程仍在后台 运行s,所有 23 个场景继续执行。

  3. 最后,当我 运行 从 jenkins 构建同一个 maven 项目并停止执行时,进程在前台停止,但测试场景继续在后台执行。

我需要有关问题出在哪里以及如何完全停止执行的帮助。提前致谢

我的设置:

在 pom.xml 文件中使用 forkMode=never 来避免这种情况

这是一个已知的 Jenkins 错误

https://issues.jenkins-ci.org/browse/JENKINS-28968

在某些情况下,这是可以预期的行为。