Использование aspectJweaver во время программного тестирования testNG - PullRequest
0 голосов
/ 09 мая 2019

Я использую Java-класс для динамического генерирования testNG xml из файла Excel.Я использую allure-cli для создания отчетов об очаровании в конце выполнения моего теста.

Я использую maven-surefire-plugin со следующей конфигурацией.

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.20</version>
                <configuration>

                    <argLine>
                        -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                    </argLine>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.aspectj</groupId>
                        <artifactId>aspectjweaver</artifactId>
                        <version>${aspectj.version}</version>
                    </dependency>
                </dependencies>
            </plugin>

Я могу создать привлекательный отчет с полными журналами и скриншотами, прикрепленнымиЗаманчивые аннотации (@step, @attachments, @Story ..), когда тесты запускаются по заданным целям и этапам.

Однако я не могу получить тот же отчет, когда тесты запускаются классом java (который генерирует testNG xml и затем запускает его).Код для генерации XML: -

public static  void runTestNGTests(Map<Integer,List<String>> testMap){

         TestNG myTestNG = new TestNG();     
         XmlSuite mySuite = new XmlSuite();
         mySuite.setName(suiteName);        


         List<XmlTest> myTests = new ArrayList<XmlTest>();

         for(Map.Entry<Integer, List<String>> map : testMap.entrySet()){


             XmlTest myTest = new XmlTest(mySuite);

             myTest.setName(map.getKey()+".) web Test : "+map.getValue().get(0) + " on "+ map.getValue().get(1));        
             myTest.addParameter("Date", map.getValue().get(0));
             myTest.setXmlClasses(Arrays.asList(new XmlClass("com.bravura.tests."+map.getValue().get(1))));

             myTests.add(myTest);
         }



         mySuite.setTests(myTests);

         List<XmlSuite> mySuites = new ArrayList<XmlSuite>();
         mySuites.add(mySuite);

            myTestNG.setXmlSuites(mySuites);
             myTestNG.run(); 
    }
}

Нужно ли включать javaagent: "$ {settings.localRepository} / org / aspectj / aspectjweaver / $ {aspectj.version} / aspectjweaver-$ {aspectj.version} .jar в моем testNG.xml , чтобы получить правильные журналы testbody в отчете очарования?

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