码迷,mamicode.com
首页 > 其他好文 > 详细

pytest 数据驱动

时间:2020-07-20 15:23:32      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:webui   assert   用例   输出   分离   就是   class   逻辑   lazy   

数据驱动

有时候多个用例 比如说多个需要登录的用例,共同点是,它们的测试步骤一模一样的,只是

输入的数据不同,要检查的输出数据不同。

这批测试用例,就是典型的可以用 数据驱动 方式进行自动化用例。

如果有一批测试用例,具有 相同的测试步骤,只是测试参数数据不同。

自动化测试时,把数据从用例代码中 分离 开来,以后增加新的测试用例,只需要修改数据。

这就是数据驱动。

pytest 用例 的 数据驱动格式,只需如下定义 pytest -s 运行:

import pytest
# 引入公共逻辑代码的脚本
from lib.webui import loginAndCheck

class Test_错误登录:
# 数据驱动 装饰器:pytest.mark
@pytest.mark.parametrize(‘username,password,expectedalert,testName‘,[
(None,‘888888888‘,‘用户名不能为空。‘,‘不填账号,正确的秘密‘),
(‘13409222736‘,None,‘密码不能为空。‘,‘正确的账号,不填秘密‘),
])

# 创建一个函数 对数据驱动的数据遍历引用 调用两条用例
def test_UI_C001_002(self,username,password,expectedalert,testName):

# 调用公共逻辑代码 传入数据驱动的值
print(testName)
alertText = loginAndCheck(username,password)
assert alertText == expectedalert

缺点

如果要生成测试报告的话就不能分辨出是那条用例出的错误 按照喜欢使用

技术图片

 

pytest 数据驱动

标签:webui   assert   用例   输出   分离   就是   class   逻辑   lazy   

原文地址:https://www.cnblogs.com/sunzzc/p/13344955.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!