TestNG.xml套件包含所有包的所有文件

sib*_*iba 16 java testng automated-tests maven

即将用Maven + TestNG + Selenium实现测试框架.

如何声明一个告诉TestNG运行所有测试的suite.xml ?我已经尝试了所有这些无济于事:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
  <test name="all">
    <classes>
      <class name="*" />
    </classes>
  </test>
</suite>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
  <test name="all">
    <groups>
      <run>
        <include name="*" />
        <exclude name="disabled" />
      </run>
    </groups>
  </test>
</suite>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
  <test name="all">
    <packages>
      <package name="*" />
    </packages>
  </test>
</suite>
Run Code Online (Sandbox Code Playgroud)

我需要指定具有不同参数的不同套件配置,但都要运行所有测试.我可以明确地挖掘的每个例子都列出了每个对我来说都不太理智的类或包.

小智 19

据我所知,应该使用.*来匹配它们.

  • 就是这个!<packages> <package name =".*"/> </ packages> (4认同)

Dha*_*ana 9

您可以通过将testng.xml文件声明为包来在包中添加所有测试类

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="sampleTest" parallel="false">

    <test name="sample-Test" preserve-order="true" verbose="2">
        <packages>
            <package name="org.sample.something.*"/>
        </packages>
    </test>

</suite>
Run Code Online (Sandbox Code Playgroud)

没有地方可以通过测试作为搜索选项.如果你想做类似的事情,你必须在代码中实现套件并在那里实现搜索场景.

  • 您的包名称可以是正则表达式,将允许您运行所有内容.但是,它非常昂贵,因为TestNG必须走完整个类路径才能做到这一点. (3认同)