当前位置: 首页 > 面试题库 >

有没有办法将长时间运行(例如压力测试)分开,以使它们在Maven 2中默认不运行?

益泰平
2023-03-14
问题内容

我们一直有一个持续的需求,我无法弄清楚如何使用库存的Maven 2工具和文档来解决。

我们的一些开发人员有一些运行很长时间的JUnit测试(通常是压力测试),在任何情况下都不应将其作为构建过程/每晚构建的常规部分运行。

当然,我们可以使用surefire插件的排除机制,只是从构建中删除它们,但是理想情况下,我们希望可以让开发人员通过Maven 2随意运行它们。


问题答案:

通常,您将向运行不同测试集的Maven配置添加一个配置文件:

用mvn -Pintegrationtest install运行

    <profile>
        <id>integrationtest</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <argLine>-client -Xmx896m -XX:MaxPermSize=192m</argLine>
                        <forkMode>once</forkMode>
                        <includes>
                            <include>**/**/*Test.java</include>
                            <include>**/**/*IntTest.java</include>
                        </includes>
                        <excludes>
                            <exclude>**/**/*SeleniumTest.java</exclude>
                        </excludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
        <activation>
            <property>
                <name>integrationtest</name>
            </property>
        </activation>
    </profile>


 类似资料:
  • 我有一个用Maven建立的Java项目,我正在用Cucumber和jUnit进行测试。 也许我遗漏了一些东西,但是有没有一种方法可以设置Cucumber测试运行程序来自动运行jUnit测试以及Cucumber特性?不必运行两个单独的测试套件,并使用自动测试所有内容,这将是一件非常棒的事情。 目前,当我指定时,它只查找文件并忽略所有其他测试。 以下是我的测试文件结构: 还有我的测试运行程序,它目前只

  • 尝试在maven中重新访问Junit 5平台(5.3.2)下运行Junit 5/4集成测试。从如何使用maven failsafe插件并行运行JUnit 4和JUnit 5测试 在surefire插件2.22.1下运行单元测试可以并行和混合测试JUnit 5和JUnit 4,并在详细信息中查看工作线程。 在故障安全2.22.1中尝试了同样的方法,但是需要日志时间,并且似乎没有并行执行。而且只有[m

  • 我试图在运行时向tomcat添加一个端口。有办法做到这一点吗?或者有没有办法监听所有端口?我使用的是spring,我希望用户能够添加一个APIendpoint调用,以添加一个新的端口来侦听。 我知道您可以在配置文件中添加其他端口,但我不知道我需要添加哪些端口。

  • 问题内容: 我们正在开发S60版本,该平台具有不错的Python API。 但是,关于Android上的Python尚无任何官方资料,但是由于Jython存在,有没有办法让蛇和机器人一起工作? 问题答案: 一种方法是使用: 开源Python库,用于快速开发利用创新用户界面的应用程序,例如多点触控应用程序。 可在和上运行。你可以在所有受支持的平台上运行相同的代码。

  • 问题内容: 我快速浏览了Guava的源代码和文档,但似乎都没有提到版本。我想知道是否有一种方法可以在运行时获取Guava的版本信息。 如果实际上不存在此版本信息,则不必通过任何获取器进行访问。如果将其保存在某个字段中,而该字段在加载番石榴时没有得到GC,那么就足够了。 在运行时的任何地方都可以使用此版本信息吗? 我对此有非常具体的用途。我的工作很大一部分是分析Java堆转储,以识别并修复代码中导致

  • 有没有办法在Docker内部运行LXD?eg. 在使用ubuntu 16.04的主机上: 在容器中: LXD守护进程可以工作,但由于cgroups错误,我无法启动LXD容器。 我也尝试过: