TestNG: Можно ли использовать DataProvider в AfterTest (), AfterClass (), AfterMethod ()? - PullRequest
0 голосов
/ 06 августа 2020

Я пишу несколько тестов, в которых я использую DataProvider для @Test и создаю несколько вещей сейчас на этапе очистки / teardown (). Я хочу удалить эти вещи в методах @After, как я могу использовать DataProvider в AfterTest () , AfterClass (), AfterMethod ()?

1 Ответ

0 голосов
/ 07 августа 2020

Возможно. Например, TestNg может внедрять те же объекты в @AfterMethod. См. Пример ниже:

@DataProvider(name = "test")
public Object[][] testDataProvide(){
    return new Object[][]{
            {"11", "12"},
            {"21", "22"}
    };
}

@Test(dataProvider = "test")
public void testDP(String one, String two){
    System.out.println(String.join(",", one, two));
}

@AfterMethod
public void tearDownEach(Object[] args){
    System.out.println("Tearing down: " + String.join(",", args[0].toString(), args[1].toString()));
}

PS - AfterTest() и AfterClass() не имеют такого способа, поскольку они запускаются после завершения кучи тестов, что не имеет смысла использовать с поставщиком данных, который предназначен для предоставления части данных для каждого одиночного теста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...