接口自动化进阶 —— Pytest全局配置pytest.ini文件详解!

pytest.ini 是 Pytest 的全局配置文件,用于自定义测试运行的行为和规则。通过配置 pytest.ini,可以避免在命令行中重复输入参数,提升测试的效率和一致性。

1. 配置文件的位置和格式

位置:pytest.ini 文件通常放在项目的根目录下。

格式:配置文件以 [pytest] 开头,后面跟随具体的配置项。‍

2. 常用配置项

复制代码
配置项 说明

addopts 添加默认的命令行选项。例如:addopts = -v -s --html=report.html。

testpaths   指定测试用例的查找路径。例如:testpaths = tests。

python_files    指定测试文件的匹配模式。默认为 test_*.py。

python_classes  指定测试类的匹配模式。默认为 Test*。

python_functions    指定测试函数的匹配模式。默认为 test_*。

markers 定义测试用例的标记(marker)。例如:markers = smoke: smoke test。

norecursedirs   指定不递归搜索的目录。例如:norecursedirs = venv build。

xfail_strict    设置 xfail 标记的行为。如果设置为 True,则标记为 xfail 的测试用例在通过时会被报告为失败。

3. 示例配置文件

以下是一个完整的 pytest.ini 文件示例:

pytest

复制代码
# 添加默认命令行选项

addopts = -v -s --html=report.html

# 指定测试用例的查找路径

testpaths = tests

# 定义测试文件、类和函数的匹配模式

python_files = test_*.py

python_classes = Test*

python_functions = test_*

# 定义测试标记

markers =

    smoke: smoke test

    integration: integration test

# 设置不递归搜索的目录

norecursedirs = venv build

# 设置 xfail 标记的行为

xfail_strict = True‍

4. 使用方法

创建配置文件:在项目根目录下创建一个名为 pytest.ini 的文件。

编辑配置文件:根据需要添加或修改配置项。

运行测试:直接运行 pytest 命令,Pytest 会自动读取 pytest.ini 文件中的配置。

5. 注意事项

配置文件中的路径和模式支持相对路径和通配符。

如果需要在命令行中覆盖配置文件中的选项,可以在运行时手动指定参数。

配置文件的编码必须是 ANSI,可以使用 Notepad++ 修改编码格式。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

相关推荐
美亚特直线轴承2 小时前
直线轴承在自动化机械设备中的应用
运维·人工智能·经验分享·笔记·机器人·自动化·制造
互联网搬砖老肖3 小时前
Selenium2+Python自动化:利用JS解决click失效问题
javascript·python·自动化
爱学习的大牛1236 小时前
Linux 内核开发/测试工具对比 Windows 驱动验证工具 (Driver Verifier)
linux·测试工具·内核
Tom Boom8 小时前
2. 什么是最普通的自动化“裸奔状态”?
自动化·自动化测试框架·对象层封装
胆大的10 小时前
怎样才能设计好的自动化测试用例
自动化·测试用例·pytest
VillanelleS11 小时前
前端工程化之自动化部署
运维·前端·自动化
私人珍藏库18 小时前
[Windows] Wireshark 网络抓包工具 v4.4.6
网络·测试工具·wireshark
行动π技术博客18 小时前
基于大语言模型的自动化单元测试生成系统及测试套件评估方法
语言模型·单元测试·自动化
AI大模型顾潇1 天前
[特殊字符] AI 大模型的 Prompt Engineering 原理:从基础到源码实践
运维·人工智能·spring·自然语言处理·自动化·大模型·prompt
东雁西飞1 天前
MATLAB 控制系统设计与仿真 - 39
开发语言·算法·matlab·自动化·工业机器人