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

如何基于Xray、Robot Framework(Python)与GitLab搭建测试自动化工作流?

基于Xray + Robot Framework + GitLab的自动化测试工作流搭建指南

一、环境基础准备

  • 安装Python 3.8+版本,确保pip命令可用
  • 安装Robot Framework及Xray集成依赖:
    pip install robotframework robotframework-xray requests
    
  • 在GitLab项目中注册Runner(推荐选docker executor做环境隔离),确保Runner有权限执行Python脚本和发起网络请求

二、GitLab项目初始化

  • 创建GitLab项目后,本地克隆仓库,建立如下目录结构:
    your-project/
    ├── tests/          # 存放Robot测试用例
    │   ├── sample_test.robot
    ├── .gitlab-ci.yml  # CI/CD流水线配置
    └── requirements.txt # 依赖清单(可选,方便批量安装)
    
  • 编写基础Robot测试用例示例(tests/sample_test.robot):
    *** Settings ***
    Documentation    示例UI测试套件
    Library          SeleniumLibrary  # 需UI测试时,额外安装robotframework-seleniumlibrary
    
    *** Test Cases ***
    验证示例页面标题
        [Tags]    XRAY-1001  # 关联Jira Xray中的测试用例ID
        Open Browser    https://example.com    chrome
        Title Should Be    Example Domain
        Close Browser
    

三、Xray与Jira配置

  • 在Jira中安装Xray测试管理插件,创建测试项目并启用Xray模块
  • 在Xray中创建测试用例(比如ID为XRAY-1001),将状态设为"准备执行"
  • 获取Xray API认证信息:在Jira个人设置中生成API Token,记录Jira用户名和Token,用于后续同步测试结果

四、GitLab CI/CD流水线配置

编写.gitlab-ci.yml,定义三个核心阶段:

stages:
  - install_deps
  - run_tests
  - sync_to_xray

install_deps:
  stage: install_deps
  script:
    - pip install -r requirements.txt  # 用requirements.txt批量安装依赖,无则直接写安装命令

run_tests:
  stage: run_tests
  script:
    - robot --outputdir results tests/  # 执行测试,结果输出到results目录
  artifacts:
    paths:
      - results/  # 保存测试结果,供后续同步阶段使用

sync_to_xray:
  stage: sync_to_xray
  script:
    # 用robotframework-xray工具上传测试结果到Xray
    - robot-xray upload --server https://your-jira-domain.atlassian.net --token $XRAY_TOKEN --project-key YOUR_PROJECT_KEY results/output.xml
  dependencies:
    - run_tests
  only:
    - main  # 仅在main分支提交时同步结果,可按需调整分支规则
  • 在GitLab项目的「设置 → CI/CD → 变量」中添加XRAY_TOKEN(值为Jira API Token)、YOUR_PROJECT_KEY(Jira项目密钥),设置为「受保护」和「掩码」避免泄露

五、执行与验证

  • 提交代码到GitLab仓库,自动触发流水线执行
  • 查看GitLab流水线日志,确认测试执行、结果同步步骤无报错
  • 进入Jira Xray模块,查看对应测试用例的执行状态、测试报告,验证结果已同步

实用技巧

  • 本地调试:先在本地执行robot tests/验证用例可正常运行,再推送到GitLab
  • 报告优化:在Robot命令中添加--report report.html --log log.html生成更友好的本地报告
  • 失败重试:在GitLab CI/CD中配置retry: 2实现失败用例自动重试
  • 并行执行:测试用例较多时,可通过GitLab Runner并行作业或Robot的--parallel参数(需额外插件)提升执行效率

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 07:35:21