看下pytest的规则
代码语言:javascript复制.py 测试文件必须以test_开头(或者以_test结尾)
测试类必须以Test开头,并且不能有 init 方法
测试方法必须以test_开头
断言必须使用 assert
我们只要遵守这样的规律,就可以快速的编写Pytest测试用例。
执行多条测试用例#
pytest命令会执行当前目录及子目录下所有test_*.py及*_test.py格式的文件。一般来说,用例需要遵循标准的测试发现规则。
创建三个文件
我们执行pytest,然后我们看下结果
我们可以看到,如我们上面所说,pytest会将我们当前目录下面所有的test_*.py及*_test.py格式的文件都执行。
那么我们看下对应子目录会执行吗,我们可以在当前目录创建下,我们去输入pytest命令
看下最后的结果
注意:当前目录和子目录的文件名称不能相同,如果相同会遇到如下错误
所以我们在编写测试用例的时候,各个目录的测试用例文件的名称一定要唯一。
如何在一个类组织多个测试用例呢。我们知道在unittest中很简单,直接继承对应的类就可以,那么pytest呢,pytest更简单,我们看下
代码语言:javascript复制def add(a:int,b:int):
return a b
class TestClass(object):
def test_one(self):
assert add(1,3), 4
def test_two(self):
x = "hello"
assert x.__contains__('hell')
我们执行下
代码语言:javascript复制pytest -q testone/py_test.py
结果