pytest 获取方法名 pytest的main
转载
"""
Pytest框架介绍,test_开头或——test结尾命名
"""
import pytest
class Test():
def test_01(self):
print("这是一条注册用例")
def test_02(self):
print("这是一条登录用例")
def test_03(self):
print("这是一条xxx用例")
import pytest
pytest.main(["-s", "-m run"]) # 更加方便的运行用例
"""
组合使用,分优先级使用
pytest.main(["-v", "s"])
pytest.main(["-q", "s"]) # 报错
pytest.main(["-v", "p"]) # 报错
注意点:
1.命令可以共存
2.使用-q 的时候,是不可以使用-s,也不可以使用-v,因为优先级的效果
"""
'''
pytest.main(["-s"])
# 更加方便的运行用例[] list 在python中是一个数据类型,用于遍历
# pytest 运行命令的时候会去检索,列表里面的数据,
# 发现有-s,运行用例会显示用例中的输出 (print)
# -q 只显示整体的测试结果
# -v 用于显示每个测试函数的执行结果
import pytest
class Test():
def setup_class(self):
# print("类级别 预置条件") # 运行而不执行
pass
def teardown_class(self):
print("类级别 重置环境")
def setup(self):
print("函数方法级别 预置条件")
def teardown(self):
# print("函数方法级别 重置环境")
pass
def test_01(self):
print("这是一条注册用例")
def test_02(self):
print("这是一条登录用例")
def test_03(self):
print("这是一条xxx用例")
# 前置条件只限于当前py文件里面
# Pytest的高级语法之高级匹配
import pytest
'''
mark的方式; 可以使我们用例得到一个标签标识;
在用例**函数**上面 添加 @pytest.mark.XXX
XXX--是标识名称(自定义)
'''
class Test():
def setup_class(self):
#print("类级别 预置条件")
def teardown_class(self): #在teardown 后面加上一个:_class
print("类级别 重置环境")
def setup(self):
print("函数方法级别 预置条件")
def teardown(self):
#print("函数方法级别 重置环境")
@pytest.mark.run
def test_01(self):
print("这是一条注册用例")
@pytest.mark.run
def test_02(self):
print("这是一条登录用例")
def test_03(self):
print("这是一条xxx用例")
"""
pytest装饰器,只运行带有标识符的用例:@pytest.mark.run
新建个py文件去运行如下图:
"""
import pytest
pytest.main(["-s", "-m run"])
"""
-m 是mark的缩写,去匹配标识为 run 的用例
# Pytest的高级语法之预置条件、重置环境的写法:
import pytest
class Test():
# def setup_class(self):
# print("类级别 预置条件")
#
# def teardown_class(self): # 在teardown 后面加上一个:_class
# print("类级别 重置环境")
# def setup(self):
# print("函数方法级别 预置条件")
#
# def teardown(self):
# print("函数方法级别 重置环境")
@pytest.mark.run
def test_01(self):
print("这是一条注册用例")
@pytest.mark.run
def test_02(self):
print("这是一条登录用例")
def test_03(self):
print("这是一条xxx用例")
'''
文件命名是固定写法: 只能命名为 conftest.py
写 预置条件和重置环境的函数
'''
import pytest
@pytest.fixture(scope="function", autouse=True)
def fix():
print("预置条件")
yield
print("重置环境")
"""
1、要在文件目录中,创建一个conftest.py;
在这个文件中引用pytest.fixtrue(scope="作用域",autouse=True)
在文件中pytest.fixtrue构建一个函数,以装饰器的方式去构建一个函数:
ex:
@pytest.fixtrue(scope="作用域",autouse=True)
def function() # 函数(function)名字不规定
构建预置条件
yeild
构置后置条件
yeild:关键字;yeild返回内容之后,继续运行
"""
import pytest
pytest.main(["-s", "-m run"])
# 生成报告
import pytest
pytest.main(["-m run", "--html=report/report.html"])
"""
生成报告:
pytest-html
下载:pip install pytest--html
main["--html=文件路径.html"]
注意事项:
要在报告中显示输出的内容,需要在命令中不要使用: -s /-v /-q
"""
本文已存档:链接:https://pan.baidu.com/s/1l053GiWitZJb_dpHLBHT7g?pwd=
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。