05、pytest标记测试用例
·
在某些场景下,我们需要部分执行测试用例,这个时候可以给测试用例打标记。类似于testng里面的分组测试。
用法:@pytest.mark.mark_name
mark_name表示标记的名字,用装饰器标记后只运行标记的用例,其他用例则跳过不执行。
代码举例:
# 文件名:over.py
import pytest
class Test:
@pytest.mark.case1
def test001(self):
print('这是用例1')
@pytest.mark.case2
def test002(self):
print('这是用例2')
@pytest.mark.case3
def test003(self):
print('这是用例3')
if __name__ == '__main__':
pytest.main(['-s', 'over.py', '-m=case2'])
# 上述代码在测试函数前面用装饰器标记,每个函数都有相应的标记名,在main函数中运行的
# 时候多传入一个参数-m=case2,那么就会执行标记名为case2的测试用例,其他用例则不执行
如下,会标明1条测试用例通过,2条测试用例deselected(就是未被选中)

命令行运行效果:
cd 到py文件所在的目录,命令行:pytest -s over.py -m=case1
-s是控制台输出模式,-m=case1是执行标记名为case1的测试用例

-m标签说明:
一个:
-m = case1
同时运行多个:
-m = case1 or case2 or case3
排除法,凡是标记为case1的都不执行,标记不为case1的都执行:
-m = not_case1
排除法,凡是标记为case1或者case2的都不执行:
-m = not(case1 or case2)
更多推荐



所有评论(0)