python自动化用例+gitLab持续集成搭建指导
gitLab持续集成搭建 ,python自动化用例
·
背景
现公司通过python完成了接口/UI自动化用例的编写,且将代码放在gitLab上,为了方便测试或开发人员在gitLab上直接触发接口/UI自动化用例,现进行python自动化用例在gitLab上的CI搭建。
前置条件
自动化代码放在gitLab上,
接口/UI自动化用例已完成,且可以执行。
自动化用例执行文件的配置
创建一个用例执行文件,大致内容如下:
文件主要包括两部分:
- 执行指定用例并生成报告:可以执行部分的用例。
- 报告发送邮件:可配置邮件的接收者。该部分可省略。
PS:具体内容可以自行编写
配置CI执行机器
- 下载gitlab和gitlab-runner windows版本
- 安装gitlab-runner
- 注册gitlab-runner
查看token及url方式如下图:
在Windows下注册Runner:
- 运行以下命令:
./gitlab-runner.exe register
- 输入您的GitLab URL(也称为gitlab-ci coordinator URL)。
- 输入您获得的token 以注册runner。
- 输入runner的描述。您可以稍后在GitLab的用户界面中更改此值。
- 输入与Runner的标签,以逗号分隔。您稍后可以在GitLab的用户界面中更改此值。
- 提供runner executor。对于大多数用例,请输入 docker。
配置CI
在gitlab-ci.yml文件中配置相关信息
关键字介绍
简易示例:
stages:
- test
before_script:
- echo "CI test..."
test_job:
stage: test
when: manual
tags:
- autoTest
script:
- echo "Tests run..."
- cd C:\work\workspace\wl-wms_uitest
- git pull
- python RunTestCase.py
- git add ./Report/AutoReport.html
- git commit -m "自动化用例测试报告提交"
- git push
after_script:
- echo "CI test..."
查看报告
手动或自动触发后可以在邮件或gitLab的对应文件夹下查看报告。
多组用例的支持
- 多个job 多组用例
.gitLab-ci.yml文件中配置多个项目,每一个job对应一个组的用例,根据各自项目需要选择是否上传测试报告
简单示例:
stages: - test before_script: - echo "CI test..." test:gangxin: stage: test when: manual tags: - autoTest script: - echo "Tests run..." - cd C:\work\workspace\bdfint_apitest - git pull - cd C:\work\workspace\bdfint_apitest\execute_test\transaction - python C:\work\workspace\bdfint_apitest\execute_test\transaction\gangxin_execute.py test:logistics: stage: test when: manual tags: - autoTest script: - echo "Tests run..." - cd C:\work\workspace\wl-wms_uitest - git pull - python RunTestCase.py - git add ./Report/AutoReport.html - git commit -m "物流自动化用例测试报告提交" - git push after_script: - echo "CI test..."
Pipelines中选择对应的job执行
PS:同一个runner可以并行执行多个job(job的stage必须相同)是一般支持的job数不多,现为4个
2.各组的自动化用例的执行文件需要自定义,且为了保证报告的上传,需要报告根据组名不同而自定义,执行文件和报告均不能使用同一个。
定时任务
创建Schedules
Interval Pattern可设置定时任务的执行规则。
更多推荐
已为社区贡献1条内容
所有评论(0)