You can specify number of parallel threads that execute given suite of test classes in suite definition xml file.
Example
<suite name="Parallel Classes" parallel="classes" thread-count="2">
</suite>
Find the below working application.
ParallelClassDemo1.java
package com.sample.app.tests;
import org.testng.annotations.Test;
public class ParallelClassDemo1 {
@Test
public void a() {
System.out.println("ParallelClassDemo1_a is executed by : " + Thread.currentThread().getName());
}
@Test
public void b() {
System.out.println("ParallelClassDemo1_b is executed by : " + Thread.currentThread().getName());
}
@Test
public void c() {
System.out.println("ParallelClassDemo1_c is executed by : " + Thread.currentThread().getName());
}
@Test
public void d() {
System.out.println("ParallelClassDemo1_d is executed by : " + Thread.currentThread().getName());
}
@Test
public void e() {
System.out.println("ParallelClassDemo1_e is executed by : " + Thread.currentThread().getName());
}
}
ParallelClassDemo2.java
package com.sample.app.tests;
import org.testng.annotations.Test;
public class ParallelClassDemo2 {
@Test
public void a() {
System.out.println("ParallelClassDemo2_a is executed by : " + Thread.currentThread().getName());
}
@Test
public void b() {
System.out.println("ParallelClassDemo2_b is executed by : " + Thread.currentThread().getName());
}
@Test
public void c() {
System.out.println("ParallelClassDemo2_c is executed by : " + Thread.currentThread().getName());
}
@Test
public void d() {
System.out.println("ParallelClassDemo2_d is executed by : " + Thread.currentThread().getName());
}
@Test
public void e() {
System.out.println("ParallelClassDemo2_e is executed by : " + Thread.currentThread().getName());
}
}
parallelClasses.xml
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Parallel Classes" parallel="classes" thread-count="2">
<test name="ParallelClassesDemo">
<classes>
<class name="com.sample.app.tests.ParallelClassDemo1"></class>
<class name="com.sample.app.tests.ParallelClassDemo2"></class>
</classes>
</test>
</suite>
How to run the suite?
Right click on ‘parallelClasses.xml’ -> Run As -> TestNG Suite.
You will get below messages in console.
[RemoteTestNG] detected TestNG version 7.0.0 ParallelClassDemo1_a is executed by : TestNG-test=ParallelClassesDemo-1 ParallelClassDemo2_a is executed by : TestNG-test=ParallelClassesDemo-2 ParallelClassDemo1_b is executed by : TestNG-test=ParallelClassesDemo-1 ParallelClassDemo2_b is executed by : TestNG-test=ParallelClassesDemo-2 ParallelClassDemo1_c is executed by : TestNG-test=ParallelClassesDemo-1 ParallelClassDemo2_c is executed by : TestNG-test=ParallelClassesDemo-2 ParallelClassDemo1_d is executed by : TestNG-test=ParallelClassesDemo-1 ParallelClassDemo2_d is executed by : TestNG-test=ParallelClassesDemo-2 ParallelClassDemo1_e is executed by : TestNG-test=ParallelClassesDemo-1 ParallelClassDemo2_e is executed by : TestNG-test=ParallelClassesDemo-2 =============================================== Parallel Classes Total tests run: 10, Passes: 10, Failures: 0, Skips: 0 ===============================================
No comments:
Post a Comment