TestNG - Запуск нескольких тестовых классов (набор тестов)

В этом руководстве мы покажем вам, как запускать несколько тестовых случаев (классов) TestNG вместе, также как и набор тестов.
1. Тестовые занятия
Просмотрите следующие три тестовых класса.
TestConfig.java
package com.example.testng.examples.suite;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest;
//show the use of @BeforeSuite and @BeforeTest
public class TestConfig {
@BeforeSuite
public void testBeforeSuite() {
System.out.println("testBeforeSuite()");
}
@AfterSuite
public void testAfterSuite() {
System.out.println("testAfterSuite()");
}
@BeforeTest
public void testBeforeTest() {
System.out.println("testBeforeTest()");
}
@AfterTest
public void testAfterTest() {
System.out.println("testAfterTest()");
}
}
TestDatabase.java
package com.example.testng.examples.suite;
import org.testng.annotations.Test;
public class TestDatabase {
@Test(groups = "db")
public void testConnectOracle() {
System.out.println("testConnectOracle()");
}
@Test(groups = "db")
public void testConnectMsSQL() {
System.out.println("testConnectMsSQL");
}
@Test(groups = "db-nosql")
public void testConnectMongoDB() {
System.out.println("testConnectMongoDB");
}
@Test(groups = { "db", "brokenTests" })
public void testConnectMySQL() {
System.out.println("testConnectMySQL");
}
}
TestOrder.java
package com.example.testng.examples.suite;
import org.testng.annotations.Test;
public class TestOrder {
@Test(groups={"orderBo", "save"})
public void testMakeOrder() {
System.out.println("testMakeOrder");
}
@Test(groups={"orderBo", "save"})
public void testMakeEmptyOrder() {
System.out.println("testMakeEmptyOrder");
}
@Test(groups="orderBo")
public void testUpdateOrder() {
System.out.println("testUpdateOrder");
}
@Test(groups="orderBo")
public void testFindOrder() {
System.out.println("testFindOrder");
}
}
2. Testng.xml
Чтобы запустить вышеуказанные тестовые классы, создайте файл XML - файлtestng.xml (может быть любое имя файла) и определите детали следующим образом:
testng.xml
Выход
[TestNG] Running: C:\example_projects\TestNG\src\test\resources\testng-all.xml testBeforeSuite() testBeforeTest() testFindOrder testMakeEmptyOrder testMakeOrder testUpdateOrder testAfterTest() testBeforeTest() testConnectMongoDB testConnectMsSQL testConnectMySQL testConnectOracle() testAfterTest() testAfterSuite()
3. Другие примеры
Вот несколько распространенных примеров использования.
3.1 Укажите имена пакетов вместо имен классов:
testng.xml
3.2 Укажите методы для включения или исключения:
testng.xml
Выход
[TestNG] Running: C:\example_projects\TestNG\src\test\resources\testng.xml testBeforeSuite() testBeforeTest() testMakeOrder testUpdateOrder testAfterTest() testAfterSuite()
3.3 Укажите группы, которые нужно включить или исключить:
testng.xml
Выход
[TestNG] Running: C:\example_projects\TestNG\src\test\resources\testng.xml testConnectMsSQL testConnectOracle()