1. pytest用例规则
- 测试文件以
test_
开头(以_test
结尾也可以) - 测试类以
Test
开头,并且不能带有init
方法 - 测试函数以
test_
开头 - 断言使用
assert
- 所有的包package必须要有
__init__.py
文件
2. 参数化parametrize
pytest.mark.parametrize装饰器可以实现测试用例参数化。
若要获得多个参数化参数的所有组合,可以堆叠参数化装饰器。
3. 常用断言
pytest里面断言实际上就是python里面的assert断言方法,常用的有以下几种:
- assert xx 判断xx为真
- assert not xx 判断xx不为真
- assert a in b 判断b包含a
- assert a == b 判断a等于b
- assert a != b 判断a不等于b
4. skip跳过用例
跳过测试函数的最简单方法是使用跳过装饰器标记它,可以传递一个可选的原因:`@pytest.mark.skip(reason=”no way of currently testing this”)`
如果您希望有条件地跳过某些内容,则可以使用skipif代替。 这是标记测试的示例在Python3.6之前的解释器上运行时要跳过的函数:`@pytest.mark.skipif(sys.version_info < (3,6),)`