TestNG - Тест группы

TestNG - Тест группы

В этом уроке мы покажем вам, как проводить групповое тестирование в TestNG.

1. Группы по методам

Просмотрите пример тестовой группы.

  1. runSelenium () и runSelenium1 () относятся к группеselenium-test.

  2. testConnectOracle () и testConnectMsSQL () принадлежат к группеdatabase.

  3. runFinal () будет выполнен, если группыselenium-test иdatabase переданы.

TestGroup.java

package com.example.testng.examples.group;

import org.testng.annotations.AfterGroups;
import org.testng.annotations.BeforeGroups;
import org.testng.annotations.Test;

public class TestGroup {

    @BeforeGroups("database")
    public void setupDB() {
        System.out.println("setupDB()");
    }

    @AfterGroups("database")
    public void cleanDB() {
        System.out.println("cleanDB()");
    }

    @Test(groups= "selenium-test")
    public void runSelenium() {
        System.out.println("runSelenium()");
    }

    @Test(groups= "selenium-test")
    public void runSelenium1() {
        System.out.println("runSelenium()1");
    }

    @Test(groups = "database")
    public void testConnectOracle() {
        System.out.println("testConnectOracle()");
    }

    @Test(groups = "database")
    public void testConnectMsSQL() {
        System.out.println("testConnectMsSQL");
    }

    @Test(dependsOnGroups = {"database","selenium-test"})
    public void runFinal() {
        System.out.println("runFinal");
    }

}

Выход

//group = selenium-test
runSelenium()
runSelenium()1

//group = database
setupDB()
testConnectMsSQL
testConnectOracle()
cleanDB()

//dependsOnGroups = database, selenium-test
runFinal

PASSED: runSelenium
PASSED: runSelenium1
PASSED: testConnectMsSQL
PASSED: testConnectOracle
PASSED: runFinal

2. Группы по классу

«Группа» может применяться на уровне класса. В приведенном ниже примере каждый общедоступный метод этого класса TestSelenium принадлежит группеselenium-test.

TestSelenium.java

package com.example.testng.examples.group;

import org.testng.annotations.Test;

@Test(groups= "selenium-test")
public class TestSelenium {

    public void runSelenium() {
        System.out.println("runSelenium()");
    }

    public void runSelenium1() {
        System.out.println("runSelenium()1");
    }

}

Создайте файл XML для запуска 2 тестовых классов.

testng.xml





    
        
            
            
        
    

    
    

        
            
                
            
        

        
            
            
        

    

Выход

//test name = final
runSelenium()
runSelenium()1
setupDB()
testConnectMsSQL
testConnectOracle()
cleanDB()
runFinal

//test name = selenium
runSelenium()
runSelenium()1

===============================================
TestAll
Total tests run: 7, Failures: 0, Skips: 0
===============================================

3. Разные Примеры

3.1 A test method can belong to multiple groups.

    @Test(groups = {"mysql","database"})
    public void testConnectMsSQL() {
        System.out.println("testConnectMsSQL");
    }

3.2 The above result is executed via Eclipse TestNG Plugin.

eclipse-testng