简单工厂模式 TestNG简单的学习(17)

电脑杂谈  发布时间:2018-02-12 00:40:45  来源:网络整理

可以通过使用parallel属性要求TestNG在单独的线程中运行测试。这个属性可以在两个值中取其一:

<suite parallel="methods" thread-count="5">

<suite parallel="tests" thread-count="5">

* parallel="methods": TestNG将在单独的线程中运行测试方法,除了那些依赖其他测试方法的,这些将在同一个线程中运行,以保证他们的执行顺序。

* parallel="tests": TestNG将在一个线程中运行所有在同一个<test>标签中的测试方法,但是每个<test>标签将在单独的线程中运行。这种方式容许把所有不是线程安全的类分组到相同的<test>标签中,保证他们将在相同的线程中运行,有利于TestNG使用尽可能多的线程来运行测试。简单工厂模式

此外,thread-count属性容许指定运行时将分配多少线程。

注意:@Test的属性timeOut在并发和非并发模型下都可以工作。

也可以指定@Test方法在不同的线程中被调用。可以使用threadPoolSize属性来实现这样的结果:

@Test(threadPoolSize = 3, invocationCount = 10, timeOut = 10000)

public void testServer() {

}

在这个例子中,方法testServer将被3个不同线程调用10次。此外,10秒种的time-out属性保证任何线程都不会长时间阻塞。

5.10 - Rerunning failed tests

套件中的测试失败时,每次testNG都会在输出目录中创建一个名为testng-failed.xml的文件。这个xml文件包含只重新运行这些失败的测试方法的必要信息,容许只运行这些失败的测试而不必运行全部测试。因此,一种典型的情况将是这样:

java -classpath testng.jar;%CLASSPATH% org.testng.TestNG -d test-outputs testng.xml

java -classpath testng.jar;%CLASSPATH% org.testng.TestNG -d test-outputs test-outputs/testng-failed.xml

注意testng-failed.xml将包含所有必要的依赖方法,所以可以保证运行失败的方法而不运行任何被跳过的(失败)方法。

5.11 - JUnit tests

TestNG可以运行junit测试。所需要的只是在testng.classNames属性中指定junit测试类,并设置testng.junit属性为true。

<test junit="true">

<classes>

<!-- -->

这种情况下TestNG的行为类似jnit:

* 类中所有以test*开头的方法将被运行。

* 如果测试类中有方法setUp(), 将在每次测试方法调用前被执行。

* 如果测试类中有方法tearDown(),将在每次测试方法调用后被执行。

5.12 - JDK 1.4

TestNG也可以在JDK1.4下工作。在这种情况下,需要使用发布的jdk1.4的jar文件(名为testng-...-jdk14.jar)。唯一的差别是在于注解,jdk1.4下使用流行的XDoclet javadoc注解语法:


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-72701-17.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...