![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
pytest
pytest
久醉绕心弦,
人生短短几个秋!
展开
-
allure测试报告
下载allure: https://github.com/allure-framework/allure2/releases,解压后将bin目录配置环境变量。如下:安装插件:pip3 install allure-pytest简单介绍下@allure装饰器常用功能:@allure.title 装饰器使测试标题更具可读性@allure.description(str)详细的测试用例描述@allure.feature # 用于描述被测试产品需求@allure.story # 用于描述featur原创 2021-01-18 10:11:01 · 303 阅读 · 0 评论 -
pytest失败用例重运行机制
安装插件:pip install pytest-rerunfailures运行方式一:命令行参数中指定“–reruns=num、–renruns-delay=time”,其中num为失败用例的重新运行次数,time为为重运行用例之间的时间间隔。如下表示失败的用例可以重新运行2次,第一次和第二次的时间间隔时间为3秒钟运行方式二:也可以通过装饰器的方式@pytest.mark.flaky指定用例的重运行次数,但命令行里面的reruns将不会生效,如下装饰器指定运行3次,命令行指定2次,实际重运行了3次。原创 2021-01-18 10:06:33 · 1145 阅读 · 0 评论 -
pytest--测试夹具fixtrue(四)
当想在运行测试用例前运行一些代码时,如测试数据的准备,数据库的初始化连接、关闭;打开浏览器、关闭浏览器;等前置条件后置处理都可以使用fixture来实现。创建方法如下:定义fixture与普通函数差不多,唯一区别就是在函数上加装饰器@pytest.fixture(),fixture命名不要以test开头,跟用例区分开。如需引用fixtrue的前置条件则需要把fixture的函数名称做为用例函数的参数传入。如下:执行test_one时会先执行fix函数,test_two则没有执行引用fixtrue方原创 2020-12-29 14:29:24 · 774 阅读 · 8 评论 -
pytest--参数化(三)
前面用unittest框架时写过第三方库ddt驱动的相关文章,今天主要介绍下pytest的参数化是如何实现的,在 pytest 中并不需要额外的库,通过 pytest.mark.parametrize()即可实现参数化;将代码与数据进行分离,在测试过程中的将数据提取出来,通过参数传递不同的数据来驱动用例运行举例来看下具体用法:装饰器接收两个参数,一个参数是以字符串的形式标识用例函数的参数,第二个参数以列表或元组的形式传递测试数据,需要注意test_login函数的参数a必须与装饰器中字符串形式的a必须原创 2020-12-15 13:57:25 · 275 阅读 · 0 评论 -
pytest--标签及命令行参数(二)
用例标签及运行:当测试用例比较多的时候,只想运行其中的一个或多个时可以通过标签标记测试用例,然后执行的时候通过标签筛选而指定运行。如下通过@pytest.mark.标签名标记用例,运行时通过 “-m 标签名”:一共3个测试用例,只执行了test_one,剩下两个未选定而没有执行,虽然执行成功了,但是会发出警告提示标签未注册,注册标签可以写在配置文件pytest.ini中,如下:再次执行,结果如下:标记整个类:此时会运行此类下的所有测试用例标记组合,如下每个测试函数都加了标记,运行时可以通原创 2020-12-14 16:10:08 · 430 阅读 · 0 评论 -
pytest--简介及用例运行规则(一)
pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。根据pytest的官方网站介绍,它具有如下特点:1.非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考2.能够支持简单的单元测试和复杂的功能测试3.支持参数化4.支持重复执行(rerun)失败的case5.支持运行由 unittest编写的测试case6.方便的和持续集成工具jenkins集成...原创 2020-12-11 16:33:32 · 1189 阅读 · 0 评论