(十) TestNG 多线程运行用例
虫师 创建于 about 7 years 之前
最后更新: less than a minute 之前
阅读数: 285
TestNG 是我接触过的唯一自身支持多程技术的单元测试框架。虽然代码级别的单元测试运行得很快,多线程的意义并不大。但如果是UI自动化测试的话运行速度就会非常慢,这个时候多线程技术就会变得很重要。
多线程配置
这里只介绍 testng.xml 文件,其中的使用到的测试用例,请参考前面的章节创建。
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="测试套件" parallel="classes" thread-count="2" >
<test name="简单测试">
<classes>
<class name="test.sample.FirstTest" />
<class name="test.sample.SecondTest" />
</classes>
</test>
</suite>
parallel 设置多线程的级别划分。
- parallel="methods": TestNG将在不同的线程中运行所有的测试方法。依赖方法也将在单独的线程中运行,但它们将尊重你指定的顺序。
- parallel="tests": TestNG 将在同一个线程中运行相同的
标记的所有方法,但是每个 标记将在一个单独的线程中。这允许你将所有非线程安全的类分组在同一个 中,并保证它们将在同一个线程中运行,同时利用尽可能多的线程来运行测试。 - parallel="classes": TestNG将在同一个线程中运行同一个类中的所有方法,但是每个类都将在一个单独的线程中运行。
- parallel="instances": TestNG将在同一个线程中运行相同实例中的所有方法,但是在两个不同实例上的两个方法将在不同的线程中运行。
thread-count 用于指定线程的个数。