Pytest是Python中最流行的自动化测试框架之一,简单易用,而且具有丰富的插件可以不断扩展其功能,同时也提供了丰富的断言功能,使得编写测试用例更灵活。
一、Pytest如何安装
一般都使用pip来安装:
1 |
|
二、Pytest如何编写用例
创建一个python文件(test_example.py),并编写以下代码:
1 2 3 4 5 6 7 |
|
三、Pytest如何运行用例
打开终端,在对应的工作目录下,输入命令:
1 |
|
四、Pytest如何实现参数化
1 2 3 4 5 6 7 8 9 |
|
五、Pytest如何跳过和标记用例
1 2 3 4 5 6 7 8 9 10 |
|
六、Pytest如何失败重执行
首先安装失败重跑插件:pytest-rerunfailures
1 |
|
插件参数:
命令行参数:–reruns n(重新运行次数),–reruns-delay m(等待运行秒数)
装饰器参数:reruns=n(重新运行次数),reruns_delay=m(等待运行秒数)
如果想要重新执行所有测试用例,直接输入命令:
1 |
|
上述首先设置了重新运行次数为2,并且设置了两次运行之间等待10秒。
如果想重新运行指定的测试用例,可通过装饰器来实现,命令如下:
1 2 3 4 5 6 |
|
七、Pytest如何使用夹具
首先创建夹具,代码如下:
1 2 3 4 5 |
|
使用夹具方式1:通过参数引用
1 2 |
|
使用夹具方式2:通过函数引用
1 2 3 4 |
|
八、Pytest如何进行夹具共享
夹具共享:conftest.fy文件,可以跨多个文件共享夹具,而且在用例模块中无需导入,pytest会自动发现conftest.py中的夹具。
fixture 优先级:当前所在模块---> 当前所在包的 conftest.py--->上级包的 conftest.py--->最上级的 conftest.py
九、Pytest如何设置夹具作用域
作用域执行的优先级:session > module > class > function
根据@pytest.fixture()中scope参数不同,作用域区分:
- function(函数):默认值。每个测试用例函数执行时都会执行一次。
- class(类):不论有多少测试用例,整个类只会运行一次。
- module(模块):不论有多少测试用例,整个模块(文件)下只运行一次。
- package(包):不论有多少测试用例,整个包(文件夹)下只运行一次。
- session:不论有多少测试用例,整个pytest下只会运行一次。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】