You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 12:55:23