当前位置: 首页 > news >正文

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

Jenkins部署

  • 前置准备:
    • 本地安装Git
  • 一、版本控制
    • 在GitLab上上传编写好的pytest自动化测试脚本
    • 1)新建一个项目
    • 2)创建空白项目
    • 3)添加项目名称、设置项目可见性级别
    • 4)点击项目,进入项目详细页面
    • 5)复制克隆地址
    • 6)打开Git窗口
    • 7)执行第5步复制的克隆地址,执行:git clone 克隆地址
    • 8)将你本地的代码上传到gitlab仓库
    • 9)将暂存区的文件提交到master分支上
    • 10)将分支上的数据推送到远程仓库中去
    • 11)查看GitLab
    • 12)更新推送代码
  • 二、Jenkins部署
    • 1)手动安装jenkins插件
    • 2)新建任务,构建一个自由风格的软件项目
    • 3)项目描述,可填可不填
    • 4)配置源码管理
    • 5)构建触发器,如设置定时构建
    • 6)构建环境配置
    • 7)构建配置,增加构建步骤—执行shell
      • 重点:requirements.txt 文件来源
    • 8)构建后操作配置,增加allurereport报告配置(发邮件)
    • 9)安装Email Extension Plugin插件(全局邮箱模版配置)
  • 三、配置完成
    • 错误解决:

前置准备:

本地安装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文件夹是否在其中:

 ls -la 

在这里插入图片描述

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

git add .

在这里插入图片描述

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

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

git commit -m "说明/描述"

在这里插入图片描述

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

git push origin master

在这里插入图片描述

11)查看GitLab

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

在这里插入图片描述
在这里插入图片描述

12)更新推送代码

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

在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

输入如下命令:

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

重点:requirements.txt 文件来源

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

# 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模块,如果报的是这种错误,那就说明你的环境基本没啥大问题了,只要把这些模块安装好就可以。

在这里插入图片描述

http://www.dtcms.com/a/406521.html

相关文章:

  • elasticsearch安装插件
  • html5移动网站开发html5新增标签
  • 前端工程化基础知识
  • 【C#】以 BlockingCollection 为核心的多相机 YOLO 检测任务处理框架
  • (11)ASP.NET Core2.2 中的配置一(Configuration)
  • 在 C# .NETCore 中使用 MongoDB(第 1 部分):驱动程序基础知识和插入文档
  • php做图片交互网站代码网站下要加个备案号 怎么做
  • 巴中商城网站建设wordpress 图书主题
  • 一键预约上门服务:到家洗车小程序的便捷功能与场景化体验
  • 第 3 篇:让图形动起来 - WebGL 2D 变换
  • 寝室快修|基于SprinBoot+vue的贵工程寝室快修小程序(源码+数据库+文档)
  • 青秀网站建设网站海外推广平台
  • 前端基础:从0到1实现简单网页效果(二)
  • 基于LazyLLM搭建AI创意文案生成器(多场景文案自动生成)
  • 数据链路层:网络通信的基础与桥梁
  • Keepalived两个集群实验
  • vs网站开发表格大小设置网站建设要注意一些什么
  • js网站模板下载做网站和app哪个难
  • MySQL多实例管理
  • 用dpdk实现udp、tcp数据包收发,tcp协议栈相关原理
  • 3D气象数据可视化:使用前端框架实现动态天气展示
  • 学习日记19:GRAPH-BERT
  • shell编程:sed - 流编辑器(5)
  • 网站制作地点中山网站建设公司哪家好
  • 关于【机器人小脑】的快速入门介绍
  • 无线收发模块保障砂芯库桁架机器人稳定无线通信实践
  • 北京有哪些网站建设国家企业信用信息系统(全国)
  • LabVIEW 动态信号分析
  • 腾讯云容器服务
  • 怎么做网站推广电话广西网站建设哪家有