access重复数据累计_Pytest框架使用参数化、失败重跑、重复运行、报告、常用命令...

本文介绍了Pytest框架的使用,包括参数化测试用例,失败重跑机制,重复运行及超时设置,并详细讲解了如何生成不同类型的测试报告,如Html、ResultLog和Allure。同时,列举了一些Pytest的常用命令。
摘要由CSDN通过智能技术生成

一、Pytest--参数化

在测试用例前面加上@pytest.mark.parametrize('参数名','列表数据')

参数名: 用来接收每一项数据,作为测试用例的参数

列表数据: 一组测试数据

示例1:

@pytest.mark.parametrize("data",LD.phone_data)

deftest_login_0_user_wrongFormat(self,data,access_web):

   #步骤:输入用户名、密码、点击   access_web[1].login(data['user'],data['passwd'])   assert  access_web[1].get_errorMsg_form_loginArea()

示例2:

@pytest.mark.parametrize("user,pwd",[("18221124104",111111),("18200000000",111111)])

63b372cf7ce40ca4d7ed664be848b2a3.png

二、Pytest--失败重跑

1.Pytest提供了失败重试机制:
插件名称:rerunfailures
安装方法:pip install pytest-rerunfailures

2.使用方式:
命令行参数形式:
命令:pytest --reruns 重试次数
比如:pytest --reruns 2 表示:运行失败的用例可以重新运行2次

命令:pytest --reruns 重试次数 --reruns-delay 次数之间的延时设置(单位:秒)
比如:pytest --reruns 2 --reruns-delay 5 表示失败的用例可以重新运行2次,第一次和第二次的间隔时间为5秒钟

三、Pytest--重复运行、标记超时

1.Pytest提供了重复运行、标记超时机制:
插件名称:repeat(重复运行)、timeout(标记超时)
安装方法:pip install pytest-repeat、pip install pytest-timeout

2.使用方式:
命令行参数形式:
命令:pytest  --count= 重试次数
比如:pytest demo.py --count=5 表示:运行用例重复运行5次
或者直接在用例前面加上@pytest.mark.repeat(5)

命令:pytest  --timeout= 超时时间(单位:秒)
比如:pytest demo.py --timeout=5 表示:运行用例重复运行5秒
或者直接在用例前面加上@pytest.mark.timeout(5)

四、Pytest--生成报告

pytest可以生成多种样式的结果: (路径均为相对路径)

1.生成Html 测试报告 => pytest demo --html=report.html(安装pytest-html)

如:命令:  pytest test_api.py -s  --html=../test_result/report.html

2.生成 ResultLog 格式的测试报告,命令: --resultlog=report/log.txt

3.生成Allure报告命令:

pytest test_hooSwap_api.py -s -v --alluredir=../test_result/Allure/data    # 产生数据源

allure generate ../test_result/Allure/data -o ../test_result/Allure/html/ --clean  #  产生报告

      allure serve ../test_result/Allure/data   # 直接打开测试报告

五、Pytest--常用命令

-s 指定打印的详细信息,打印print()中输出的调试信息等 => pytest a.py -s

-v 打印的信息有passed和failed标志,并且打印出来的信息包含路径  => pytest test_se.py -s -v

-m 执行特定的标签名运行(标签需要在pytest.ini中进行注册) => pytest -m

-k 执行用例包含“关键字”的用例 => pytest -k

-q 简化控制台的输出 => pytest -q

运行模块中的指定用例 => pytest pytest_test.py::test_begin

运行模块中类下面的指定用例 => pytest pytest_test.py::TestCase::test_01_sum

c61bce435116463479352b00affddb6d.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值