前言
在使用Pytest进行测试时,良好的命名规范是编写清晰、易读和可维护的测试用例的重要组成部分。规范的命名使得测试用例的意图更加明确,便于团队成员理解和维护。本文就来给大家介绍一下pytest的命名规范。
Pytest命名规范
测试文件命名
测试脚本文件为python文件,此外文件名命名规则为test_.py
或者_test.py
格式的文件,如下列均为符合pytest要求的测试文件命名规范:
test_demo.py
test_01.py
test_.py
demo_test.py
01_test.py
_test.py
不符合测试文件命名规则的如下:
test.py
testdemo.py
Test_demo.py
TestDemo.py
Test_.py
Demo_Test.py
_Test.py
Test.py
Demo.py
测试函数测试类名默认命名规则
在测试脚本中,测试函数又分为两类,一种是直接定义在测试文件中的,比如如下:
def test_func():
assert 1==1
另一种则是使用类组织的在类内的测试函数,比如如下:
class TestDemo:
def test_func():
assert 1==1
测试类和测试函数命名规则总结为如下规则:
- 测试函数名必须以
test
开头 - 测试类名必须以
Test
开头 - 测试类中不能有
__init__(self)
方法
比如如下的测试函数均为符合pytest规则的测试函数:
def test_demo():
assert 1==1
def testdemo():
assert 1==1
def test():
assert 1==1
def test_():
assert 1==1
而如下测试函数则均为不符合pytest规则的函数,即不会被pytest发现。
def demo_test():
assert 1==1
def demotest():
assert 1==1
def _test():
assert 1==1
def Test():
assert 1==1
def Test_Demo():
assert 1==1
def TestDemo():
assert 1==1
def DemoTest():
assert 1==1
而对于使用类组织的测试函数,首先类必须满足要求,即类型以Test开头,并且类中没有__init__
方法,然后类中的测试函数名再符合测试函数的命名规则即以test开头时,才会被认为是测试脚本,如下:
class TestDemo:
def test_demo(self):
assert 1==1
class Test:
def test_demo(self):
assert 1==1
如果类名不是以Test开头或者类名以Test开头但是类中有__init__
方法时,不论类中的测试函数名是否符合pytest要求的规则,均不会被pytest识别。
总结
本文主要介绍了pytest的命名规则,pytest的命名规则非常重要,需要我们牢记命名规则,这样才能更好地使用pytest来执行测试,我们还需要记住一点,测试类中不能含有__init__
方法。希望本文能够帮到大家!
推荐
Python全栈开发与自动化测试开发班
由浅入深实战进阶,从小白到高手
以Python全栈开发为基础,深入教授自动化测试技能,为学员打造全面的技术能力。通过系统学习和实际项目实战,学员将具备在职场中脱颖而出的竞争力。不仅能够灵活运用Python进行开发,还能够保障项目质量通过自动化测试手段。这是一个全面提升职业竞争力的机会。
课程详情
Python开发必备基础技能与项目实战
Pvthon 编程语言/算法和数据结构/面向对象编程Web后端开发/前端开发/测试管理平台项目实战
人工智能ChatGPT实战
人工智能辅助学习各种开发和测试技能/Pytorch深度学框架/平台开发实战
数据分析与自动化办公
数据采集/Pandas与数据处理技术/ECharts与数据可视化技术/爬虫实战/自动化办公/批量文件处理
UI自动化测试与高级项目实战
Web自动化测试/App自动化测试/ PageObject设计模式
接口自动化测试
接口协议分析/Mock实战/服务端接口测试
性能测试
性能测试流程与方法/JMeter 脚本参数化/Grafana监控系统搭建
简历指导与模拟面试
1V1简历指导/模拟真实面试/测试开发岗面试全攻略名企私教服务
名企专家1v1辅导/行业专家技术指导/针对性解决工作难题/绩效提升辅导与晋升复盘
课程亮点
名企私教服务 先学习后付费 高额奖学金
专属社群+晚自习在线答疑
5V1全方位辅导作业+考试强化学习效果
简历修改 模拟面试 就业内推 面试复盘