本篇说一下如何用pytest实现测试用例和执行时的常用参数
一、用例结构
pytest中对于测试用例的构成分三个层级,测试模块、测试类和测试用例,所谓的测试模块就是文件,测试类指模块中封装的类,而测试用例就是定义的测试方法,需要注意的是一个测试方法就是一个测试用例。
2.1、命名规则
测试模块:要以test_*.py或*_test.py的方式命名,这样指定目录执行测试时,会执行所有此类的文件
测试用例类:Test*的形式定义类,并且不能有__init__初始化函数,否则不会当做测试用例类执行
测试用例:test*的形式定义,一般不能有参数(参数化的用例后面再讲)。
如下代码,我们在BASE目录有一个test_file.py的文件,文件里面有定义两个方法和一个类,类里面有一个方法
from BaseLog import logger
import pytest
def case1_test():
#测试函数
logger.info("我是testcase1")
print("我是test_case1")
assert 1
def test_case2():
#测试函数
logger.info("我是testcase2")
print("我是test_case2")
assert 0
class Testclass:
def test_case3(self):
logger.info("我是测试类中的test3")
assert 1
def test_case4(self):
logger.info("我是测试类中的test4")
assert 0
if __name__ =="__main__":
# -s:显示用例中的输出
# -v:输出更详细的用例执行信息
# __file__:本文件
pytest.main(["-vs","BASE/"])
执行结果如下
<
本文详细介绍了Pytest测试框架的用例结构,包括测试模块、测试类和测试用例的命名规则,并阐述了如何通过pytest执行测试用例。此外,还详细列举了pytest执行参数,如-s显示控制台输出,-v显示用例全路径,-q简洁显示,-n支持多线程执行,-x和--maxfail控制错误响应,以及-m通过标记选择执行特定用例。
最低0.47元/天 解锁文章
934

被折叠的 条评论
为什么被折叠?



