TestNG. Изменить результаты testng, чтобы не включать методы конфигурации - PullRequest
1 голос
/ 10 октября 2019

Я пытаюсь перенастроить результаты моих тестов, чтобы не показывать результаты пропуска для методов конфигурации, и это искажает мои данные.

Я запускаю тесты через TestNG, где каждый метод имеет конфигурацию @beforeMethod и @afterMethodметод. В beforeMethod я проверяю, должен ли выполняться метод @Test или нет, и если нет, я выкидываю исключение SkipException, чтобы пропустить его.


В моей текущей ситуации у меня есть 2 метода тестирования, которые я запускаю. Один предназначен для отказа, а другой предназначен для пропуска. Поэтому я ожидаю получить результат 1 провал и 1 пропустить. В консоли IDE это результат, который я получаю, но когда я запускаю его через Maven, я получаю 1 ошибку и 3 пропуска. Вот мой emailable-result.html . В неудачном тестовом примере нет ни @beforeMethod, ни @afterMethod.

Я узнал о IConfigurationListener, но я не уверен, как его использовать для удаления метода конфигурации из отчета. Я также использую maven surefire

Это то, что у меня есть до сих пор.

public class MyConfigurationListenerAdapter implements IConfigurationListener {

    @Override
    public void onConfigurationSkip(ITestResult itr) {
        String configName = itr.getName();
        if (configName.equals("beforeMethod")||configName.equals("afterMethod")){
            //TODO remove itr from test result
        }
    }
}

pom.xml

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
       <version>2.14.1</version>
       <configuration>
           <properties>
               <property>
                   <name>listener</name>
                   <value>java_accelerator.testng.classes.MyConfigurationListenerAdapter</value>
               </property>
           </properties>
           <!-- Suite testng xml file to consider for test execution -->
           <suiteXmlFiles>
              <suiteXmlFile>src/test/java/testclasses/tests/testng.xml</suiteXmlFile>
           </suiteXmlFiles>
      </configuration>
  </plugin>

Кто-нибудь сможет мне помочь отсюда?

...