(一)pytest自动化测试框架之生成测试报告(mac系统)

前言

我们可以通过pytest-html插件来生成测试报告,但是pytest-html插件生成的测试报告不够美观,逼格也不够高,通过allure生成的测试报告是比较美观的,花里胡哨的,能够提升一个level。

allure官网: Allure Report Docs — Documentation Overview

allure命令行工具安装

按照官方文档上的提示来进行allure命令行工具的安装:

1、首先下载allure-commandline最新的zip文件包:Central Repository: io/qameta/allure/allure-commandline

2、然后将zip包解压到目录中

image

3、进入到bin目录

image

注意:

window下使用allure.bat 或 Linux下使用allure需要将allure添加到环境变量中。

4、命令行下输入: allure --version ,出现以下提示表示allure安装成功

image

按照上面的步骤安装好allure-commandline工具。

注意下载zip包的链接在官网中是http协议的,点击会报错,我们将协议改成http改成https访问链接就可以了。

allure添加到环境变量中

1、进入到当前用户目录下,执行:open .bash_profile,打开一个记事本。

image

2、编辑记事本,在文件最后输入:

PATH="/usr/local/allure-2.9.0/bin:$PATH"
export PATH

image

3、command+s 保存

4、然后命令行中输入:source .bash_profile,使配置立即生效;

5、任意目录下,命令行中输入allure,出现以下提示表示环境变量配置成功;

image

注意:执行allure命令时,需要jdk的支持,因此使用allure的前提是系统中安装了jdk并且配置了环境变量

下载安装allure-pytest插件

命令行下输入命令进行安装:

pip install -U allure-pytest

上面的命令执行后会安装 allure-pytest 和 allure-python-commons 包,这两个包用来生成allure所需要的测试报告数据。

allure实际应用举例

# file_name: test_allure.pyimport pytest
import allure@pytest.fixture(scope="function")
def login():print("执行登录逻辑")yieldprint("执行退出登录逻辑")@allure.feature("加入购物车")
def test_01(login):"""先登录,再进行其他操作:param login::return:"""print("测试用例01正在执行")@allure.feature("加入购物车")
def test_02():"""不需要登录,直接操作:return:"""print("测试用例02正在执行")if __name__ == '__main__':pytest.main(['-s', 'test_allure.py'])

运行用例,进入到test_allure.py所在目录,执行命令:

pytest --alluredir=./report/result    # --alluredir表示指定测试报告数据的生成路径

执行完成上述命令后,会在当前目录下,report目录下生成一个result目录文件;

result下只是一些测试报告的原始数据,还不能作为html报告打开。

image

在线查看测试报告还需要执行下面的命令:

allure serve ./report/result

上面的命令会启动一个allure服务并自动分配端口,然后使用默认浏览器自动打开index.html,查看测试报告:

image

查看测试报告:

image

至此,我们就可以使用pytest结合allure生成更加美观的测试报告了。

Python接口自动化测试零基础入门到精通(2023最新版)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/155394.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JVM】JVM异常不打印堆栈信息 [ -XX:-OmitStackTraceInFastThrow ]

文章目录 一、背景二、原因三、 代码验证 一、背景 生产环境日志突然膨胀到100G, 为了定位问题,所以截取了部分报错日志, 问题是 堆栈信息呢? 哪里报的NPE在哪??? 信息如下: [ERROR] 2020-12-09 09:41:50.053 - [taskAppIdTASK-1919-33805-97659]:[156] - wait task qu…

布尔类型的转换

1.图示 2.说明 空数组[]和空对象{}都是Object类型,因此直接用于if判断条件时都会被转化为true。任意值与布尔值比较,都会将两边的值转化为Number。如果将空数组[ ]与布尔值false比较,false转化为0,而空数组[ ]转化为0&#xff0c…

【算法之路】高精度算法(实现加减乘除)

目录 一、高精度概念 二、高精度算法的实现 1、高精度加法(大整数相加) 2、高精度减法(大整数减法) 3、高精度乘法(大整数*小整数) 4、高精度除法(大整数/小整数) 一、高精度概…

定时器的简单使用和实现

定时器 什么是定时器标准库中的定时器使用 定时器的实现 什么是定时器 定时器也是软件开发中的一个重要组件. 类似于一个 “闹钟”. 达到一个设定的时间之后, 就执行某个指定好的代码. 标准库中的定时器 标准库中提供了一个Timer类, java.util.Timer 使用 Timer 类的核心方…

Java GUI实现桌球小游戏

桌球游戏是一种室内运动,通常在一个正式的桌球台上进行。这种游戏也被称为台球或母球。桌球游戏的目标是使用一个击球杆将彩球击入桌面四个角落的袋子中,得分最高的一方获胜。桌球游戏需要一定的技巧和策略,因此是一项受欢迎的竞技运动和休闲…

pytest与unittest对比

1.unittest测试文件以test开头,测试方法以test开头;pytest测试文件以test开头,测试类以Test开头,方法以test开头 2.unittest执行,需要使用unittest类提供的discover方法,收集测试套件,然后通过b…

生成对抗网络Generative Adversarial Network,GAN

Basic Idea of GAN Generation(生成器)  Generation是一个neural network,它的输入是一个vector,它的输出是一个更高维的vector,以图片生成为例,输出就是一张图片,其中每个维度的值代表生…

前端环境变量释义

视频教程 彻底搞懂前端环境变量使用和原理,超清楚_哔哩哔哩_bilibili 添加命令行参数 --modexxxxx 新建.env.xxxx文件,其中.env文件会在所有环境下生效 以VITE_开头,字符串无需加双引号 使用import.meta.env.VITE_xxxxx进行调用

React中封装echarts图表组件以及自适应窗口变化

文章目录 前言环境代码接口使用效果后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:react.js 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误,…

很多人都在用的现货白银突破交易法 缺点需要注意

突破交易是现货白银投资者常用的交易技巧。通常做突破交易有两种方法,一种是突破发生的时候马上入场,另一种是在突破确认后等待回调然后再入场。目前,投资者较多的是使用后者。用突破——回踩入场有什么优缺点呢?下面我们就来讨论…

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-如何使用P-Tuning本地化训练ChatGLM2等LLM模型? 文章目录 GPT实战系列-如何使用P-Tuning本地化训练ChatGLM2等LLM模型?P-Tuning微调训练概述1、预训练模型或者是torch模型2、训练器的超参数3、数据预处理工具4、加载数据5、分词处理6、数据预…

Java(四)(多态,final,常量,抽象类,接口)

目录 多态 基本概念: 使用多态的好处 类型转换 遇到的问题 解决方法 强制类型转换的一个注意事项 final 常量 抽象类 啥是个抽象类? 抽象类的注意事项,特点 抽象类的场景和好处 抽象类的常见应用场景: 模板方法设计模式 接口 基本概念 接口的好处 JDK8开始,接…

OpenAI宣布暂停ChatGPT plus用户订阅,解决方案,无需等待立马升级

作为人工智能领域的一项重要革新,ChatGPT Plus的上线引起了众多用户的关注,其背后的OpenAI表现出傲娇的态度,被誉为下一个GTP 4.0。总的来说,ChatGPT Plus的火爆主要有两个原因。首先,其在人工智能对话技术领域的创新&…

[计算机网络实验]头歌 实验二 以太网帧、IP报文分析

第1关:Wireshark基本使用入门 【实验目的】 1、掌握wireshark工具的基本使用方法 【实验环境】 1、头歌基于Linux的虚拟机桌面系统 2、网络报文分析工具wireshark 3、浏览器firefox 【本地主机、平台虚拟机之间数据传递】 1、文本的复制与粘贴 操作入口&…

半导体业库存问题缓解,明年迎来良好转机 | 百能云芯

随着全球半导体产业今年产值预计将出现逾1成的衰退,市场一度陷入不确定性。然而,半导体厂商们对于供应链库存的有效去化表示乐观,预计将为明年带来健康的复苏。在各种因素交织的复杂情况下,半导体产业展现出逐步解决库存问题、迎来…

vivado产生报告阅读分析14-时序报告10

Vivado IDE 中的例外报告 “ Report Exceptions ”对话框 在 AMD Vivado ™ IDE 中 , 选择“ Reports ” → “ Timing ” → “ Report Exceptions ” ( 报告 > 时序 > 例外报告 ) 即可打开“Report Exceptions ”对话框。 从“…

第三届VECCTF-2023 Web方向部分wp

拳拳组合 题目描述&#xff1a;明喜欢保存密钥在某个文件上。请找到秘钥并读取flag文件。 开题&#xff0c;点不完的。源码提示&#xff1a; <!--据说小明很喜欢10的幂次方--> 扫一下看看&#xff0c;应该是有git泄露。 其它一些路由没什么用 git泄露拿下一堆码 pytho…

给卖家的 5 个 TikTok 联盟营销创意

了解如何开始 TikTok 联盟营销不足以让您为 TikTok 商店实施最佳联盟计划。促进您的 TikTok 联盟营销工作。如下&#xff1a; 建立相关受众 为了确保您在 TikTok 联盟营销上的投资没有白费&#xff0c;清楚地了解您的目标受众至关重要。只有了解了这个平台的目标受众&#xf…

最全面的SHEIN开店流程,手把手教你从零起步,轻松开店!

SHEIN作为一家全球性的时尚电商平台&#xff0c;为年轻人提供了更多时尚选择和机会&#xff0c;同时也吸引了众多跨境电商卖家的关注。在5月份&#xff0c;SHEIN推出了第三方卖家平台&#xff0c;为卖家提供了全新的商机和发展赛道。毕竟目前SHEIN平台的流量是非常大的&#xf…