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 ...
随机推荐
- MySQL 表分区使用实践
在使用 MySQL 8.0 表分区时,需要注意以下一些关键事项和最佳实践: 支持的存储引擎: MySQL 8.0 表分区仅支持一些特定的存储引擎,如 InnoDB 和 NDB(NDB 是 MySQL ...
- 编译nw-node版本的插件
编译nw-node版本的插件 下载nwjs对应版本的nodejs 原始源码目录 yh@yh:~/addon$ tree . ├── addon.cc ├── binding.gyp ├── CppLi ...
- 我封装的一个REPR轮子 Biwen.QuickApi
Biwen.QuickApi 项目介绍 [QuickApi("hello/world")] public class MyApi : BaseQuickApi<Req,Rsp ...
- Docker V24 及 Docker Compose V2 的安装及使用
前言 Docker 是一款流行的开源容器化平台,使用 Docker 可以有效地隔离应用程序和系统环境,使得应用程序在不同的环境中具有相同的行为 Docker Compose 是一个用于定义和管理多个 ...
- C++ typedef用法详解
typedef的语法描述 在现实生活中,信息的概念可能是长度,数量和面积等.在C语言中,信息被抽象为int.float和 double等基本数据类型.从基本数据类型名称上,不能够看出其所代表的物理 ...
- .NET周刊【10月第1期 2023-10-01】
国内文章 .NET应用如何防止被反编译 https://www.cnblogs.com/Can-daydayup/p/17736700.html 本文主要讲述了如何防止.NET应用被反编译.虽然无法完 ...
- OpenTiny Vue 支持 Vue2.7 啦!
你好,我是 Kagol. 前言 上个月发布了一篇 Vue2 升级 Vue3 的文章. 少年,该升级 Vue3 了! 里面提到使用了 ElementUI 的 Vue2 项目,可以通过 TinyVue 和 ...
- Windows系统下,GoLand的Terminal选定Git Bash作为终端,使用其上传代码时,出现中文乱码的问题
问题描述 按照这位博主博客写的没有完全解决乱码问题博主博客 这个博主博客是我后来发现,暂时还没去验证是否可行博主博客 解决方案 notepad++直接Free Download,然后就一直下一步就无脑 ...
- 高性能队列——Disruptor(转)
https://tech.meituan.com/disruptor.html 背景 Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题(在性能测试中 ...
- 火山引擎 DataLeap 计算治理自动化解决方案实践和思考
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 [导读]本文旨在探讨火山引擎 DataLeap 在处理计算治理过程中所面临的问题及其解决方案,并展示这些解决方案带 ...