前言
在使用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__
方法。希望本文能够帮到大家!