【问题标题】:Can't run single test method with maven无法使用 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://stackoverflow.com/questions/1873995/run-a-single-test-method-with-maven

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

【问题讨论】:

    标签: unit-testing maven-2 junit4


    【解决方案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 时发生的事情:

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

    2. 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!在发布多个问题的复制和粘贴样板/逐字答案时要小心,这些往往被社区标记为“垃圾邮件”。如果您这样做,则通常意味着问题是重复的,因此请将它们标记为:stackoverflow.com/a/12887047/419
    • 对不起,你是对的,我认为有重复:这个问题第一次出现在对问题 [link](stackoverflow.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;
    猜你喜欢
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    • 2019-05-05
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多