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

求.gitlab-ci.yml中运行Karate UI自动化脚本的Maven配置命令与步骤

GitLab CI/CD 运行 Karate UI 自动化脚本(Maven 环境)

完整 .gitlab-ci.yml 配置

stages:
  - test

karate-ui-automation:
  stage: test
  # 使用包含Maven和OpenJDK的基础镜像
  image: maven:3.8.6-openjdk-11-slim
  # 缓存Maven仓库,加速后续构建
  cache:
    paths:
      - ~/.m2/repository/
  before_script:
    # 安装Chrome浏览器、驱动及依赖(适配无界面CI环境)
    - apt-get update && apt-get install -y --no-install-recommends wget unzip chromium chromium-driver
    # 配置Karate使用headless Chrome,规避无界面运行限制
    - export CHROME_BIN=/usr/bin/chromium
    - export KARATE_CHROME_ARGS="--headless --no-sandbox --disable-dev-shm-usage"
  script:
    # 运行Karate UI测试:可通过-Dtest指定测试类,或-Dkarate.options指定标签/特性文件
    # 示例1:指定测试类
    - mvn test -Dtest=KarateUiTestSuite
    # 示例2:仅运行标记@ui的测试用例
    # - mvn test -Dkarate.options="--tags @ui"
  artifacts:
    # 无论测试成功/失败,都保留测试报告
    when: always
    paths:
      - target/surefire-reports/
    # 报告保留7天,可按需调整
    expire_in: 7d

关键配置说明

  • 镜像选择:选用官方Maven+OpenJDK镜像,确保构建环境一致性;若需其他JDK版本,可替换镜像标签(如maven:3.9.0-openjdk-17-slim)。
  • 浏览器安装:CI环境默认无图形界面,需安装headless浏览器;上述配置用Chromium,若偏好Firefox,可替换before_script中的安装命令为:
    apt-get install -y --no-install-recommends firefox-esr geckodriver
    export FIREFOX_BIN=/usr/bin/firefox-esr
    export KARATE_FIREFOX_ARGS="--headless --no-sandbox"
    
  • 测试执行命令:
    • -Dtest=xxx:指定要运行的测试类(需对应Java测试类名);
    • -Dkarate.options="--tags @xxx":仅运行带有指定标签的Karate特性文件,灵活控制测试范围。
  • 产物保存:将Surefire测试报告作为流水线产物保留,方便排查失败用例,可根据需求调整保留时长。

前置要求

  1. 项目的pom.xml已正确引入Karate UI依赖,示例依赖配置:
    <dependency>
        <groupId>com.intuit.karate</groupId>
        <artifactId>karate-core</artifactId>
        <version>1.4.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.intuit.karate</groupId>
        <artifactId>karate-chrome</artifactId>
        <version>1.4.1</version>
        <scope>test</scope>
    </dependency>
    
  2. GitLab Runner需支持Docker执行(或已预装浏览器的Shell Runner),确保流水线能正常拉取镜像或运行浏览器命令。

内容的提问来源于stack exchange,提问作者KK12

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 16:42:59