首页 > 其他 > 详细

pytest执行用例时,如何显示用例标题

时间:2021-07-25 23:36:17      阅读:81      评论:0      收藏:0      [点我收藏+]

pytest用例标题默认是参数化中的参数名,此种显示方法不明了只管。

技术分享图片

 

 

如何让标题显示用例设计中的标题?

@pytest.mark.parametrize()给了另一个参数 ids
@pytest.mark.parametrize(
"test_info", test_data, ids=[test_data[i]["title"] for i in range(len(test_data))]
)
使用列表推导式动态获取所有用例的title
执行结果如下:(如果你的title中含有中文,可能会出现下图情况)

技术分享图片

 

 解决中文编码的问题,需要将下面的代码复制到conftest.py中,并将此文件放在tests目录下即可

from typing import List


def pytest_collection_modifyitems(
    session: "Session", config: "Config", items: List["Item"]
) -> None:
    for item in items:
        item.name = item.name.encode("utf-8").decode("unicode-escape")
        item._nodeid = item.nodeid.encode("utf-8").decode("unicode-escape")

技术分享图片

 

pytest执行用例时,如何显示用例标题

原文:https://www.cnblogs.com/amanda-yl/p/15059029.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!