4.用例筛选:pytest - mark
给用例打个标记 - 设计用例的时候就打标记 - 有目的的
先注册标签名
1)pytest.ini文件 – 注释不能使用中文
[pytest]
markers =
标签名1: miao shu xinxi
标签名2
demo
2)打标记范围:测试用例 测试类 模块文件
方法一:在测试用例上/测试类前面加:@pytest.mark.已注册的标签名
@pytest.mark.标记名
def test_aaa():
print("aaa")
assert True
@pytest.mark.标记名
class TestA:
def test_bbb(self):
print("bbb")
assert 1 == 2
其他标记方法:
# 在测试类里,使用以下声明(测试类下,所有用例都被打上该标签):
class TestA(object):
pytestmark = pytest.mark.已注册的标签名 # 单标签
# pytestmark = [pytest.mark.标签1,pytest.mark.标签2] # 多标签模式
# 在模块文件里,同理(py文件下,所有测试函数和测试类里的函数,都有该标签)
import pytest
pytestmark = pytest.mark.已注册的标签名 # 单标签
# pytestmark = [pytest.mark.标签1,pytest.mark.标签2] # 多标签模式
def test_aaa():
print("aaa")
assert True
class TestA:
def test_bbb(self):
print("bbb")
assert 1 == 2
5.运行:
执行顺序
a.文件名 - ASCII
b.文件内部 - 代码的先后顺序,从上到下
1.cmd -
目录下全部搜索用例: pytest -s -v
只运行标记的用例:pytest -m 标记 -s -v
2.运行某个模块下 pytest -m 标签名 -s -v 模块名
3.run.py
import pytest
pytest,main(["-s","-v","-m","标签名"]) # 选中的用例
pytest.main() # 收集到的全部