Allure Report с созданием отчета по каратэ 1.0.1 всего с одним тестовым примером

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

Мой файл TestParallelRunner.java:

@CucumberOptions(plugin = {"pretty" , "html:target/cucumber-html-reports", "io.qameta.allure.cucumber4jvm.AllureCucumber5Jvm","json:target/cucumber/cucumber.json"})
//@KarateOptions(tags = "~@ignore")
public class TestParallelRunner {
    
    @Test
    public void testParallel() {
        
        //String outputDir = "target//surefire-reports";
        Builder testRun = new Builder();
        testRun.path("classpath:com/api/automation/Features").outputCucumberJson(true).tags("~@ignore");
        Results results = testRun.parallel(3);
        generateReport(results.getReportDir());

        
       Assertions.assertEquals(0, results.getFailCount(), "There are some Failed Scenarios");
        

    }
    
    public static void generateReport(String reportDirLocation) {
        File reportDir=new File(reportDirLocation);     
        Collection<File> jsonFiles = FileUtils.listFiles(reportDir, new String[] {"json"}, true);
        //jsonFiles.add(File("cucumber-report.json"));
        List<String> jsonPaths = new ArrayList<>();
        
        //jsonFiles.add("cucumber-report-2.json");
        jsonFiles.forEach(file -> jsonPaths.add(file.getAbsolutePath()));
        Configuration config = new Configuration(new File("target"), "Cucumber Report");
        ReportBuilder reportBuilder = new ReportBuilder(jsonPaths, config);
        reportBuilder.generateReports();
        
        }

}

Мой файл pom.xml:

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>11</java.version>
        <maven.compiler.version>3.8.1</maven.compiler.version>
        <maven.surefire.version>2.22.2</maven.surefire.version>        
        <karate.version>1.0.1</karate.version>
        <allure.maven.version>2.11.2</allure.maven.version>
        <allure-junit5.version>2.17.3</allure-junit5.version>
    </properties>    

    <dependencies>         
        <dependency>
            <groupId>com.intuit.karate</groupId>
            <artifactId>karate-junit5</artifactId>
            <version>${karate.version}</version>
            <scope>test</scope>
        </dependency>       
        
        <!-- https://mvnrepository.com/artifact/net.masterthought/cucumber-reporting -->
<dependency>
    <groupId>net.masterthought</groupId>
    <artifactId>cucumber-reporting</artifactId>
    <version>5.6.1</version>
    <scope>test</scope>
</dependency> 

<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-maven -->
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-maven</artifactId>
    <version>${allure.maven.version}</version>
</dependency>

<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-cucumber5-jvm -->
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-cucumber5-jvm</artifactId>
    <version>2.17.3</version>
</dependency>

<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-junit5 -->
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-junit5</artifactId>
    <version>${allure-junit5.version}</version>
    <scope>test</scope>
</dependency>
   </dependencies>

    <build>
        <testResources>
            <testResource>
                <directory>src/test/java</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${maven.compiler.version}</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                    <compilerArgument>-Werror</compilerArgument>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>${maven.surefire.version}</version>
                <executions>
                <execution>
                 <goals>
                 <goal>test</goal>
                 </goals>
                 </execution>
                </executions>
                <configuration>
                    <useSystemClassLoader>false</useSystemClassLoader>
                    <testFailureIgnore>true</testFailureIgnore>
                    <systemProperties>
                    <property>
                    <name>allure.results.directory</name>
                    <value> ${project.build.directory}/allure-results</value>
                    </property>
                    </systemProperties>
                </configuration>
            </plugin>
          </plugins>        
    </build>       
   </project> 

Отчеты My Allure в моем пайплайне jenkins:

allure([
          includeProperties: false, 
          jdk: '',
          properties:[],
          reportBuildPolicy:'ALWAYS', 
          results: [[path: '/allure-results']]
       ]
       )

Но мой файл json, созданный в моей папке allure-results, содержит только следующую запись:

{"uuid":"XXXXXXX-XXXXX-XXXXXX","historyId":"XXXXXXXXXXXXXXXXXX","testCaseId":"[engine:junit-jupiter]/[class:com.api.automation.TestParallelRunner]/[method:testParallel()]","testCaseName":"testParallel()","fullName":"com.api.automation.TestParallelRunner.testParallel","labels":[{"name":"junit.platform.uniqueid","value":"[engine:junit-jupiter]/[class:com.api.automation.TestParallelRunner]/[method:testParallel()]"},{"name":"host","value":"XXXXXX"},{"name":"thread","value":"XXXXXXX.main(1)"},{"name":"framework","value":"junit-platform"},{"name":"language","value":"java"},{"name":"package","value":"com.api.automation.TestParallelRunner"},{"name":"testClass","value":"com.api.automation.TestParallelRunner"},{"name":"testMethod","value":"testParallel"},{"name":"suite","value":"com.api.automation.TestParallelRunner"}],"links":[],"name":"testParallel()","status":"passed","stage":"finished","description":"","steps":[],"attachments":[],"parameters":[],"start":1652145767274,"stop":1652145775326}

Таким образом, не получая полной картины выполнения теста, как показывает отчет о огурце:

Allure Report с созданием отчета по каратэ 1.0.1 всего с одним тестовым примером

Не удалось выполнить цель org.apache.maven.plugins
Не удалось выполнить цель org.apache.maven.plugins
Опишу, что когда я только начинал изучать Maven, у меня не получалось компилировать и упаковывать.
Blibli Automation Journey - Как захватить сетевой трафик с помощью утилиты HAR в Selenium 4
Blibli Automation Journey - Как захватить сетевой трафик с помощью утилиты HAR в Selenium 4
Если вы являетесь веб-разработчиком или тестировщиком, вы можете быть знакомы с Selenium, популярным инструментом для автоматизации работы...
1
0
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Несколько моментов:

Спасибо за быстрый ответ Петр. Я попробую проверить, поможет ли обновление до 1.2.0. Также я испускаю JSON Cucumber в моем файле Runner. testRun.path("classpath:com/api/automation/Features").output‌​CucumberJson(true).t‌​ags("~@ignore"); Пожалуйста, дайте мне знать, если это не так?

darklord84 10.05.2022 06:40

@darklord84 выглядит правильно, но если вам все еще нужна поддержка, следуйте этому процессу: github.com/karatelabs/karate/wiki/Как отправить сообщение о проблеме

Peter Thomas 10.05.2022 07:08

Другие вопросы по теме