linux

GitLab如何在Linux实现自动化测试

小樊
35
2025-10-29 07:23:05
栏目: 智能运维

1. 安装GitLab Runner
GitLab Runner是执行CI/CD任务的核心工具,需先在Linux系统上安装。以Ubuntu为例,可通过以下命令完成安装:

# 添加GitLab Runner官方仓库
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
# 安装GitLab Runner
sudo apt-get install gitlab-runner

安装完成后,需注册Runner到GitLab项目(需GitLab管理员权限):

sudo gitlab-runner register

注册时需提供:GitLab实例URL(如https://gitlab.com)、注册Token(从GitLab项目→Settings→CI/CD→Runners获取)、Runner描述(如“Linux Test Runner”)、标签(如linux,用于匹配项目中的标签规则)。

2. 创建.gitlab-ci.yml配置文件
在项目根目录下创建.gitlab-ci.yml文件,定义CI/CD流程的核心逻辑(阶段、作业、脚本)。以下是一个Java项目自动化测试的示例:

stages:
  - build  # 构建阶段
  - test   # 测试阶段

# 构建作业:编译项目并生成测试报告
build_job:
  stage: build
  script:
    - echo "Compiling the project..."
    - mvn clean install  # 使用Maven编译项目
  artifacts:
    paths:
      - target/*.jar     # 保存构建产物(JAR文件)
    expire_in: 1 hour    # 产物过期时间

# 测试作业:运行单元测试并上传JUnit报告
test_job:
  stage: test
  script:
    - echo "Running unit tests..."
    - mvn test           # 执行单元测试
  artifacts:
    reports:
      junit: target/surefire-reports/test-results.xml  # 上传JUnit测试报告(GitLab会自动解析)

该配置定义了两个阶段:build阶段编译项目并生成JAR产物,test阶段运行单元测试并上传测试报告。artifacts用于跨作业共享文件(如构建产物),reports用于解析测试结果。

3. 配置测试工具与框架
根据项目技术栈选择测试工具,并在.gitlab-ci.yml中配置。常见场景示例:

4. 触发与监控自动化测试
.gitlab-ci.yml文件提交到GitLab仓库并推送至远程分支(如main),GitLab会自动触发CI/CD管道:

git add .gitlab-ci.yml
git commit -m "Add GitLab CI/CD configuration for automated testing"
git push origin main

测试执行状态可在GitLab项目页面→CI/CDPipelines查看。点击具体管道可查看各作业(Job)的状态(通过/失败)、日志(详细执行过程)及测试报告(如JUnit、Playwright报告)。

5. 高级优化配置

0
看了该问题的人还看了