当前位置: 首页 > news >正文

intitlt:山西大同网站建设c 做网站看什么书

intitlt:山西大同网站建设,c 做网站看什么书,做外贸的网站主要有哪些内容,外贸订单一般在哪个平台接我们在做数据之前要知道几个问题 1、在代码层面怎么来数据驱动 2、yaml文件是什么 3、怎么用yaml文件实现对应的数据驱动 我们用的是pytest框架所以相对来说是简单的,我们通过pytest框架来实现,而框架中要数据驱动用到我们装饰器就好啦pytest.mark.p…

 我们在做数据之前要知道几个问题

1、在代码层面怎么来数据驱动

2、yaml文件是什么

3、怎么用yaml文件实现对应的数据驱动

我们用的是pytest框架所以相对来说是简单的,我们通过pytest框架来实现,而框架中要数据驱动用到我们装饰器就好啦@pytest.mark.parametrize(参数名,参数数据) 

那参数化就是DDT :把对应的数据提取出来 进行统一维护

参数1:参数的名字

参数2:  参数的数据列表

那我们的参数数据要什么数据格式?我们知道有字典 元祖 字符串....

我们要对应的数据话肯定是多组数据

[数据1,数据2,数据3]   列表

(数据1,数据2,数据3)元祖

[{k:v},{k:v},{k:v}]列表套字典------推荐,用的比较多

[[1],[2],[3]]列表套列表 

[(1),(2),(3)]列表套元祖 

 好 那我们现在简单写一个小demo

import pytest
# data 是我们的数据
data = ['小王','小张','小李']
# 通过用这个装饰器(data传入的参数列表需要有一个参数名来接收name)
@pytest.mark.parametrize('name',data)
# 给到name以后 需要给到test_01参数 去接受这个值
def test_01(name):print('当前运行的用户名是:',name)if __name__ == "__main__":pytest.main(['-vs'])

运行结果

我们中间的数据项有多少个,他就会执行多少次

我们的data中有三个 就执行三次

那如果列表套列表我们要怎么写呢--通过下标获取

import pytest
# data 是我们的数据
data = [['小王',22],['小张',23],['小李',24]]
# 通过用这个装饰器(data传入的参数列表需要有一个参数名来接收name)
@pytest.mark.parametrize('name',data)
# 给到name以后 需要给到test_01参数 去接受这个值
def test_01(name):print('当前运行的用户名是:',name[0])print('当前运行的用户年龄是:', name[1])if __name__ == "__main__":pytest.main(['-vs'])

运行结果

好 我们学会可以后在项目中怎么应用呢?

我们对应的登陆中是不是有对应的账户名密码等等一些参数

那我们可以在登陆写一下测试用例

登陆成功 密码错误 用户名错误 等等。。。

那我们来写一下

先导包

@pytest.mark.parametrize()

首先我们的格式是列表套字典

data = [{'username': 'aaa', 'password': '1245346', 'res': '登录成功'},{'username': 'aaa', 'password': '1234ddd56', 'res': '密码错误'},{'username': 'djjdjd', 'password': '15634432', 'res': '用户名不存在'}
]

 然后把data和我们的参数传入装饰器中

@pytest.mark.parametrize('case_info',data)

再把我的case_info传入方法中

def test_01_login(case_info):

接下来我们data中和断言中也需要相应改动---引用上面的数据

 data = {'accounts': case_info['username'],'pwd':  case_info['password'], 'type': 'username'}
assert mag_ret == case_info['res'], f'错误,我们当前返回的值是:{mag_ret}'

写好啦 我们接下来运行看看

第一个用例通过 这是正向测试 期望和实际一样

第二个也是 我们改了密码 期望是密码错误 实际返回的也是密码错误

第三个 账号密码都不对 期望返回的是用户名不存在但是实际返回的是登陆账号不存在

我们看懂了DDT了以后只需要维护我们的测试用例,如需要测试 直接引用就好啦 是不是很方便

但是目前我们只是把测试数据提取出来

那不同的接口可不可以把接口全部提取出来呢?---可以

因为我们发送请求无非是四要素不一样 你需要提取什么就提取什么

那我们这些都提取出来,我们可以通过yaml文件来进行操作,或者说我们需要有一个存放数据的地方excel 、yaml 也可以数据库这些都是可以的。

以上我们知道了 我们的数据驱动是通过装饰器来实现

那我们接下来说yaml是什么

http://www.yayakq.cn/news/113918/

相关文章:

  • 科技公司网站开发成都房地产政策
  • 手机网站建设公司电话咨询asp网站开发教程百度云
  • 如何给网站做十大招聘网站排行榜
  • 无锡锡牛网站建设电商网站前端制作分工
  • 网站选项卡如何做自适应房产交易网站建设策划案
  • 云南建站公司网站建设 seo模块
  • 网站一般的后台大连零基础网站建设教学服务
  • 农林牧渔行业网站建设小红书内容营销
  • 星月教你做网站回顾文档如何快速做网站排名
  • 做宝宝衣服的网站什么项目适合新手创业
  • wordpress模版推荐seo北京
  • 暗红色网站外贸出口流程
  • 青岛做网站建网站876游戏平台网页游戏大全
  • 怎么提高网站seo优化关键字排名标题翻译为英文wordpress
  • 手机 dns 国外网站学生个人网页
  • 高品质网站开发中国设计师联盟官网
  • wordpress商城主题模板下载地址济南优化网站方法
  • 做家政在哪个网站找博客网站怎么建设
  • wordpress 拿站个人博客是什么
  • 深圳网站建设 设计首选公司写文章的网站
  • 惠州做公司网站网站更新怎么做
  • dz论坛识别手机网站自动跳转温州市城市建设档案馆网站
  • 教做详情页的网站网站建设行业研究
  • 建什么类型个人网站政务网站模板
  • 定制网站建设开发阿里主机wordpress
  • 贵阳市城乡建设局网站wordpress post slug
  • 微信公众号h5网站开发深圳做网站的公司 cheungdom
  • 搭建个网站凡科建设的网站如何
  • 自己做网站销售世界羽联巡回赛总决赛
  • 网站开发公司php工资软件开发工程师的薪资待遇