在pytest测试框架介绍一中,有说的标签的用法。但距离上次写有段时间了,这次重新下载了最新的pytest,发现在使用标签时,有提示Warning,如下:
为啥呢?
查看得之,pytest在某个版本之后修改了,我当前使用的pytest版本是pytest-5.4.3
那么怎么处理呢?
一)不理会,一样可以继续使用,但就是会不warings显示,不友好
二)将标签注册,就不会显示warnings了
那么方法二怎么注册?
先不急,pytest有以下几个内置标签可以使用
1) usefixtures 后需文章中介绍吧
2) filterwarnings 告警过滤用例
3) skip 直接跳过用例不执行
4) skipif 满足什么条件时跳过用例
5) xfail 满足条件时,直接失败用例
6) parametrize 参数化
所以在写标签过程中,尽量避免使用这些关键字
标签注册的方法:
1) 将自定义的标签注册,只需要在pytest.ini文件中写如下配置
[pytest] markers = slow: marks test as slow
不同的标签要新写,冒号后面的是解释,可写可不写
我们再次运行,已经没有告警了
2) 使用第3 方插件注册
在conftest.py中写如下内容
import pytest def pytest_configure(config): config.addinivalue_line(“markers”, “slow:this one of slow test”) config.addinivalue_line(“markers”, “fast:this one of fast test”)
这里加了2个标签,我们再次运行,也没有告警了
至于pytest.ini 和conftest.py怎么放,可以参考官方文档。-m 的使用方法和pytest测试框架介绍一中的一样