无法使用 Maven 运行单个测试方法

Posted

技术标签:

【中文标题】无法使用 Maven 运行单个测试方法【英文标题】:Can't run single test method with maven 【发布时间】:2012-01-02 20:39:40 【问题描述】:

我知道如何运行 Junit 测试类:

mvn test -Dtest=classname

但是当我尝试如下运行单一单元测试方法时:

mvn test -Dtest=classname#methodname

我总是收到错误:没有执行任何测试

参考资料:

http://maven.apache.org/plugins/maven-surefire-plugin/examples/single-test.html http://***.com/questions/1873995/run-a-single-test-method-with-maven

请告知为什么我的测试方法没有被执行,我正在使用 ma​​ven 2junit 4.7

【问题讨论】:

【参考方案1】:

从 Maven 项目目录执行:

mvn surefire:test -Dtest=<name of test class>

注意surefire的使用

参考:https://maven.apache.org/surefire/maven-surefire-plugin/examples/single-test.html

【讨论】:

在 SOF wrt 比率和问题与答案的数量以及所涉及的主题方面,你是最接近我的克隆人。特别是:我们有一个有点不寻常的特点,那就是有相当多的both问答:我们不害怕寻求帮助并自己提供帮助。同样在过去,我们都做了很多 Spark @javadba 太棒了!,这是您所做的一个有趣的观察,但我认为鉴于此站点上有活动的用户和主题的数量,这肯定会发生。【参考方案2】:

surefire 2.12 存在问题。 这就是我将 maven-surefire-plugin 从 2.12 更改为 2.11 时发生的事情:

    mvn 测试 -Dtest=DesignRulesTest 结果: [错误] 无法执行目标 org.apache.maven.plugins:maven-surefire-plugin:2.12:test (default-test) on project pmd: 没有执行测试!强>

    mvn 测试 -Dtest=DesignRulesTest 结果: [信息] --- maven-surefire-plugin:2.11:test (default-test) @ pmd --- ... 运行 net.sourceforge.pmd.lang.java.rule.design.DesignRulesTest 测试运行:5,失败:0,错误:0,跳过:4,经过时间:4.009 秒

【讨论】:

欢迎来到 Stack Overflow!在发布多个问题的复制和粘贴样板/逐字答案时要小心,这些往往被社区标记为“垃圾邮件”。如果您这样做,则通常意味着问题是重复的,因此请将它们标记为:***.com/a/12887047/419 对不起,你是对的,我认为有重复:这个问题第一次出现在对问题 [link](***.com/a/12887047/419) 的评论中,而不是在此页面中制定为一个新问题。【参考方案3】:

仅 Maven Surefire 版本 2.7.3+ 支持上述语法

确保您使用的是正确版本的插件。

【讨论】:

该插件的最新稳定版本是什么,可以在 maven 2 上正常工作? 2.8 版运行良好:&lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt; &lt;version&gt;2.8&lt;/version&gt;

以上是关于无法使用 Maven 运行单个测试方法的主要内容,如果未能解决你的问题,请参考以下文章

使用 tycho-surefire-plugin 运行单个插件测试方法

在 maven 中运行单个测试 -> 未执行任何测试

在 Maven 构建中并行运行 junit 测试?

JUnit单元测试

Maven 和 JUnit 5:在一个类中运行单个测试

如何使用Maven运行多个测试类或测试方法?