当前位置: 首页 > 知识库问答 >
问题:

maven failsafe插件未运行集成测试

卢阳泽
2023-03-14

我正在进行集成测试,但由于某些原因,maven failsafe插件没有运行。下面是用于集成测试的概要文件。测试类的名称是AppSmokeTest。java@测试正在用于测试。

<profiles>
    <profile>
        <id>default</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>${maven.war.version}</version>
                    <configuration>
                        <archive>
                            <manifest>
                                <addClasspath>true</addClasspath>
                            </manifest>
                        </archive>
                        <packagingExcludes>${package.excludes}</packagingExcludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
    <profile>
        <id>smoke-test</id>
        <build>
            <finalName>APP</finalName>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>${build.helper.maven.version}</version>
                    <executions>
                        <execution>
                            <id>reserve-network-port</id>
                            <goals>
                                <goal>reserve-network-port</goal>
                            </goals>
                            <phase>process-resources</phase>
                            <configuration>
                                <portNames>
                                    <portName>tomcat.http.port</portName>
                                </portNames>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.tomcat.maven</groupId>
                    <artifactId>tomcat7-maven-plugin</artifactId>
                    <version>${tomcat.maven.version}</version>
                    <configuration>
                        <port>${tomcat.http.port}</port>
                        <path>/${project.build.finalName}</path>
                        <additionalConfigFilesDir>${basedir}/src/test/resources/tomcatconf</additionalConfigFilesDir>
                    </configuration>
                    <executions>
                        <execution>
                            <id>start-server</id>
                            <configuration>
                                <fork>true</fork>
                            </configuration>
                            <phase>pre-integration-test</phase>
                            <goals>
                                <goal>run</goal>h
                            </goals>
                        </execution>
                        <execution>
                            <id>stop-server</id>
                            <configuration>
                            </configuration>
                            <phase>post-integration-test</phase>
                            <goals>
                                <goal>shutdown</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>${maven.failsafe.version}</version>
                    <configuration>
                        <systemPropertyVariables>
                            <integration-test.url>${tomcat.local.host}${tomcat.http.port}/${project.build.finalName}/</integration-test.url>
                        </systemPropertyVariables>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.maven.surefire</groupId>
                            <artifactId>surefire-junit47</artifactId>
                            <version>${maven.failsafe.version}</version>
                        </dependency>
                    </dependencies>
                    <executions>
                        <execution>
                            <goals>
                                <goal>integration-test</goal>
                                <goal>verify</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>${maven.war.version}</version>
                    <configuration>
                        <archive>
                            <manifest>
                                <addClasspath>true</addClasspath>
                            </manifest>
                        </archive>
                        <packagingExcludes>${package.excludes}</packagingExcludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

我看过多篇关于这个问题的帖子

我试着在build标签中运行插件。

我尝试添加

<includes>
    <include>**/*IT.java</include>
</includes>

我也尝试过运行maven failsafe插件2.18.1版,因为我看到有人认为它对他们有用。

共有1个答案

董光霁
2023-03-14

抱歉浪费了你们的时间伙计们。昨天我脑子里放屁了,今天早上意识到我在运行干净的安装时没有选择所需的配置文件

 类似资料:
  • 下面是我真正的pom的一部分。集成测试的测试已经在@Test注释中分配了一个“集成”组。为了做小测试,我在测试阶段没有排除“集成”组。 当使用例如mvn验证或mvn安装构建时,集成测试在测试阶段执行,但不是验证或集成测试阶段。考试数量保持为0。不知何故,他们没有被捡起来。有人知道可能出了什么问题吗? 更新:将TestNG作为依赖项添加到故障保护插件没有帮助

  • 我将和作为测试依赖项: 我的集成测试命名正确(在、或之后,默认情况下由Failsafe包含,默认情况下由Surefire排除)。 有什么方法可以使用JUnit5测试和Failsafe吗?

  • 我有几个繁重的Spring集成测试(是的,这不是最好的方法,我没有时间正确地模拟所有外部dep) 下面是测试的典型注释 由于以下原因,测试会定期失败: 这里有两个问题:1、让测试共存的正确方式是什么?我在surefire插件中设置了forkCount=0。好像有帮助 2.1. 在每次测试期间,我实际上不需要启动所有的

  • 在为基本GET服务运行Java集成测试时,我们的应用程序代码无法检索环境变量。然而,当我们运行应用程序本身时,它可以毫无问题地检索变量。 我们正在开发一个Mac(el captiain)与intellij作为我们的IDE。我们已经导出了bash_profile中的变量(例如导出ORACLE_URL="*************").我们可以在设置和刷新后对变量进行回声。 我们完全搞不懂为什么它们在

  • null 我在Spring plus JUnit Jupiter上也见过这种情况,但它对集成测试没有帮助。

  • 我的团队开发了一个kubernetes集群。我们已经使用< code>kubectl命令行对其进行了手动测试。这些测试用例涉及到,例如: < li >豆荚 < li >服务、负载平衡器等。 < li >部署 < li >水平窗格缩放 < li >回滚部署 < li >入口控制器 Helm-kubernetes的包装经理 < li >持久性卷和持久性卷声明。 < li>DNS 上述手动测试用例的链接