TestNG仅在套件中运行第一个测试

时间:2011-12-10 11:13:49

标签: java testng

我有一个带两个测试的testng.xml文件:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="XEP-0100" verbose="1">
    <test name="Registration">
        <classes>
            <class name="com.obscured.xmpp.TestRegister" />
        </classes>
    </test>
    <test name="Login">
        <classes>
            <class name="com.obscured.xmpp.TestLogin" />
        </classes>
    </test>
</suite>

不幸的是,Eclipse TestNG插件在针对testng.xml运行时只运行一个测试:

enter image description here

如果我将TestLogin类放在Registration测试下面,它就会运行。更奇怪的是:进度条上写着“测试2/2”!我在这里缺少什么?

4 个答案:

答案 0 :(得分:2)

看起来插件实际上都运行了两个测试,但只报告了一个,我发现你发布的内容没有任何问题。你能创建一个小的自包含Eclipse项目并通过电子邮件发送给我吗?如果我可以重现这一点,我应该能够快速解决它。

答案 1 :(得分:0)

它可能与Eclipse插件设置有关。您是否将其配置为运行特定的test.xml文件?或者您刚刚运行名为Registration的测试?

TestNG Eclipse documentation

第3.3节讨论了运行testng.xml文件。

答案 2 :(得分:0)

您似乎只运行两个测试类,如果您在要运行的测试中设置组,或运行整个包,会发生什么?

来自TestNG doc:

<test name="Regression1">
  <groups>
    <run>
      <exclude name="brokenTests"  />
      <include name="checkinTests"  />
    </run>
  </groups>

  <classes>
    <class name="test.IndividualMethodsTest">
      <methods>
        <include name="testMethod" />
      </methods>
    </class>
  </classes>
</test>

答案 3 :(得分:0)

我在6.13.1、6.14.2和6.14.3版本中看到了相同的问题,但是由于7.0.0-beta1一切正常。

更多信息:https://github.com/cbeust/testng/issues/1639