pytest配置文件配置并通过allure生成报告

news2025/1/17 21:39:43

        之前已经学习了使用pytest+requests实现各种方式的调用和一些脚本的执行,今天来学习下如何使用pytest.ini配置文件来管理用例的执行以及如何使用allure生成测试报告。

1.pytest.ini文件配置

        在项目目录下新建pytest.ini文件,然后进行配置,pytest.ini的文件配置信息如下所示。

[pytest]:表示这是一个pytest配置文件的开始;

; -n 3 --dist=loadfile:表示注释不启用,原配置信息为会启用pytest-xdist插件,使用3个进程,并且按照文件分布测试;

addopts = -sv:addopts 指定了传递给 pytest 的额外命令行选项;
        -s   选项表示在终端显示测试运行时的标准输出和标准错误输出;
        -v   选项表示启用详细模式,显示每个测试的运行结果;


testpaths = test*:指定了 pytest 应该在哪些目录或文件中寻找测试文件。这里 test* 表示在所有以 test 开头的文件或目录中寻找测试文件。

python_files = run.py:指定文件启动入口为run.py文件,也可以不维护,run.py文件执行的时候会默认寻找pytest.ini中的配置信息;

python_classes = Test*:指定 pytest 应该识别哪些类作为测试类。这里指定类名以 Test 开头的类将被识别为测试类;

python_functions = test_*:指定 pytest 应该识别哪些函数作为测试函数。这里指定函数名以 test_ 开头的函数将被识别为测试函数;

2.allure的安装

        通过链接下载:https://pan.baidu.com/s/1c_5CpKtmGq9Wl3uqMkX4rg,提取码:yzgm。然后解压,将文件路径(一直到bin目录)配置到环境变量中,如下图所示。        

         在环境变量中配置好allure的路径之后,可以在cmd控制台中输入:allure  --version,如果能够正常输出版本信息,则表示allure安装成功,安装成功后如果需要在pycharm中使用,在pycharm已打开的情况下还需要重启pycharm重新打开项目。

 3.执行和生成报告

3.1.执行收集数据

        在pytest.ini配置文件中修改配置,表示指定通过allure收集执行信息并且将信息存放在report/data目录下,每次执行的时候都会清除之前的数据信息。

addopts = -sv --alluredir report/data --clean-alluredir

         执行run.py文件系统报错如下所示。原因:未安装:allure-pytest

ERROR: usage: run.py [options] [file_or_dir] [file_or_dir] [...]
run.py: error: unrecognized arguments: --alluredir

        解决方法:执行命令安装allure-pytest

pip install allure-pytest

         allure-pytest安装成功后,再次执行run.py文件,各个脚本可以正常被收集然后执行,执行成功后会在report/data目录下生成测试结果数据,每一条case都会生成1条记录,如下图所示。

3.2.生成报告

        在测试数据收集好了之后,我们通过可以allure来生成报告,命令如下,指定了数据的来源和生成报告的路径并且每次执行命令都要通过clean清除之前的报告数据。

allure generate report/data -o report/html --clean

         打开生成的html文件可以看到生成的报告,如果显示的是英文可以在右下角将英文调整为中文,如下图所示。

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

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

相关文章

linux:centos7升级libstdc++版本到3.4.26

下载,解压 wget http://www.vuln.cn/wp-content/uploads/2019/08/libstdc.so_.6.0.26.zip unzip libstdc.so_.6.0.26.zip 复制到【/usr/lib64】: cp libstdc.so.6.0.26 /usr/lib64创建软链接 cd /usr/lib64 sln libstdc.so.6.0.26 libstdc.so.6查看一…

使用 Scapy 库编写 TCP ACK 洪水攻击脚本

一、介绍 TCP ACK洪水攻击是一种分布式拒绝服务攻击(DDoS),攻击者通过向目标服务器发送大量伪造的TCP ACK(确认)数据包,使目标服务器不堪重负,无法正常处理合法请求。虽然ACK包通常用于确认接收…

问题:材料题请点击右侧查看材料问题 查看材料 #学习方法#经验分享#学习方法

问题:材料题请点击右侧查看材料问题 查看材料 A.Colleges may reduce their enrollment. B.Top universities become increasingly competitive. C.Universities become selective in student admission. D.Colleges invest less in academy and infrastructure…

【LLM】Dify 0.6.10 在Windows系统上本地化部署

【LLM】Dify 0.6.10 在Windows系统上本地化部署 文章目录 【LLM】Dify 0.6.10 在Windows系统上本地化部署一、参考资料二、Dify 概述1、Dify开源项目功能介绍(RAG流水线,Agent工具接入,Prompt配置和工作流编排,大模型接入&#xf…

浅析嵌入式实时系统中信号量的概念

目录 概述 1. 认识信号量 1.1 定义信号量 1.2 信号量的类型 1.2.1 二值信号量 1.2.2 计数信号量 1.2.3 互斥信号量 1.2.3.1 认识互斥信号量 1.2.3.2 互斥信号量的其他特性 2 典型信号量的使用 2.1 等待和信号同步 2.2 多任务等待和信号同步 2.3 信用跟踪同步 2.…

stm32MP135裸机编程:使用USB/UART烧录程序到SD卡并从SD卡启动点亮一颗LED灯

0 参考资料 轻松使用STM32MP13x - 如MCU般在cortex A核上裸跑应用程序.pdf STM32CubeProgrammer v2.16.0 烧录需要的二进制文件1 烧录到SD卡需要哪些文件 参考《轻松使用STM32MP13x - 如MCU般在cortex A核上裸跑应用程序》,烧录需要的SD卡文件如下: &a…

多模态大模型思路

最近看了一篇苏神的文章,对多模态LLM的设计思考很有启发,总结如下,原文可参考“闭门造车”之多模态模型方案浅谈 - 科学空间|Scientific Spaces 多模态模型要解决什么问题 视频生成、文生图这些内容,图文混合的双模态输入输出&a…

CTF-PWN-kernel-UAF

文章目录 参考slub 分配器kmem_cache_cpukmem_cache_node[ ]冻结和解冻分配释放 fork绑核Kmalloc flag和slub隔离CISCN - 2017 - babydriver检查babtdriver_initstruct cdevalloc_chrdev_regioncdev_initownercdev_add_class_createdevice_create babyopenbabyreleasebabyreadb…

机器视觉系统-同轴光源大小选择技巧

同轴光源多用于检测光滑平面产品上的缺陷,同样利用上述的方法计算得出光源尺寸。 实际上,同轴光源可理解为没有孔的开孔面光,因此可等效为发光面相等的面光源,如下图: 如图所示,同轴光源的效果与开孔面光的…

LeetCode 算法:缺失的第一个正数c++

原题链接🔗:缺失的第一个正数 难度:困难⭐️⭐️⭐️ 题目 给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1: 输…

Gradio.NET 的简单入门使用

1、最近在网络上由发现了一个好完的东西。 2、Gradio.NET通过简单的C# Web API几行代码就可以实现一网页界面。 3、Python中也有一个Gradio,功能好像都差不多哦,不废话了,我们来开始实操。 4、在Visual Studio 2022 中创建一个 ASP.NET Cro…

Seq2seq、编码器解码器神经网络

目录 一、Seq2seq 简介二、编码器三、解码器四、编码器-解码器的训练 遇到看不明白的地方,欢迎在评论中留言呐,一起讨论,一起进步! 需掌握的前提知识: LSTM、词嵌入 本文参考:【官方双语】编码、解码神经网…

《软件定义安全》之五:软件定义的安全架构

第5章 软件定义的安全架构 1.软件定义安全架构 安全控制平台,主要负责安全设备的资源池化管理、各类安全信息源的收集和分析、与客户业务系统对接,以及相应安全应用的策略解析和执行。 安全应用是根据特定的安全需求所开发的程序,它利用安全…

Mysql的InnoDB介绍

目录 show engines查看搜索殷勤,默认InnoDB。 Mysql为什么使用InnoDB作为默认存储引擎 InnoDB主要包括内存结构和磁盘结构 内存结构包含: 磁盘结构中包括: 为什么设计成内存结构和磁盘结构两部分 使用InnoDB存储引擎创建的表,对应的数据文件在哪里…

堆排序经典问题【TopK】

前言 在上文我们讲了堆排序的实现(点此调整),我们先简单回顾一下。 在进行堆排序之前,需要建一个堆,由于排序是将堆顶数据与堆底交换,所以排升序建大堆,降序建小堆。 堆排序的代码 //向下调整…

Nginx+Tomcat负载均衡、动静分离群集方案

一、Tomcat简介 在现代 Web 服务架构中,Tomcat 和 Nginx 是两个至关重要的组件,负责处理用户请求并实现高性能的服务。本篇博客将深入探讨这些技术的原理和部署配置方法。 最初是由Sun的软件构架师詹姆斯邓肯戴维森开发。安装Tomcat后,安装…

一文细谈SNN的基本数学原理,LIF模型,STDP与STBP学习方法

首先本文是读完 如何看待第三代神经网络SNN?详解脉冲神经网络的架构原理、数据集和训练方法 原创-CSDN博客 一文通俗入门脉冲神经网络(SNN)第三代神经网络-CSDN博客 两篇文章的总结,文章仅用于学习。 本文主要讨论STDP和STBP方法。 我们都知道&…

Zynq学习笔记--AXI4-Stream到视频输出IP是如何工作的?

目录 1. 简介 2. 原理详解 2.1 示例工程 2.2 AXI4-Stream to Video Out 3. Master/Slave Timing Mode 3.1 Slave Timing Mode 3.2 Master Timing Mode 4. 总结 1. 简介 本文主要介绍了 AXI4-Stream 到视频输出 的内容。其中,示例工程展示了一个具体的设计&…

CSS id选择器

目录 任务描述 相关知识 id选择器 id选择器语法 类选择器与id选择器的区别 编程要求 任务描述 在本关中,你将通过id选择器的方式完成页面菜单栏样式布局,栏目导航等任务。 完成任务之后,基本页面效果如下: 动态效果如下&am…

瑞昱半导体AMB82 MINI SD卡加载模型RTSP视频流AI识别图像和声音分类

AMB82 MINI Arduino的方法迭代更新十分及时,github维护也十分频繁。最新推出的4.0.7版本开始支持SD卡加载模型。有的网友装了4.0.6版本是看不到摄像头和模型加载选项的。 用这个实例来呈现RTSP视频流AI识别图像,同时展示对声音进行分类效果。 SDK升级到…