Pytest学习
之前有学过unittest,再网上搜索资料时了解了pytest,于是乎,开始阅读pytest的资料,今天来进行了实操。看看unittest和pytest究竟有什么不一样,为什么都觉得pytest比较“高端”,而unittest比较“low”。
1、fixture的学习
建立一个新的目录,文件名必须叫做:conftest
说说这个文件的作用,为了让测试用例更简洁,之前的程序每个测试用例前都必须加setup和teardown来进行代码运行前和运行后的操作。现在我们就只要新建个文件夹,单独管理预制前的操作场景就行啦。
看看运行结果:**
conftest.py 配置需要注意以下点:
conftest.py 配置脚本名称是固定的,丌能改名称
conftest.py 不运行的用例要在同一个 pakage 下,并且有
init.py 文件
不需要 import 导入 conftest.py,pytest 用例会自动查找
2、-fixture 之 yield 实现 teardown
既然有 setup 那就有 teardown,fixture 里面的 teardown 用 yield 来唤醒 teardown的执行。
结果是:
在当前.py 模块里,第一次调用前执行一次,调用后执行一次。
再来看不加scope的结果:
3、yield异常:如果其中一个用例出现异常,丌影响 yield 后面的 teardown 执行,运行结果互不影响。
全部的用例执行完成后,唤醒teardown。
4、setup异常:不会去执行yield后面的teardown了。