jenkins实现接口自动化持续集成(python+pytest+ Allure+git)

这篇具有很好参考价值的文章主要介绍了jenkins实现接口自动化持续集成(python+pytest+ Allure+git)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在用python做自动化测试时,我们写好代码,然后需要执行才能得到测试报告,这时我们可以通过 Jenkins 来进一步完成自动化工作。借助Jenkins,我们可以结合 Git/SVN 自动拉取代码,通过设置定时构建实现自动触发脚本执行,得到测试报告,最后还可以配置发送邮件等。今天我们就来分享下,如何结合 Git自动拉取代码,通过构建来自动执行python脚本输出测试报告。

实现步骤

Jenkins是开源的,使用Java编写的持续集成工具。需要安装JDK,如果已经安装了JDK可以跳过该步骤。

1、安装JDK

去官网下载JDK:https://www.oracle.com/java/technologies/javase-jdk15-downloads.html

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

将下载好的压缩包放在Linux上

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

然后解压Java到相应目录:

输入命令:tar -zxvf jdk-11.0.8_linux-x64_bin.tar.gz /home/java

如果提示没有tar命令,输入yum install -y tar,先安装tar

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

编辑环境变量,在/etc/profile文件中添加环境变量:

输入命令:vim /etc/profile

在文件最后添加内容如下,然后保存:

JAVA_HOME=/home/java/jdk-11.0.8
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export JRE_HOME
export PATH
export CLASSPATH

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

输入命令source /etc/profile,刷新环境变量配置文件使其立刻生效

到此,JDK已经安装完成。输入java -version查看是否安装成功,出现如下图即安装成功。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

PS:建议建一个Java的超链接。建立之后默认情况下从/usr/bin/java路径使用Java,yum安装的时候,这个链接会自动创建。

输入命令ln -s /home/java/jdk-11.0.8/bin/java /usr/bin/java

2、安装Jenkins

官网:https://www.jenkins.io/download/ 选择对应的操作系统或者使用yum方式安装,这里我使用的是yum,因为比较方便:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

yum的repos中默认是没有Jenkins的,所以我们需要先将Jenkins存储库添加到yum repos中。

点击官网中【CentOS/Fedora/Red Hat】系统,然后将命令复制粘贴到Linux系统中。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

之后就可以看到系统开始自动下载安装。若出现提示是否下载输入:y并按回车。耐心等待安装完成。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

启动Jenkins,命令:service jenkins start,出现ok表示Jenkins启动成功。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

在浏览器输入ip:8080进入Jenkins登录页面,输入密码。至此,Jenkins安装完成。

3、Job配置

新建一个自由风格的项目

进入工程配置页面,在源码管理下,选择Git:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

如果源码管理中没有Git,说明你没有安装Git插件。点击【Manage Jenkins】,选择【Manage Plugins】,选择【可选插件】,在【搜索框】中输入git plugin,下载该插件。

安装成功如图所示,然后重启【Jenkins】:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

构建执行shell,根据自己的脚本输入pytest命令。也就是说Jenkins将Git仓库代码下载之后,我们要怎么通过命令去执行脚本,这个根据自己执行脚本的情况填写即可,这里和我们手工执行脚本的操作是一致的,然后点击保存。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

点击【Build Now[立即构建]】,可以看到正在执行的构建Job

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

4、测试报告

当用例执行完成之后,我们想看用例执行的情况,而pytest不仅支持pytest-html插件,还可以使用allure生成更加美观的测试报告。Allure框架是一个灵活的轻量级多语言测试报告工具,它不仅以web的方式展示了简介的测试结果,而且允许参与开发过程的每个人从日常执行的测试中最大限度的提取有用信息。所以我们这里选择的是Allure框架。

从dev/qa的角度来看,Allure报告简化了常见缺陷的统计:失败的测试可以分为bug和被中断的测试,还可以配置日志、步骤、fixture、附件、计时、执行历史以及与TMS和BUG管理系统集成,所以,通过以上配置,所有负责的开发人员和测试人员可以尽可能的掌握测试信息。

从管理者的角度来看,Allure提供了一个清晰的“大图”,其中包括已覆盖的特性、缺陷聚集的位置、执行时间轴的外观以及许多其他方便的事情。allure的模块化和可扩展性保证了您总是能够对某些东西进行微调,使Allure更适合您,那么今天我们就来说说如何使报告更加详细的显示我们需要的信息,以及allure与jenkins的集成。

4.1、下载Allure插件与配置Allure

点击【Manage Jenkins】,选择【Manage Plugins】,选择【可选插件】,在【搜索框】中输入Allure,下载该插件。下载成功之后重启Jenkins。

进入全局工具配置【Global Tool Configuration】,下拉最后一项,会看到【Allure Commandline】项,按下图配置之后保存即可:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

进入配置,点击【构建后操作(Post-build Actions)】,选择Allure Report

Results:输入Path路径,这里的path路径表示在项目根目录下生成此文件夹,文件夹用来保存生成html报告之前所依赖的json,xml,txt等类型文件。

Report path:输入保存html报告路径。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

点击【Build Now[立即构建]】,执行结束之后可以看到生成的Allure报告

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

4.2、Allure报告展示

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

5、发送邮件

Jenkins默认提供了一个邮件通知E-mail Notification,但功能有很多的局限性,不够灵活。比如:无法定义邮件的格式、邮件通知无法提供详细的邮件内容。在这里我们使用Email Extension Plugin插件。该插件能够允许你自定义邮件发送的具体内容、邮件格式等。

5.1、下载Email插件与配置Email

点击【Manage Jenkins】,选择【Manage Plugins】,选择【可选插件】,在【搜索框】中输入Email Extension Plugin,下载该插件。下载成功之后重启Jenkins。

进入系统设置【System Configuration】,找到【Jenkins Location】,设置Jenkins URL与发件人的邮件地址

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

找到“Extended E-mail Notification”,设置以下内容:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

详细参数介绍:

Override Global Settings:如果不选,该插件将使用默认的E-mail Notification通知选项。反之,可以通过指定不同于的设置来进行覆盖。 
Default Content Type:指定构建后发送邮件内容的类型,有Text和HTML两种。 
Use List-ID Email Header:为所有的邮件设置一个List-ID的邮件信头。 
Add 'Precedence: bulk' Email Header:设置优先级。 
Default Recipients:自定义默认电子邮件收件人列表。 
Reply To List:回复列表。 
Emergency reroute:如果这个字段不为空,所有的电子邮件将被单独发送到该地址(或地址列表)。 
Excluded Committers:防止邮件被邮件系统认为是垃圾邮件,邮件列表应该没有扩展的账户名(如:@domain.com),并且使用逗号分隔。 
Default Subject:自定义邮件通知的默认主题名称。该选项能在邮件的主题字段中替换一些参数,这样就可以在构建中包含指定的输出信息。 
Maximum Attachment Size:邮件最大附件大小。 
Default Content:自定义邮件通知的默认内容主体。该选项能在邮件的内容中替换一些参数,这样就可以在构建中包含指定的输出信息。 
Default Pre-send Script:默认发送前执行的脚本。 
Enable Debug Mode:启用插件的调试模式。 
nable Security:启用时,会禁用发送脚本的能力,直接进入Jenkins实例。如果用户试图访问Jenkins管理对象实例,将抛出一个安全异常。 
Content Token Reference:邮件中可以使用的变量,所有的变量都是可选的。

进入配置,点击【构建后操作(Post-build Actions)】,找到【Extended E-mail Notification】,设置以下内容:

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

触发器参数说明

Failure:即时发送构建失败的邮件。如果”Still Failing”触发器已配置,而上一次构建的状态是”Failure”,那么”Still Failing”触发器将发送一封邮件来替代(它)。 
Unstable:即时发送构建不稳固的邮件。如果”Still Unstable”触发器已配置,而上一次构建的状态是”Unstable”,那么”Still Unstable”触发器将发送一封邮件来替代(它)。 
Still Failing:如果两次或两次以上连续构建的状态为”Failure”,发送该邮件。 
Success:如果构建的状态为”Successful”发送邮件。如果”Fixed”已配置,而上次构建的状态为“Failure”或“Unstable”,那么”Fixed”触发器将发送一封邮件来替代(它)。 
Fixed:当构建状态从“Failure”或“Unstable”变为”Successful”时发送邮件。 
Still Unstable:如果两次或两次以上连续构建的状态为” Unstable “,发送该邮件。 
Before Build:当构建开始时发送邮件。 

点击【Build Now[立即构建]】,执行结束之后。如果执行成功,将不会发送邮件给收件人;如果执行失败,将会发送一封邮件给收件人,邮件内容根据自己情况自定义。

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

5.2、邮件展示

jenkins实现接口自动化持续集成(python+pytest+ Allure+git),接口自动化测试,UI自动化测试,jenkins,自动化,ci/cd

总结

本文主要描述了通过Git自动拉取代码,然后Jenkins构建自动执行python脚本输出测试报告,如果执行失败,通过邮件自动将测试报告发送给收件人。 后期还有许多优化的地方,希望和大家一起来探讨。文章来源地址https://www.toymoban.com/news/detail-779351.html


到了这里,关于jenkins实现接口自动化持续集成(python+pytest+ Allure+git)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Jenkins结合gitlab自动化持续集成

    Jenkins结合gitlab自动化持续集成

    大家好,我是自动化测试老司机~ 最近在公司有负责搭建自动化测试环境,自动化脚本写好后,毋庸置疑是需要将自动化脚本进行持续集成测试,能够根据企业的定制化需求,通过Jenkins触发执行构建任务,定时执行自动化脚本等,今天就给大家介绍一下Jenkins结合gitlab进行自动

    2024年02月11日
    浏览(17)
  • Jenkins+Python自动化测试持续集成详细教程

    Jenkins+Python自动化测试持续集成详细教程

    ​ Jenkins是一个开源的软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。由于是基于java开发因此它也依赖java环境,安装之前需要先安装jdk,建议jdk1.8+,安装后配置java环境变量。安装

    2024年02月08日
    浏览(14)
  • Jenkins UI 自动化持续化集成测试

    Jenkins UI 自动化持续化集成测试

    在官网下载msi 直接安装即可 设置allure 路径 1、创建自由风格项目 2、如果项目在本地,且本地服务器是windows ,找到Jenkins安装根目录,寻找config.xml文件,如下位置: *在config.xml文件内,查找 workspaceDir ,将你的自定义 工作空间根目录 地址替换默认的地址 注释掉的是

    2024年02月07日
    浏览(8)
  • 【软件测试】- 将 Selenium 和 JMeter 测试脚本集成到 Jenkins 中实现自动化测试和持续集成(CI)及Jenkinsfile 实现 Jenkins Pipeline 原理介绍

    将 Selenium 和 JMeter 测试脚本集成到 Jenkins 中是实现自动化测试和持续集成(CI)的关键步骤。以下是详细的集成过程: 1、准备工作 安装 Jenkins : 确保您已经在服务器上安装了 Jenkins。 可以从 Jenkins 官网 下载并安装。 安装必要的插件 : 在 Jenkins 中安装所需的插件,如 Git 插

    2024年02月04日
    浏览(17)
  • Jmeter+Jenkins+Ant自动化持续集成环境搭建

    Jmeter+Jenkins+Ant自动化持续集成环境搭建

    1.JDK:jdk-8u121-windows-x64 2.jmeter工具:apache-jmeter-2.13 3.ANT工具:apache-ant-1.9.7-bin 4.jenkins工具:jenkins-2.32.2 双击JDK安装包,选择安装路径(本人是默认C盘路径,C:Program FilesJavajdk1.8.0_192) 1)系统变量→新建 JAVA_HOME 变量 。 变量值填写jdk的安装目录(本人是 C:Program FilesJavajdk1

    2024年02月16日
    浏览(14)
  • .NET Core部署到linux(CentOS)最全解决方案,入魔篇(使用Docker+Jenkins实现持续集成、自动化部署)

    .NET Core部署到linux(CentOS)最全解决方案,入魔篇(使用Docker+Jenkins实现持续集成、自动化部署)

    通过前面三篇: .NET Core部署到linux(CentOS)最全解决方案,常规篇 .NET Core部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx) .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus) 通过前面三篇文章的介绍,我们已经对.net core多方案部署到linux下有了非常全面的认识

    2024年02月02日
    浏览(29)
  • Jenkins+Python自动化测试持续集成详细教程(全网独家)

    Jenkins+Python自动化测试持续集成详细教程(全网独家)

    目录 一、前言 二、环境准备 三、创建Jenkins Job 四、编写Python自动化测试脚本 五、测试报告生成与展示 六、持续集成流程优化 七、实战演练 八、常见问题及解决方案 九、结论 Jenkins是目前最为流行的CI/CD工具之一,它可以支持多种语言和技术栈,如Java、Python、JavaScript等。

    2024年02月06日
    浏览(15)
  • 详细步骤记录:持续集成Jenkins自动化部署一个Maven项目

    详细步骤记录:持续集成Jenkins自动化部署一个Maven项目

    提示:本教程基于CentOS Linux 7系统下进行 1. 下载安装jdk11 官网下载地址:https://www.oracle.com/cn/java/technologies/javase/jdk11-archive-downloads.html 本文档教程选择的是jdk-11.0.20_linux-x64_bin.tar.gz 解压jdk-11.0.20_linux-x64_bin.tar.gz命令为: 2. 下载Jenkins的war包 官网下载地址:https://mirrors.tuna.tsing

    2024年02月04日
    浏览(37)
  • 持续集成下接口自动化测试实践

    持续集成下接口自动化测试实践

    目录 :导读 引言 接口自动化测试工具介绍 接口自动化测试在持续集成中的运用 小结 目前很多持续集成项目都需要执行接口层的测试,当你了解其基本概念,理解了接口协议、如何传参、测试原理后,无需 掌握程序语言,使用 行业 内成熟的接口测试 工具,就 可 以快速地

    2023年04月26日
    浏览(11)
  • docker+k8s+jenkins+harbor持续集成自动化部署

    docker+k8s+jenkins+harbor持续集成自动化部署

    另外一篇文章有讲docker的安装与相关配置,暂时就不讲了 1、关闭防火墙并修改主机名 2、永久禁用swap 用#注释掉swap一行(新版centos已经默认禁用) 3、配置镜像加速 到阿里云获取自己镜像加速地址 4、安装 docker-compose 官网找到下载地址 https://github.com/docker/compose/releases 版本地址

    2024年02月08日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包