pytest基础知识

  pytest知识了解

pytest的基础知识了解:Python测试框架之pytest详解_lovedingd的博客-CSDN博客_pytest框架

(包含设置断点,pdb,获取最慢的10个用例的执行耗时)

pytest-pytest.main()运行测试用例,pytest参数: pytest-pytest.main()运行测试用例,pytest参数_小白爱吃饭的博客-CSDN博客

报错 usage: runAll.py [options] [file_or_dir] [file_or_dir] [...]  ,是由于没有安装pytest-html 

pytest  的使用 

pytest中标签名的使用 :  pytest之mark的使用 - 奔奔-武 - 博客园

Pytest装饰器   @pytest.mark.parametrize 的使用: Python Pytest装饰器@pytest.mark.parametrize详解_探索测试-CSDN博客_pytest.mark.parametrize

@pytest.mark.xfail  : pytest xfail参数详解 - jescs - 博客园

 @pytest.mark.skipif()  

pytest 中的 fixture的使用

pytest 中的 fixture的使用(1):  pytest进阶之fixture - linux超 - 博客园 

pytest 的fixture的使用 (2):Pytest 使用简介 - 三只松鼠 - 博客园

将固件参数化:

 

注意:

1. 需要安装 pytest-html

2. 若出现了 report.html 运行的0 test, 则说明是文件的命名不对

pytest的命名规则:默认从当前目录中搜集测试用例,即在哪个目录下运行 pytest 命令,则中哪个目录中搜索

-符合命令规则 test_*.py 或者 *_test.py 的文件

-以 test_ 开头的函数名

-以 Test 开头的测试类(没有__init__函数)当中,以 test_ 开头的函数

3.  @pytest.fixture() 以及 @pytest.mark.usefixture() 的用法

当function级别的 fixture 没有设置  autouse的时候,  执行完类级别的fixture,会直接执行 类中的函数

当function级别的 fixture 有设置  autouse的时候,  执行完类级别的fixture,会调用函数级别的fixture,再去执行类中的函数

(autouse: 如果为True,则fixture func将为所有测试用例激活可以看到它。如果为False(默认值),则需要显式激活fixture)

4. 上述的案例中,fixture函数 和 测试用例写在同一文件内,如果存在多个py 文件调用的话,则需要建一个 confest文件 ,test_xxx.py 测试文件中无需 import  conftest, pytest 会自动搜索同级目录中的 conftest.py 文件

5. 需要获得返回参数的时候,不可使用 @pytest.mark.usefixtures(),需要直接传参 ,因为fixture中返回的数据默认在fixture名字里面存储

pyte st 的标签的使用 比如 @pytest.mark.demo :

 标签不生效的处理方法:PytestUnknownMarkWarning: Unknown pytest.mark.wallet - is this a typo?..._weixin_30257433的博客-CSDN博客

 Pytest:conftest.py在登录接口上的应用

   Pytest:conftest.py在登录接口上的应用 - 简书

注意: 登录接口: headers 中需要传参qtoken的值 :  'qtoken':'VE9N35WLpFOYrEpOnrXC457xO8U2'

pytest 的 多进程运行cases  以及  重试运行cases 

 py test 在命令行(terminal)运行:

pytest  test_skip.py          #运行test_skip.py文件

pytest -v test_skip.py            #查看详细的运行信息

pytest -m demo testCase/test_Search.py    # 运行 被标记为demo的 用例,比如说有的用例未完成,则可标记为finished,unfinished ,来方便调试 

 pytest使用命令行来运行 测试用例:pytest教程之命令行方式运行用例_df0128的专栏-CSDN博客_pytest执行命令

 pytest  allure的教程

pytest  allure的安装教程 Pytest+Allure生成自动化测试报告 - 一步一脚印丶 - 博客园

安装allure报错提示JAVA_HOME is set to an invalid directory解决办法: 安装allure报错提示JAVA_HOME is set to an invalid directory解决办法_textwj的博客-CSDN博客  

对应的安装 java jdk的教程:JAVA_JDK下载与安装教程_weixin_42687361的博客-CSDN博客_javajdk安装步骤

安装jdk出现could not open 'D:\software\JAVA\lib\amd64\jvm.cfg' 的解决办法    win10安装jdk出现could not open 'D:\software\JAVA\lib\amd64\jvm.cfg'_lin1314yuan的博客-CSDN博客

allure 的用例描述使用 :allure(三十)--allure描述用例详细讲解 - 星空6 - 博客园 

生成allure报告:

方法1:

if __name__ == '__main__':

    pytest.main(['-s', '-q', '--alluredir', './allure'])

    os.system('allure -c ./allure')

    os.system('allure serve ./allure-report')

方法2:

pytest  -n auto --alluredir=yourdir                                 #  -n auto:可以自动检测到系统的CPU核数 使用分布式运行用例  ;   --alluredir=yourdir    #只需添加 --alluredir 选项,并提供指向应存储结果的文件夹的路径   例如:pytest -n auto --alluredir .\report    或者 pytest -n auto --alluredir=report , report是你要放置的文件夹名称

allure serve report       #report 是已生成json , txt 数据的文件夹

方法3:

pytest -sq --alluredir=report     # 执行 pytest,指定 allure 结果目录为report文件夹

allure generate -c -o ./allure-report    report    #根据report文件夹中的文件, 生成 allure 的 html 报告 放在 allure-report文件夹下

allure open ./allure-report     # 打开 allure 报告  

清除之前生成的json,txt文件,生成新的文件

pytest test_2.py  --alluredir=. /report   --clean-alluredir   #report为存放json,txt文件的文件夹 , 注意clean 后面接的是 - ,不是=

allure命令行 :  Pytest 系列(27)- allure 命令行参数 - 小菠萝测试笔记 - 博客园

 yaml文件:

yaml文件的使用   自动化项目配置或用例文件格式推荐--yaml - hyx20160514 - 博客园

yaml 校验器   YAML、YML在线编辑器(格式化校验)-BeJSON.com 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LM Studio 替换源的方式解决huggingface.co无法访问的问题

安装软件完成之后,不要打开,打开了就直接关闭 在安装目录下,比如我安装在E:\Program Files\LM Studio 下面三个文件中的huggingface.co全部替换为hf-mirror.com然后再打开即可。 E:\Program Files\LM Studio\resources\app\.webpack\rende…

【含文档+PPT+源码】基于微信小程序的乡村振兴民宿管理系统

项目介绍 本课程演示的是一款基于微信小程序的乡村振兴民宿管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习者。 1.包含:项目源码、项目文档、数据库脚本、软件工具等所有资料 2.带你从零开始部署运行本套系统 3.该…

五、OpenGL中Shader与C++数据传输

文章目录 一、概述二、Shader 代码文件的基本格式三、Shader的向量语法介绍四、Shader之间的数据传输五、Shader与C的数据传输uniform六、完整示例 一、概述 在 OpenGL 中,Shader(着色器)使用 GLSL(OpenGL Shading Language&…

docker不停机部署

背景 最近做大疆项目时,后台更新部署时,机场和无人机就会掉线。设备自动重连注册时间比较长,应用长时间不可用。所以需要灰色发布服务。docker-compose的swarm模式可解决此问题。 服务构建脚本Dockerfile # 使用官方Java基础镜像&#xff…

工作记录 2016-12-22

工作记录 2016-12-22 更新的问题 1、修改了Job Summary的Bill Amount的Bug。 2、修改了Account #的宽度。 3、修改了Clearinghouse Status的默认查询的条件。 4、修改了Upload Files的Add File的bug。 5、Pending Pool、Missing Infos加了Write Off,修改了Histor…

QLoggingCategory类使用

QLoggingCategory类使用 QLoggingCategory的概述 QLoggingCategory是Qt的日志策略类;可以通过声明不同的日志策略对象来输出不同的日志信息。打印信息类型如下:宏 Q_DECLARE_LOGGING_CATEGORY(name) 定义一个返回QLoggingCategory对象函数,…

Linux红帽:RHCSA认证知识讲解(五)从红帽和 DNF 软件仓库下载、安装、更新和管理软件包

Linux红帽:RHCSA认证知识讲解(五)从红帽和 DNF 软件仓库下载、安装、更新和管理软件包 前言一、DNF 软件包管理基础1.1 核心操作命令安装软件包卸载软件包重新安装软件包 1.2 软件仓库原理 二、配置自定义软件仓库步骤 1:清理默认…

Go本地缓存设计与实现

本地缓存是一个项目中很常见的组件。在很多人的眼中就是一个简单的key-value的map存储即可实现,但实际上,设计一个本地缓存需要考虑的问题远比你想象的多,比如说,本地缓存是将数据存储在内存,若数据量激增突破了内存限…

通义万相2.1开源版本地化部署攻略,生成视频再填利器

2025 年 2 月 25 日晚上 11:00 通义万相 2.1 开源发布,前两周太忙没空搞它,这个周末,也来本地化部署一个,体验生成效果如何,总的来说,它在国内文生视频、图生视频的行列处于领先位置&#xff0c…

Jetson Xavier NX安装CUDA加速的OpenCV

我们使用SDKManager刷机完成后,使用jtop查看,发现OpenCV 是不带CUDA加速的,因此,我们需要安装CUDA加速的OpenCV,这样后续在使用的时候速度会快很多。 首先我们先卸载默认OpenCV sudo apt purge libopencv* -y sudo …

基于PaddleNLP使用DeepSeek-R1搭建智能体

基于PaddleNLP使用DeepSeek-R1搭建智能体 最近在学习DeepSeek,找到了PaddleNLP星河社区大模型,跟着敲写了一遍。内容来源:DeepSeek实战训练营:从云端模型部署到应用开发 - 飞桨AI Studio星河社区-人工智能学习与实训社区 本项目基…

给大家推荐8个好玩有趣的网站

1、Home Apothecary 家庭药房 https://apothecary.tips/zh Home Apothecary(家庭药房)结合传统中医智慧与现代科学验证,提供涵盖睡眠改善、免疫力提升、肠胃调理、活力增强等健康需求的天然养生饮品配方。精选安神助眠、四季调养、舒缓压力…

使用Beanshell前置处理器对Jmeter的请求body进行加密

这里我们用HmacSHA256来进行加密举例: 步骤: 1.先获取请求参数并对请求参数进行处理(处理成String类型) //处理请求参数的两种方法: //方法一: //获取请求 Arguments args sampler.getArguments(); //转…

利用paddleocr解决图片旋转问题

由于之前使用easyocr识别图片的时候发现旋转的图片或者倒置的图片效果很差,来利用 cv2.minAreaRect()获取旋转角度,只能解决0-90,对于倒置的图片不能很好解决,因此使用paddleocr中方向分类检测(只能返回0,1…

数据结构(蓝桥杯常考点)

数据结构 前言:这个是针对于蓝桥杯竞赛常考的数据结构内容,基础算法比如高精度这些会在下期给大家总结 数据结构 竞赛中,时间复杂度不能超过10的7次方(1秒)到10的8次方(2秒) 空间限制&#x…

Python 入

Python 入侵交换机 随着网络安全威胁不断增加,对于网络设备的安全防护变得愈发重要。而交换机作为网络中重要的设备之一,也需要加强安全保护。本文将介绍如何利用Python来入侵交换机,并对其进行漏洞扫描和安全检测。 1. Python 入侵交换机原…

自然语言处理:最大期望值算法

介绍 大家好,博主又来给大家分享知识了,今天给大家分享的内容是自然语言处理中的最大期望值算法。那么什么是最大期望值算法呢? 最大期望值算法,英文简称为EM算法,它的核心思想非常巧妙。它把求解模型参数的过程分成…

RAG 常见分块策略全解析:从原理到代码实践(2025 深度版)

大家好,我是大 F,深耕AI算法十余年,互联网大厂技术岗。 知行合一,不写水文,喜欢可关注,分享AI算法干货、技术心得。 更多文章可关注《大模型理论和实战》、《DeepSeek技术解析和实战》,一起探索技术的无限可能! 引言 在检索增强生成(RAG)系统中,分块策略是决定系统…

【软件逆向】QQ 连连看小游戏去广告与一键消除实现

目录 一、背景介绍 二、去广告实现 2.1 分析广告加载流程 2.2 逆向分析广告加载逻辑 2.3 去广告方案 三、一键消除外挂实现 3.1 分析游戏逻辑 3.2 编写外挂插件 3.3 注入外挂: 四、一键消除效果展示 五、额外扩展 一、背景介绍 QQ 连连看是一款经典的休闲…

小白学Agent技术[5](Agent框架)

文章目录 Agent框架Single Agent框架BabyAGIAutoGPTHuggingGPTHuggingGPT工作原理说明GPT-EngineerAppAgentOS-Copilot Multi-Agent框架斯坦福虚拟小镇TaskWeaverMetaGPT微软UFOAgentScope现状 常见Agent项目比较概述技术规格和能力实际应用案例开发体验比较ChatChain模式 Agen…