如何修复转储文件(如果存在)[date].dump、[date]-jvmRun[N].dump 和 [date].dumpstream。使用 Maven Surefire 插件 3.0.0-M4 时

问题描述 投票:0回答:6

执行命令 mvn clean test 时出现以下错误。即使我更改了 Surefire 插件的版本,但我仍然面临同样的错误。

错误日志: [错误] 无法在 pr 上执行目标 org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M4:test (default-test) 项目信息:存在测试失败。 [错误] [错误] 请参阅 C:\Users\Sheik Mohammed Clipse-workspace\info arget\surefire-reports 获取个人信息 l 测试结果。 错误1: [错误] 请参阅转储文件(如果存在)[日期].dump、[日期]-jvmRun[N].dump 和 [日期].dumpstream。 错误2: [错误] ExecutionException 分叉的虚拟机在没有正确告别的情况下终止。 VM 崩溃或调用 System.exit? 错误3: [错误] 命令是 cmd.exe /X /C ""C:\Program Files\Java\jdk1.8.0_311\jre in\java" "-javaagent:C:\Users\Sheik 穆罕默德.m2 epository/org/aspectj/aspectjweaver/1.8.10/aspectjweaver-1.8.10.jar" " -Dcucumber.options=--plu gin io.qameta.allure.cucumber4jvm.AllureCucumber4Jvm" --add-modules java.base ${argLine} -Xmx1024m -XX:MaxPerm 大小=256m org.apache.maven.surefire.booter.ForkedBooter“C:\Users\Sheik Mohammed\AppData\Local\Temp\surefire8647 270359642587079“2022-02-27T09-33-26_575-jvmRun1 Surefire8833373504517140594tmp Surefire_08041519546226636871tmp ” 错误4: [ERROR] 启动 fork 时发生错误,请检查日志中的输出 [错误] 进程退出代码:1 [错误] org.apache.maven.surefire.booter.SurefireBooterForkException:ExecutionException 分叉虚拟机终止 d 没有正确地说再见。 VM 崩溃或调用 System.exit? [错误] 命令是 cmd.exe /X /C ""C:\Program Files\Java\jdk1.8.0_311\jre in\java" "-javaagent:C:\Users\Sheik 穆罕默德.m2 epository/org/aspectj/aspectjweaver/1.8.10/aspectjweaver-1.8.10.jar" " -Dcucumber.options=--plu gin io.qameta.allure.cucumber4jvm.AllureCucumber4Jvm" --add-modules java.base ${argLine} -Xmx1024m -XX:MaxPerm 大小=256m org.apache.maven.surefire.booter.ForkedBooter“C:\Users\Sheik Mohammed\AppData\Local\Temp\surefire8647 270359642587079“2022-02-27T09-33-26_575-jvmRun1 Surefire8833373504517140594tmp Surefire_08041519546226636871tmp ” [ERROR] 启动 fork 时发生错误,检查日志中的输出

pom.xml

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <aspectj.version>1.8.10</aspectj.version>
     <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

    <build>
    <plugins>
        <plugin>       
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>3.0.0-M4</version>
                   
            <configuration>
                <useSystemClassLoader>false</useSystemClassLoader>
                <forkedProcessExitTimeoutInSeconds>120</forkedProcessExitTimeoutInSeconds>
                <forkCount>3</forkCount>
                <reuseForks>true</reuseForks>    
                <argLine>
                    -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                    -Dcucumber.options="--plugin io.qameta.allure.cucumber4jvm.AllureCucumber4Jvm"
                    --add-modules java.base ${argLine} -Xmx1024m -XX:MaxPermSize=256m
                </argLine>
              
                <systemPropertyVariables>
                    <allure.results.directory>${project.build.directory}/allure-results</allure.results.directory>
                    <allure.link.issue.pattern>https://example.org/browse/{}</allure.link.issue.pattern>
                    <allure.link.tms.pattern>https://example.org/browse/{}</allure.link.tms.pattern>
                </systemPropertyVariables>
            </configuration>
            
            <dependencies>
                <!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
                <dependency>
                <groupId>org.aspectj</groupId>
                    <artifactId>aspectjweaver</artifactId>
                    <version>${aspectj.version}</version>

                </dependency>
                
            </dependencies>
        </plugin>
    </plugins>
  </build>

  <dependencies>
  
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13.1</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.141.59</version>
      <scope>compile</scope>
    </dependency>
    
    <dependency>
      <groupId>io.github.bonigarcia</groupId>
      <artifactId>webdrivermanager</artifactId>
      <version>4.2.2</version>
      <scope>compile</scope>
    </dependency>
    
    <dependency>
      <groupId>tech.grasshopper</groupId>
      <artifactId>extentreports-cucumber6-adapter</artifactId>
      <version>2.6.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>pdfbox2-layout</artifactId>
          <groupId>com.github.ralfstuckert.pdfbox-layout</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.14.3</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-simple</artifactId>
      <version>1.7.25</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi</artifactId>
      <version>4.1.2</version>
      <scope>compile</scope>
    </dependency>
    
    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi-ooxml</artifactId>
      <version>4.1.2</version>
      <scope>compile</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-java -->
    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>4.8.1</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-testng -->
    <dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-testng</artifactId>
    <version>4.8.1</version>
    </dependency>
    
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>6.9.0</version>
        <scope>test</scope>
    </dependency>
    
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>1.2.5</version>
    </dependency>
        
    <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-cucumber4-jvm -->
    <dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-cucumber4-jvm</artifactId>
    <version>2.13.3</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-maven -->
    <dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-maven</artifactId>
    <version>2.10.0</version>
    </dependency> 
    
     <dependency>
            <groupId>io.qameta.allure</groupId>
            <artifactId>allure-testng</artifactId>
            <version>2.13.0</version>
     </dependency>
     
    <!-- <dependency>
     <groupId>org.apache.maven.surefire</groupId>
     <artifactId>surefire</artifactId>
     <version>3.0.0-M4</version>
     <type>pom</type>
     </dependency>-->
       
  </dependencies>
maven maven-surefire-plugin
6个回答
12
投票

你可以试试这个: 将此代码添加到 pom.xml 的插件部分

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

你可以看这个链接 https://programmerah.com/solved-there-are-test-failures-please-refer-to-djava_studyspringbootspringboot-sugon-3targetsurefire-reports-for-the-individual-test-results-28892/


2
投票

解决方案1:由于单元测试失败,我遇到了错误。要解决此错误,请检查失败的单元测试并确保其成功通过,因为修复测试将绕过该错误。

如果您的 Spring Boot 应用程序由于单元测试失败而遇到错误,最好的方法是识别并修复导致测试失败的问题。

识别失败的单元测试

解决方案 2: 如果您因单元测试失败而遇到错误,并且您的 pom.xml 文件中有此配置以跳过测试。

在您的 maven pom.xml 中添加插件

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skipTests>true</skipTests>
            </configuration>
        </plugin>

我希望这有帮助!如果您有任何疑问或者还有什么我可以帮助您的,请告诉我。

编码愉快! 👨u200d💻


1
投票
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<skip>true</skip>
 </configuration>
</plugin>

1
投票

我遇到了这个错误,它是由于单元测试失败而发生的。因此,您只需检查失败的单元测试并使其通过即可绕过此错误。


0
投票

可以通过改变MVN的执行环境来解决问题。

尝试这个命令:

- apt install locales-all
- update-locale LANG=fr_FR.UTF-8 LANGUAGE
- update-locale LC_TIME=fr_FR.UTF-8
- update-locale LANG="fr_FR.UTF-8" LANGUAGE="fr_FR"
- dpkg-reconfigure locales
- apt-get update >/dev/null
- apt-get install -y locales >/dev/null
- echo "fr_FR UTF-8" > /etc/locale.gen
- locale-gen fr_FR.UTF-8
- export LANG=fr_FR.UTF-8
- export LANGUAGE=fr_FR:fr
- export LC_ALL=fr_FR.UTF-8

0
投票

尝试这个命令:

mvn clean install -Dlogging.root=[filepath]\logs
示例
mvn clean install -Dlogging.root=C:\git_repo\payment-service\logs

注意:它不会跳过任何测试用例。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.