你可以用testng工厂创建多个测试吗?

时间:2012-06-13 14:30:57

标签: java testng

使用testng工厂可以很容易地创建一个由不同测试类组成的测试类。

我现在要做的是创建具有相同测试类的多个测试以并行运行。

如果我没有工厂的话,它会是这样的:

<test name="testcombo1">
    <classes>
        <class name="test1" />
        <class name="test2" />
        <class name="test3" />
    </classes>
</test>

<test name="testcombo2">
    <classes>
        <class name="test1" />
        <class name="test2" />
        <class name="test3" />
    </classes>
</test>

<test name="testcombo3">
    <classes>
        <class name="test1" />
        <class name="test2" />
        <class name="test3" />
    </classes>
</test>

当然,它超过3个测试,每个testcombo有不同的参数。那些测试组合应该并行运行而不是类或方法。 这可能是使用testng工厂吗?如果不是,我愿意接受建议。如果我的问题不明确,请询问。

修改

使用XML Suite创建的套件:

<suite thread-count="15" name="TmpSuite" parallel="tests">
  <!-- List of parameters for grid -->
  <listeners>
  <!-- some listeners -->
  </listeners>
  <test name="Accept2">
    <parameter name="number" value="2"/>
    <classes>
      <class name="com.Factory"/>
    </classes>
  </test> <!-- Accept2 -->
  <test name="Accept3">
    <parameter name="number" value="3"/>
    <classes>
     <class name="com.Factory"/>
    </classes>
  </test> <!-- Accept3 -->
  <test name="Accept4">
    <parameter name="number" value="4"/>
    <classes>
      <class name="com.Factory"/>
    </classes>
  </test> <!-- Accept4 -->
</suite>

1 个答案:

答案 0 :(得分:1)

为什么不生成自己的testng.xml来执行此操作?您甚至可以在内存中执行此操作,查找Javadoc fox XmlSuite。