使用pytest实现参数化后,控制台输出的日志是乱码

测试用例id显示的是乱码

问题

testcases/test_测试用例.py::TestPro::test_测试用例_用例1**[\u5fc3\u453g2]** PASSED [ 33%]

要让 pytest 在参数化测试中正确显示中文用例名称而非 Unicode 转义字符,可以通过以下两种方法

解决:

全局禁用测试 ID 转义

在项目根目录创建 pytest.ini 文件,并添加以下配置:

ini 复制代码
[pytest]
disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True

注意 :此选项会禁用所有测试 ID 的转义,确保用例名称不含特殊字符(如 /: 等),否则可能引发路径问题。

补充说明

  • 编码一致性 :确保测试文件保存为 UTF-8 格式。
  • 终端/IDE 支持:确认运行环境(如终端或 IDE)支持 UTF-8 编码,避免乱码。

选择任一方法即可解决 Unicode 转义问题。推荐优先使用 ids 参数,以保持作用域局部性。

相关推荐
XYiFfang6 天前
【Pytest】解决Pytest中Teardown钩子的TypeError:实例方法与类方法的调用差异
python·pytest
Kingairy8 天前
Pytest 插件:pytest_runtest_protocol
python·pytest
AIZHINAN8 天前
Pytest 插件介绍和开发
测试工具·pytest·插件开发
灰阳阳10 天前
替身演员的艺术:pytest-mock 从入门到飙戏
自动化测试·python·pytest·unit testing·pytest-mock
年年测试14 天前
Playwright与PyTest结合指南
pytest
focksorCr14 天前
pytest 并发执行用例(基于受限的测试资源)
python·pytest
律品19 天前
pytest的前置与后置
开发语言·python·pytest
测试老哥20 天前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
丿罗小黑20 天前
Pytest项目_day20(log日志)
pytest