场景:使用@pytest.mark.parametrize装饰器为用例自定义名称时,运行显示乱码。如下图所示:
解决方案:
1.在根目录 pytest.ini中增加一行代码
[pytest]
disable_test_id_escaping_and_forfeit_all_rights_to_community_support=True
2.在conftest.py中加入钩子函数
def pytest_collection_modifyitems(items):
for item in items:
item.name = item.name.encode("utf-8").decode("unicode_escape")
item._nodeid = item.nodeid.encode("utf-8").decode("unicode_escape")
3.采用英文名