pytest+allure+jenkins+python+git,实现Linux服务器看测试报告,并发送邮件通知
1、简介
pytest:一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。
allure:是开源测试报告框架。
jenkins:持续集成工具
python:测试脚本语言
git:开源的分布式版本控制系统
2、Windows端
我们需要开发测试代码,使用git上传到云端仓库
2.1安装Python
2.2安装相关库
pip install pytest
pip install allure-pytest
2.3使用pycharm开发测试代码
import allure
import pytest
@allure.epic("这是EPIC")
@allure.feature("这是FEATURE")
@allure.story("这是STORY")
class TestRun:
@allure.description("用例1的描述")
def test_normal_1(self):
print("OK1")
@allure.description("用例2的描述")
def test_normal_2(self):
print("OK2")
def test_normal_3(self):
print("OK3")
if __name__ == '__main__':
pytest.main(['--alluredir=test_report'])
2.4上传代码到gitee
下载安装git,建立gitee仓库,参考:https://www.cnblogs.com/luoshuai7394/p/17698139.html
pycharm配置git关联Gitee远程仓库,参考:https://www.cnblogs.com/luoshuai7394/p/17699961.html
3、Linux服务器端
我们需要安装Python以及相关库,安装和配置git,安装和配置jenkins
3.1安装Python
3.2安装相关库
3.3安装和配置git
参考:https://www.cnblogs.com/luoshuai7394/p/17698139.html
3.4安装和配置jenkins
参考:https://www.cnblogs.com/luoshuai7394/p/17341925.html
https://www.cnblogs.com/luoshuai7394/p/17696544.html
3.5配置jenkins任务
(1)安装allure插件
系统管理-->插件管理

安装插件Allure Jenkins Plugin

(2)配置allure插件
系统管理-->全局工具配置

自动安装版本,重启服务器生效

(3)创建任务
新建任务

(4)配置任务

配置代码仓库地址,源码管理

执行脚本命令,Build Steps,注意,这里必须要填写一个运行哪个文件的命令,即使你代码里有if __name__=="__main__",这里不填执行命令也是不会执行代码的
还需要注意,Linux服务其中是否有Python2版本,一般默认是有的,需要用python3命令,python命令会默认使用Python2版本

配置allure报告,构建后操作:
这里的Path,是任务跑完后allure生成的测试结果数据存放文件夹,会自动创建的
注意这个文件夹需要和代码里的一致,test_report


点击高级,配置allure报告存放地址,这个allure-report文件夹,就是html页面展示的地址,这里面的测试结果数据就是从上面test_report拿过来的

3.6构件任务,查看结果
点击“立即构建”

任务跑完后,查看测试结果



可以看控制台输出


3.7配置jenkins发送邮件
待补充
pytest+allure+jenkins+python+git,实现Linux服务器看测试报告,并发送邮件通知的更多相关文章
- Pytest单元测试框架——Pytest+Allure+Jenkins的应用
一.简介 pytest+allure+jenkins进行接口测试.生成测试报告.结合jenkins进行集成. pytest是python的一种单元测试框架,与python自带的unittest测试框架 ...
- pytest + allure + jenkins 生成漂亮的测试报告
pytest我在上一篇文章初始pytest中已有介绍,是一个很理想的Python测试框架.Allure是一款非常轻量级并且非常灵活的开源测试报告生成框架. 它支持绝大多数测试框架, 例如TestNG. ...
- Linux 服务器性能测试报告-sysbench命令实践
Linux 服务器性能测试报告 我们使用linux 工具sysbench 来测试linux服务器性能,目前在Centos上进行操作 Install sysbench yum -y install sy ...
- appium+pytest+allure+jenkins 如何实现多台手机连接
使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运 ...
- pytest使用笔记(三)——pytest+allure+jenkins配置使用
按照pytest使用笔记(二)把pytest+allure配置好后,现在在jenkins配置好,先实现手动构建(立个小目标) 一,安装jenkins插件 首页->系统管理->插件管理,从“ ...
- Python ssh连接Linux服务器报Incompatible ssh peer (no acceptable kex algorithm) 解决方法
python通过ssh连接linux服务器,部分服务器出现如下异常 03:50:48.725 FAIL ftp operation failed, Incompatible ssh peer (no ...
- 部署python项目到linux服务器
最近用Python写了个外挂,需要部署到Linux环境的服务器上,由于之前本地开发时使用virtualenv,使用这个虚拟环境有个好处是项目中依赖的库不会是全局的,只在当前项目的目录下有效,因为我是M ...
- python(pytest)+allure+jenkins 实现接口自动化的思路
效果图镇楼: 上述各模块作用: python(pytest): 1:用于读测试用例(本次用例写在csv文件中) 2:环境配置相关 3:提取1中的测试数据,组成请求体 4:发送请求 5:获取结果 6:断 ...
- pytest系列(四)- pytest+allure+jenkins - 持续集成平台生成allure报告
pytest是什么 pytest是python的一款测试框架,拥有unittest的功能并比它更丰富. allure是什么 有非常多的优秀的测试框架,但却是有非常少优秀的报告工具可以展示非常清楚的用例 ...
- 利用python制作在Linux服务器后台定时运行的任务-邮件提醒
1. 自动任务的功能为: 定时扫描数据库中的记录,然后发邮件 代码如下 scheduleMail.py import pymysql import smtplib from email.mime.te ...
随机推荐
- Particles
Smiling & Weeping ----我本想边走边爱,可你一个人就挡住了人山人海 牢骚:其实想明白了也就这么一回事,当时一直想dp,(# ̄- ̄#) 正解:其实题目说的明明白白,任选一个数 ...
- Unity 游戏开发、01 基础篇 | 阿发入门篇全课程学习笔记
Unity Documentation .全课程视频 .第15,24章视频 afanihao Unity入门,全课程内容个人学习笔记,简单部分一笔带过,重点内容带 2.3 窗口布局 Unity默认窗口 ...
- 「codeforces - 687D」Dividing Kingdom II
link. 好题啊. 首先有一个类 kruskal 暴力,就是对于每一个询问,把所有边按权值大小排降序,第一个加进去成为奇环的边就是答案.注意我们不需要关注偶环长成什么样子,所以我们实际上维护的是一棵 ...
- Solution -「HNOI 2016」最小公倍数(lacks of code)
Description Link. 给出一个带权无向图,边权为 \(2^{a}\cdot3^{b}\) 形式. 给出 \(q\) 组形如 \(u,v,a,b\) 的询问,问 \(u,v\) 中是否存在 ...
- MySQL实战实战系列 04 深入浅出索引(下)
在上一篇文章中,我和你介绍了 InnoDB 索引的数据结构模型,今天我们再继续聊聊跟 MySQL 索引有关的概念. 在开始这篇文章之前,我们先来看一下这个问题: 在下面这个表 T 中,如果我执行 se ...
- 10.4 认识Capstone反汇编引擎
Capstone 是一款开源的反汇编框架,目前该引擎支持的CPU架构包括x86.x64.ARM.MIPS.POWERPC.SPARC等,Capstone 的特点是快速.轻量级.易于使用,它可以良好地处 ...
- linux的认知与基本命令
一.linux的了解 1. 什么是Linux? a,Linux是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布.它主要受到Mi ...
- C#学习笔记---异常捕获和变量
异常捕获 使用异常捕获可以捕获出现异常的代码块,防止因为异常抛出造成的程序卡死的情况发生. try{}catch{}finally{}结构 //异常捕获 try { string str=Consol ...
- 【XXE漏洞】原理及实践演示
一.原理 XML是用于传输和存储数据的一种格式,相当于一种信息传输工具,其中包含了XML声明,DTD文档类型定义.文档元素. XXE是xml外部实体注入漏洞,发生在应用程序解析XML输入时,没有禁止外 ...
- Hyper-V 下的 Debian 双网卡配置
Debian 双网卡配置 因为 Hyper-v 不能在 Hyper-v Manger 里设置网卡的静态 IP, 而每次开机自启之后又要连接 Debian 虚拟机,所以使用了双网卡. 双网卡分为内网网卡 ...