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

(一)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最新版)

相关文章:

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

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

微服务实战系列之Nginx

前言 Nginx?写了那么多文章,为什么今天才轮到它的表演?那是因为它实在太重要了,值得大书特书,特别对待。 当我们遇到单点瓶颈,第一个idea是?Nginx; 当我们需要反向代理,…...

使用rsync从OpenShift的pod复制文件

环境 Red Hat Enterprise Linux release 8.6 (Ootpa)OCP 4.12.22 准备 安装rsync: yum install rsync 查看pod: [rootapi.kai1123.cp.fyre.ibm.com ~]# oc get pod -n cpd-instance | grep dmc ...... ibm-dmc-1700727413211000-monitor-0 …...

解决Activiti5.22流程图部署在Windows上正常,但在linux上部署后出现中文变方块的问题

总结/朱季谦 楼主最近在做公司的工作流平台,发现一个很无语的事情,Activiti5.22的流程图在Windows环境上部署,是可以正常查看的,但发布到公司的Linux服务器上后,在上面进行流程图在线部署时,发现中文都变成…...

EMG肌肉电信号处理合集(三)

本文主要展示常见的肌电信号预处理的实现,开发环境为matlab。 目录 1 肌电信号低通,高通,带通滤波 2 去除DC 0阶偏置,1阶偏置 3 全波整流 4 信号降采样 5 linear envolope / butterworth 低通滤波器 1 肌电信号低通&#xf…...

GitHub桌面版

GitHub桌面版 一、GitHub 桌面版二、clone 仓库三、更新仓库 一、GitHub 桌面版 二、clone 仓库 三、更新仓库...

【广州华锐互动】昆虫3D虚拟动态展示:探索神奇的微观世界

在这个充满科技魅力的时代,我们可以通过各种方式去了解和探索自然界的奥秘。而昆虫作为地球上最为丰富多样的生物群体之一,其独特的生活习性和形态特征一直吸引着人们的目光。 由广州华锐互动开发的昆虫3D虚拟动态展示系统,成为了一种全新的科…...

《QT从基础到进阶·三十六》QWidget实现收缩栏的效果

功能: 1、可以在收缩栏插件中添加界面 2、可以把界面展开或收缩 3、可以用鼠标拖动界面改变界面的排放顺序 源码放在最下方 1、可以在收缩栏插件中添加界面 virtual void addWidget(QWidget* widget, const QString& label, const QIcon& icon QIcon())…...

运行软件报错找不到vcruntime140.dll无法继续执行代码怎么办-6个解决方法

vcruntime140.dll是一个由Microsoft Visual C提供的运行时库文件,它为许多Microsoft Visual Studio开发的应用程序提供了必要的支持。这个文件对于许多Windows应用程序的正常运行至关重要。然而,有时会出现vcruntime140.dll缺失的问题,导致应…...

从Discord的做法中学习 — 使用Golang进行请求合并

正如你可能之前看到的,Discord去年发布了一篇有价值的文章,讨论了他们成功存储了数万亿条消息。虽然有很多关于这篇文章的YouTube视频和文章,但我认为这篇文章中一个名为“数据服务为数据服务”的部分没有得到足够的关注。在这篇文章中&#…...

【教3妹学编程-算法题】统计和小于目标的下标对数目

2哥 : 3妹,OpenAI的宫斗剧迎来了大结局!OpenAI宣布阿尔特曼复职CEO,董事会重组 3妹:啊?到底谁才是幕后操纵者啊,有咩有揪出来 2哥 : 也不是很清楚,据说在被开除的几周前,前CEO曾谴责…...

OSG粒子系统与阴影-雾效模拟(1)

虚拟现实中有很多效果,如雨效、雪效、雾效等,这些都可以通过粒子系统来实现。一个真实的粒子系统的模式能使三维场景达到更好的效果。 本章对OSG粒子系统的使用以及生成自定义粒子系统的方法进行了详细介绍最后还附带说明了阴影的使用方法。在实时的场景…...

Windows power shell for循环

有时候需要重复执行某个shell命令 for($i1;$i -lt 10;$i$i1){echo $i}如果是cmd for /l %i in (1,1,5) do echo %i...

GIT实践与常用命令---回退

实践场景 场景1 回退提交 在日常工作中,我们可能会和多个同事在同一个分支进行开发,有时候我们可能会出现一些错误提交,这些错误提交如果想撤销,可以有两种解决办法:回退( reset )、反做(revert) keywords:reset、rev…...

Python-Django的“日志功能-日志模块(logging模块)-日志输出”的功能详解

01-综述 可以使用Python内置的logging模块来实现Django项目的日志记录。 所以与其说这篇文章在讲Django的“日志功能-日志模块-日志输出”,不如说是在讲Pthon的“日志功能-日志模块-日志输出”,即Python的logging模块。 下面用一个实例来进行讲解。 …...

C现代方法(第23章)笔记——库对数值和字符数据的支持

文章目录 第23章 库对数值和字符数据的支持23.1 <float.h>: 浮点类型的特性23.2 <limits.h>: 整数类型的大小23.3 <math.h>: 数学计算(C89)23.3.1 错误23.3.2 三角函数23.3.3 双曲函数23.3.4 指数函数和对数函数23.3.5 幂函数23.3.6 就近舍入、绝对值函数和取…...

NSGA-II求解微电网多目标优化调度(MATLAB)

一、NSGA-II简介 NSGA-Ⅱ算法是Kalyanmoy Deb等人于 2002年在 NSGA 的基础上提出的&#xff0c;它比 NSGA算法更加优越&#xff1a;它采用了快速非支配排序算法&#xff0c;计算复杂度比 NSGA 大大的降低&#xff1b;采用了拥挤度和拥挤度比较算子&#xff0c;代替了需要指定的…...

7-9 jmu-python-班级人员信息统计

7-9 jmu-python-班级人员信息统计 分数 15 作者 郑如滨 单位 集美大学 输入a,b班的名单&#xff0c;并进行如下统计。 输入格式: 第1行:&#xff1a;a班名单&#xff0c;一串字符串&#xff0c;每个字符代表一个学生&#xff0c;无空格&#xff0c;可能有重复字符。 第2行:&am…...

Doris分区与分桶(八)

接上篇----------Doris 建表示例 Doris 支持两层的数据划分。第一层是 Partition&#xff0c;支持 Range 和 List 的划分方式。第二层是 Bucket&#xff08;Tablet&#xff09;&#xff0c;仅支持 Hash 的划分方式。 也可以仅使用一层分区。使用一层分区时&#xff0c;只支持…...

mac VScode 添加PHP debug

在VScode里面添加PHP Debug 插件,根据debug描述内容操作 1: 随意在index里面写个方法,然后用浏览器访问你的hello 方法,正常会进入下边的内容 class IndexController {public function index(){return 您好&#xff01;这是一个[api]示例应用;}public function hello() {phpin…...

AI应用学习-RAG基础

1.RAG的概念及作用 1.大模型的缺陷 首先要知道RAG是什么&#xff0c;能做什么&#xff0c;他是如何应用的&#xff0c;我们需要先了解一下大模型的缺陷&#xff0c;我们在用一些ai对话工具时&#xff0c;你有时候问一个问题&#xff0c;会发现 1.偶尔他回答的就是胡说八道&a…...

从‘tlsv1 unrecognized name’报错聊起:老系统安全迁移的‘软着陆’方案(wget2实战)

从TLSv1 unrecognized name报错到老系统安全迁移&#xff1a;渐进式升级实战指南 当你在深夜收到生产环境告警&#xff0c;发现核心系统的自动化下载任务突然失败&#xff0c;屏幕上赫然显示着tlsv1 unrecognized name的报错时&#xff0c;这远不止是一个简单的命令修复问题。这…...

下一代数据平台:智能体、分布式与协作性三大基因解析

1. 项目概述&#xff1a;下一代数据平台的三大基因去年在调试一个跨区域数据管道时&#xff0c;我不得不手动协调五个不同团队的API版本。当第七次因为字段映射不一致导致ETL失败时&#xff0c;我突然意识到&#xff1a;传统数据平台就像是用传真机处理现代通信需求。这正是Da2…...

别再只会用巴特沃斯了!用Matlab的cheby2函数搞定切比雪夫II型滤波器,从参数设置到实战代码全解析

突破巴特沃斯局限&#xff1a;Matlab切比雪夫II型滤波器设计全指南 当传感器信号中的高频噪声像顽固的静电干扰一样挥之不去&#xff0c;而传统巴特沃斯滤波器又无法提供足够陡峭的阻带衰减时&#xff0c;工程师们往往需要更强大的工具。切比雪夫II型滤波器正是为解决这类问题而…...

Phi-3.5-mini-instruct JDK1.8环境配置与Java项目迁移指南

Phi-3.5-mini-instruct JDK1.8环境配置与Java项目迁移指南 1. 为什么JDK1.8仍然重要 尽管Java已经发布了多个新版本&#xff0c;但JDK1.8在企业环境中仍然占据重要地位。许多大型系统、金融应用和政府项目都基于这个长期支持版本构建。它的稳定性、成熟度和广泛兼容性使其成为…...

DDrawCompat:三步搞定经典DirectX游戏兼容性问题的终极方案

DDrawCompat&#xff1a;三步搞定经典DirectX游戏兼容性问题的终极方案 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mirrors/dd/D…...

oterm 入门指南:如何快速上手基于终端的 Ollama 客户端

oterm 入门指南&#xff1a;如何快速上手基于终端的 Ollama 客户端 【免费下载链接】oterm the terminal client for Ollama 项目地址: https://gitcode.com/gh_mirrors/ot/oterm oterm 是一款功能强大的终端客户端&#xff0c;专为 Ollama 设计&#xff0c;让你在命令行…...

DeepPCB:工业级PCB缺陷检测数据集终极指南

DeepPCB&#xff1a;工业级PCB缺陷检测数据集终极指南 【免费下载链接】DeepPCB A PCB defect dataset. 项目地址: https://gitcode.com/gh_mirrors/de/DeepPCB DeepPCB是业界领先的印刷电路板缺陷检测开源数据集&#xff0c;为计算机视觉和智能制造领域的研究人员与工程…...

【生产环境紧急响应】:Docker镜像运行时异常的7种高危信号与秒级诊断流程

第一章&#xff1a;Docker镜像运行时异常的紧急响应概览当Docker容器在生产环境中突然退出、卡死或返回非预期状态码时&#xff0c;快速定位根本原因并恢复服务是SRE与运维工程师的核心能力。本章聚焦于镜像运行时异常&#xff08;如启动失败、崩溃重启、健康检查失败等&#x…...

终极Fast-GitHub插件指南:3分钟解决国内GitHub访问难题的完整教程

终极Fast-GitHub插件指南&#xff1a;3分钟解决国内GitHub访问难题的完整教程 【免费下载链接】Fast-GitHub 国内Github下载很慢&#xff0c;用上了这个插件后&#xff0c;下载速度嗖嗖嗖的~&#xff01; 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub 还在…...