如何用Pytest进行自动化测试?
点击文末小卡片免费获取软件测试全套资料资料在手涨薪更快Pytest作为广泛使用的Python测试框架之一可以用于单元测试、功能测试、性能测试等场合。自动化测试是功能测试的一种形式可以使用Pytest编写并管理自动化测试用例再执行相应的自动化测试。功能测试通常包括接口测试和Web测试两种类型任何一个测试类型都可以通过Pytest框架来实现。本文以接口测试为例讲解如何使用Pytest进行自动化测试。如果想要进行Web自动化测试只需要将代码中涉及接口测试API改为适用于Web自动化测试的API即可而整体框架与执行方式则基本一致。1. 编写测试用例1编写简单的测试用例假设我们想要测试百度首页API接口用户发出的请求是否合法并检查响应文本是否包含字符串、“百度一下”。代码实例import requests def test_baidu(): # 发送API请求 response requests.get(https://www.baidu.com) # 判断响应状态码及响应文本是否符合预期结果。 assert response.status_code 200 assert 百度一下 in response.text上述代码中定义了test_baidu()作为测试函数名它是一个基本测试用例。在这个示例用例中代码会向API发送GET请求并断言响应的状态码为200且响应文本中包含“百度一下”这几个关键字。2编写参数化测试用例在实际测试中通常需要对多组数据进行测试。这时参数化测试用例就派上用场了。它可以轻松地对多组数据进行测试避免手动重复编写测试用例。代码实例import requests import pytest # 声明数据 data [ {url: https://www.baidu.com, expected: 百度一下}, {url: https://cn.bing.com/, expected: bing} ] pytest.mark.parametrize(case, data) def test_web(case): url case[url] expected case[expected] # 发送API请求并断言响应的状态码为200并检查响应文本是否符合预期结果 response requests.get(url) assert response.status_code 200 assert expected in response.text上述代码中使用pytest.mark.parametrize来实现参数化。其中“case”是参数名称。“data”列表内包含了多组测试数据。通过for循环遍历每一组测试数据并参考预置的策略执行具体的测试任务。2. 运行测试用例用例编写完成后一定要进行自测保证测试用例测试结果的准确性和一致性测试用例本身没有问题方可接入自动化测试。Pytest来执行测试用例非常简单只需要在命令行中输入pytest即可3. 查看测试结果所有测试用例执行完成后pytest会给出测试结果若用例都执行通过测试结果会显示如下信息若有测试用例未能通过执行结果会给出失败消息和失败原因测试人员需要根据测试结果找到执行失败的测试用例并对其进行分析判断是测试用例本身的问题还是发现了程序的bug。使用pytest做自动化测试编写测试用例需要遵循最佳的代码规范并且考虑到各种边界情况和异常情况。同时善于使用参数化和其他高级功能提高自动化测试的可靠性、可维护性保证自动化测试的顺畅执行。最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。

相关新闻

软件测试常见的测试用例设计方法

软件测试常见的测试用例设计方法

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 测试用例方法 1.等价类设计测试用例 具体步骤: 1)明确需求 2)划分有效和无效等价类 有效等价类:满足需求的无效…

2026/7/7 21:30:35 阅读更多 →
基于芯片式原子力显微镜的反渗透膜形貌解析——轻松实现纳米级成像

基于芯片式原子力显微镜的反渗透膜形貌解析——轻松实现纳米级成像

通过芯片级集成与自动化设计,原子力显微镜(AFM)正在从传统的复杂实验设备,逐渐转变为更加易用的纳米表征工具。以 ICSPI 推出的芯片式 AFM 系统为例,其紧凑化结构和自动化操作,使研究人员能够在桌面环境中快…

2026/5/17 3:42:35 阅读更多 →
收藏!春节后程序员必看:大模型红利爆发,算法岗薪资再创新高

收藏!春节后程序员必看:大模型红利爆发,算法岗薪资再创新高

春节的年味渐渐消散,程序员群体也悄然迎来了新一轮的职业挑战与机遇——在行业普遍追求降本增效的大背景下,单纯的基础开发已难以形成核心竞争力,如何通过技术深耕、抓住新兴赛道,实现个人职业价值的跨越式提升,成为每…

2026/7/6 14:09:02 阅读更多 →

最新新闻

Excel绝对引用原理与实战:$A$1、$A1、A$1三类锁定详解

Excel绝对引用原理与实战:$A$1、$A1、A$1三类锁定详解

1. 项目概述:为什么Excel里“$A$1”比“A1”更值得你花三分钟搞懂在Excel里复制公式时,你有没有遇到过这种崩溃时刻:明明在B2单元格写好了A1*1.05,往下拖到B3,它自动变成A2*1.05——可你真正想锁定的是A1那个固定税率&…

2026/7/7 22:04:03 阅读更多 →
AutoCAD 2025安装失败根源:.NET 6运行时与WDDM 3.0驱动适配指南

AutoCAD 2025安装失败根源:.NET 6运行时与WDDM 3.0驱动适配指南

1. 这不是“点下一步就完事”的安装——AutoCAD 2025 安装激活的本质是系统环境适配工程 AutoCAD 2025 不是一套普通软件,它是一套对Windows底层运行时、图形驱动、权限模型和系统组件高度敏感的工业级CAD平台。我带过三届高校制图课程,也给二十多家设计…

2026/7/7 22:04:03 阅读更多 →
Claude Code开发环境D盘部署全指南:Node.js、npm与PowerShell深度配置

Claude Code开发环境D盘部署全指南:Node.js、npm与PowerShell深度配置

1. 先说清楚:Claude Code 并不是能“手动安装到 D 盘”的独立软件很多人在搜索“Claude Code 手动安装 D 盘教程”时,心里默认它是一个像微信、Photoshop 那样双击.exe就能选路径安装的桌面程序。这个前提就错了——Claude Code 本质上不是一个可独立分发…

2026/7/7 22:02:02 阅读更多 →
Kubeflow实战指南:构建可交付的端到端机器学习流水线

Kubeflow实战指南:构建可交付的端到端机器学习流水线

1. 为什么我们需要 Kubeflow:从“能跑通”到“可交付”的真实断层你有没有过这样的经历?在本地 Jupyter Notebook 里,用 Scikit-learn 训练一个随机森林模型,准确率 92%,代码清爽,逻辑清晰,连注…

2026/7/7 22:00:01 阅读更多 →
SQL Join本质是数据关系翻译,不是拼表语法题

SQL Join本质是数据关系翻译,不是拼表语法题

1. 项目概述:为什么“SQL Join”不是语法题,而是数据关系的翻译器 “Introduction to SQL Joins”——这个标题看起来像教科书第一章,但在我带过37个真实业务团队、处理过2100次线上数据取数需求后,我越来越确信: 绝大…

2026/7/7 21:57:54 阅读更多 →
Python垃圾回收机制深度解析:代际回收、循环引用与调优实战

Python垃圾回收机制深度解析:代际回收、循环引用与调优实战

1. 项目概述:为什么Python的垃圾回收不是“设好就忘”的后台服务Python开发者常有个错觉:对象用完就丢,解释器自会收拾残局——毕竟del obj之后内存似乎就“干净”了。但真实场景里,你写完一个数据处理脚本,跑着跑着内…

2026/7/7 21:55:54 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻