Pytest+requests进行接口自动化测试6.0(Jenkins)

Jenkins部署

前置准备:

本地安装Git

Git安装教程地址

一、版本控制

在GitLab上上传编写好的pytest自动化测试脚本

将pytest自动化测试脚本纳入版本控制系统中,也就是常见的git中。一般公司内部都有自己的git系统,如果没有则可以传到码云上(需要注册Gitee账号)

  • 举例:将代码上传到公司内部的gitlab代码仓库系统,打开gitlab系统,如下步骤所示:

1)新建一个项目


2)创建空白项目

3)添加项目名称、设置项目可见性级别


4)点击项目,进入项目详细页面

5)复制克隆地址

6)打开Git窗口

在电脑盘中找一个盘的根目录下,右键点击gitbash here打开git窗口(前提是电脑已经安装Git软件)

7)执行第5步复制的克隆地址,执行:git clone 克隆地址

git clone https://gitlab.inetvine.com/xxxxx/aaaa.git

第一次链接会跳出账号密码输入框,记得输入

8)将你本地的代码上传到gitlab仓库

将想要上传的代码放到克隆到的带有.git 的文件夹下

打开git窗口,执行 ls -la 验证Autopractice文件夹是否在其中:

python 复制代码
 ls -la 

git add . 将本地代码文件提交到暂存区。

python 复制代码
git add .

9)将暂存区的文件提交到master分支上

在执行:git commit -m "说明/描述",将暂存区的文件提交到master分支上

python 复制代码
git commit -m "说明/描述"

10)将分支上的数据推送到远程仓库中去

python 复制代码
git push origin master

11)查看GitLab

到这步,我们就已经把代码放到git仓库系统中去了,可以去gitlab下查看


12)更新推送代码

进入项目根目录下的 Git Bash Here

python 复制代码
git add .

git commit -m "说明/描述"

git push origin master

二、Jenkins部署

1)手动安装jenkins插件

首先jenkins的插件是必备的,有些插件需要自己手动安装,位置:系统管理 - > 插件管理





2)新建任务,构建一个自由风格的软件项目

3)项目描述,可填可不填

填完后点击源码管理处的 Git

4)配置源码管理

将gitlab上的项目地址复制到Repository URL 再次进入到gitlab系统,复制gitlab的项目地址

复制好 gitlab 项目地址,粘贴到 Git 处,若报错显示无法连接到仓库,需对Jenkins进行配置

该错误为认证错误,需要设置你的gitlab系统的登录用户和密码

源码管理,选择刚刚添加的账密

选择账密后(如下图所示),这里不报错说明jenkins已经能够访问到gitlab的源码了。

源码库浏览器配置,如下(按公司项目选择)


5)构建触发器,如设置定时构建

具体构建时间的意思设置及含义可参考:https://app.yinxiang.com/fx/c26b7017-c493-4a39-91d7-d04fa47ca04e

该图为每5分钟构建一次

6)构建环境配置

7)构建配置,增加构建步骤---执行shell


输入如下命令:

python 复制代码
#!/bin/bash  (shell脚本解释并执行)
python3 -V   (打印python的版本号)
pip3 -V      (打印pip版本号)
pip3 install -r requirements.txt (表示安装项目的依赖模块)
cd pythonProject   (项目根目录名)
python3 run.py     (运行主函数)

重点:requirements.txt 文件来源

示例:完整流程(推荐做法)

python 复制代码
# 1. 创建虚拟环境
python -m venv venv

# 2. 激活环境
venv\Scripts\activate       # Windows
source venv/bin/activate    # Mac/Linux

# 3. 安装依赖
pip install django requests pandas

# 4. 生成 requirements.txt
pip freeze > requirements.txt

整体流程执行完后,项目根目录下会生成一个 requirements.txt 文件

8)构建后操作配置,增加allurereport报告配置(发邮件)

  • Allure Report配置

  • Publish JUnit test result report配置

  • 上面这个results.xml文件需要在脚本中设置,如下

这里生成的路径一定要跟上面配置的那个路径一致。

  • Editable Email Notification配置,这个是jenkins在测试完成之后发自动给你发邮件


到这一步已经把项目的主要配置已经设置好了,但是你发送邮箱需要在全局中设置一下

9)安装Email Extension Plugin插件(全局邮箱模版配置)

进入系统管理

点击进入系统配置,找到Email Extension Plugin

如果jenkins没有的话需要安装,安装完成之后去设置这个插件的内容,位置:系统管理 - > 系统配置 - > 往下翻找到这个插件

邮件内容的设置内容可参考模版:https://app.yinxiang.com/fx/b79b45ef-96cf-47fe-8501-9d58d1cfc480

最终达到的收件效果

三、配置完成

到这,全部的jenkins项目配置基本完成,可以点击立即构建测试一下


可以看到这个已经根据我们刚刚设置的定时任务了,每5分钟构建一次,但是这里构建失败,需要查找下原因。

错误解决:

错误1:

原因:源码管理的giturl地址不正确

解决办法:复制gitlab上项目的HTTP克隆地址即可

错误2:

原因:jenkins上的模块没有安装chardet模块,如果报的是这种错误,那就说明你的环境基本没啥大问题了,只要把这些模块安装好就可以。

相关推荐
在未来等你3 小时前
Elasticsearch面试精讲 Day 20:集群监控与性能评估
大数据·分布式·elasticsearch·搜索引擎·面试
人间凡尔赛6 小时前
elasticsearch安装插件
大数据·elasticsearch·搜索引擎
TanYYF11 小时前
Elasticsearch 7.15索引模板介绍
大数据·elasticsearch
INFINI Labs12 小时前
Easysearch 国产替代 Elasticsearch:8 大核心问题解读
大数据·elasticsearch·搜索引擎·jenkins·easysearch
Elastic 中国社区官方博客13 小时前
使用 Elasticsearch 构建 AI Agentic 工作流
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
Elasticsearch14 小时前
你的第一个 Elastic Agent:从单个查询到 AI 驱动的聊天
elasticsearch
wodongx12314 小时前
从零开始部署Android环境的Jenkins CI/CD流水线(docker环境,Win系统)
android·docker·jenkins
oLingXi1214 小时前
Unity开发CI/CD工具Jenkins的安装(Windows10)
运维·unity·ci/cd·jenkins
ThreeAu.1 天前
Jenkins+Tomcat持续集成教程
ci/cd·tomcat·jenkins