Karate是否支持Allure报告?求配置示例及Git演示地址
Karate 集成 Allure 报告配置及可运行示例
1. 依赖配置(Maven 项目)
在 pom.xml 中添加 Karate 核心依赖、Allure Karate 适配器及报告生成插件:
<dependencies> <!-- Karate JUnit5 依赖 --> <dependency> <groupId>com.intuit.karate</groupId> <artifactId>karate-junit5</artifactId> <version>1.4.1</version> <scope>test</scope> </dependency> <!-- Allure-Karate 适配依赖 --> <dependency> <groupId>io.qameta.allure</groupId> <artifactId>allure-karate</artifactId> <version>2.25.0</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <!-- Surefire 插件配置,用于织入 AspectJ --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.2.2</version> <configuration> <argLine> -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/1.9.20.1/aspectjweaver-1.9.20.1.jar" </argLine> </configuration> <dependencies> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.20.1</version> </dependency> </dependencies> </plugin> <!-- Allure 报告生成插件 --> <plugin> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.12.0</version> <configuration> <reportVersion>2.25.0</reportVersion> </configuration> </plugin> </plugins> </build>
2. 测试代码示例
特性文件(src/test/resources/features/demo.feature)
Feature: 示例接口测试场景 Scenario: 获取单个用户信息 Given url 'https://jsonplaceholder.typicode.com/users/1' When method GET Then status 200 And match response.id == 1 And match response.name == "Leanne Graham"
测试运行类(src/test/java/com/example/KarateAllureTest.java)
package com.example; import com.intuit.karate.junit5.Karate; class KarateAllureTest { @Karate.Test Karate runAllTests() { return Karate.run("classpath:features/demo.feature").relativeTo(getClass()); } }
3. 运行及生成报告
- 执行测试用例:
mvn clean test - 启动本地服务查看 Allure 报告:
mvn allure:serve - 生成静态报告文件(输出到
target/site/allure-maven-plugin):mvn allure:report
4. 完整项目结构
karate-allure-demo/ ├── src/ │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── example/ │ │ └── KarateAllureTest.java │ └── resources/ │ └── features/ │ └── demo.feature └── pom.xml
你可以将上述结构的代码初始化到 Git 仓库中,作为可复用的演示案例:
git init git add . git commit -m "Add Karate + Allure integration demo"
内容的提问来源于stack exchange,提问作者Ajij Shaikh
相关产品推荐
相关产品推荐

