pytest使用mark跳过测试用例、测试类、测试模块
对测试用例打标签,在运行测试用例时就可根据标签名进行过滤要运行的用例,所以可以设置只走主流程的用例
使用方法:
1、注册标签名
2、在测试用例、测试类、测试模块文件前加:@pytest.mark.已注册的标签名
3、运行:
a)有命令行运行:pytest -m ‘ 注册的标签名 ‘
b)有以main函数运行: pytest.main( [ '-s',‘demo’ ] )
注册标签名
有两种方法注册标签名
1、创建pytest.ini文件,在文件中添加标签名,如:
[ pytest ]
markers =
smoke:marks tests as slow (select with '-m' ) ---冒号后是可选的信息
serial:
test:
2、创建conftest.py文件,通过hook函数注册
a)单个标签名注册:
def pytest_configure(config):
config.addinivalue_line( ' markers', 'smoke: 标记为只运行冒烟用例')
b)多个标签名注册:
def pytest_configure(config):
markers_list = ['smoke', 'serial', 'test']
for i in markes_list:
config.addinivalue_line('markers', i)
在测试用例添加标签名
1、在测试函数前加标签名

2、在测试类前加标签名

运行已加上标签名的用例
两种方法
1、在命令行中运行:pytest -m ‘ 注册的标签名 ‘
2、以main函数运行: pytest.main( [ '-m',‘demo’ ] ),此方法需保证是非unittest模式下运行

浙公网安备 33010602011771号