Allure 是否支持 Cucumber JVM 6.0.0?
Does Allure support Cucumber JVM 6.0.0?
我有一个使用 Java 8 和 Cucumber 6.0.0 的项目。我尝试遵循 https://docs.qameta.io/allure/#_cucumber_jvm,但是没有 io.qameta.allure:allure-cucumber6-jvm
JAR 可用。 io.qameta.allure:allure-cucumber????-jvm
的早期版本不适用于 Cucumber 6.0.0。
有没有办法将 Allure 与 Cucumber 6.0.0 集成?
根据我的研究和知识,Allure 对每个版本的黄瓜都有不同的依赖关系,如 allure-cucumber2-jvm、allure-cucumber3-jvm、allure-cucumber4-jvm、allure-cucumber5-jvm。
到目前为止,您不会看到任何对 cucumber6 的依赖。但你很快就会得到它。黄瓜6
发布才3个月
是的,在 pom.xml 下载以下 allure 依赖项:
<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-cucumber6-jvm -->
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-cucumber6-jvm</artifactId>
<version>2.13.6</version>
</dependency>
</dependencies>
然后在 surefire 插件配置中使用它:
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>${project.build.directory}/allure-results</value>
</property>
<property>
<name>allure.link.issue.pattern</name>
<value>https://example.org/issue/{}</value>
</property>
<property>
<name>allure.link.tms.pattern</name>
<value>https://example.org/tms/{}</value>
</property>
</systemProperties>
<testFailureIgnore>true</testFailureIgnore>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
-Dcucumber.plugin="io.qameta.allure.cucumber6jvm.AllureCucumber6Jvm"
</argLine>
</configuration>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
您还需要更新 aspectj 依赖项并将其定义为 属性。
今天试过了,效果很好。
我有一个使用 Java 8 和 Cucumber 6.0.0 的项目。我尝试遵循 https://docs.qameta.io/allure/#_cucumber_jvm,但是没有 io.qameta.allure:allure-cucumber6-jvm
JAR 可用。 io.qameta.allure:allure-cucumber????-jvm
的早期版本不适用于 Cucumber 6.0.0。
有没有办法将 Allure 与 Cucumber 6.0.0 集成?
根据我的研究和知识,Allure 对每个版本的黄瓜都有不同的依赖关系,如 allure-cucumber2-jvm、allure-cucumber3-jvm、allure-cucumber4-jvm、allure-cucumber5-jvm。
到目前为止,您不会看到任何对 cucumber6 的依赖。但你很快就会得到它。黄瓜6
发布才3个月是的,在 pom.xml 下载以下 allure 依赖项:
<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-cucumber6-jvm -->
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-cucumber6-jvm</artifactId>
<version>2.13.6</version>
</dependency>
</dependencies>
然后在 surefire 插件配置中使用它:
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>${project.build.directory}/allure-results</value>
</property>
<property>
<name>allure.link.issue.pattern</name>
<value>https://example.org/issue/{}</value>
</property>
<property>
<name>allure.link.tms.pattern</name>
<value>https://example.org/tms/{}</value>
</property>
</systemProperties>
<testFailureIgnore>true</testFailureIgnore>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
-Dcucumber.plugin="io.qameta.allure.cucumber6jvm.AllureCucumber6Jvm"
</argLine>
</configuration>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
您还需要更新 aspectj 依赖项并将其定义为 属性。 今天试过了,效果很好。