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

泰安集团网站建设多少钱400电话安装佛山营销网站建设

泰安集团网站建设多少钱,400电话安装佛山营销网站建设,品牌推广方案案例,住房城乡建设厅网站准考证前言 断言是完整的测试用例中不可或缺的因素,用例只有加入断言,将实际结果与预期结果进行比对,才能判断它的通过与否。 unittest 框架提供了其特有的断言方式,如:assertEqual、assertTrue、assertIn等,py…

前言

断言是完整的测试用例中不可或缺的因素,用例只有加入断言,将实际结果与预期结果进行比对,才能判断它的通过与否。

unittest 框架提供了其特有的断言方式,如:assertEqual、assertTrue、assertIn等,pytest 同样有自己的断言方式,即使用assert进行断言。

assert

pytest 中使用python源生态assert字段进行断言。

常用断言方式

pytest常用的断言方式如下:

  • 判断是否相等,assert Actual(实际结果) == Expected(期望结果)
  • 判断是否不相等,assert Actual != Expected,其他如 >、<、>=、<= 都可直接使用。
  • 判断xx是否为真,assert xx
  • 判断xx是否不为真,assert not xx
  • 判断b是否包含a,assert a in b
  • 判断b不包含a,assert a not in b

assert 断言的对象可以是字符串、int、float、list、dict、tuple 任一类型。

使用示例

自定义了一个查询所有用户信息接口,返回参数格式如下:

{"code": 1000,"data": [{"id": 1, "username": "刘德华", "sex": 0, "telephone": "12306", "address": "香港九龙区"},{"id": 2, "username": "梅艳芳", "sex": 1, "telephone": "95511", "address": "上海黄浦区"},{"id": 3, "username": "陈百强", "sex": 0, "telephone": "10086", "address": "北京海淀区"},]
}

用例断言如下:

def test_get_all_users():'''查询所有用户信息'''url = "http://127.0.0.1:5000/users"res = requests.get(url=url).textres = json.loads(res)# 断言是否相等assert res['code'] == 1000# 断言返回结果中data是否为True(这里其实就是判断是否为空)assert res['data']Andy = {"id": 1, "username": "刘德华", "sex": 0, "telephone": "12306", "address": "香港九龙区"}# 断言返回结果中data是否包含刘德华的信息assert Andy in res['data']

断言通过:

我们修改一下脚本让断言不通过,如下:

def test_get_all_users():'''查询所有用户信息'''url = "http://127.0.0.1:5000/users"res = requests.get(url=url).textres = json.loads(res)# 断言是否相等assert res['code'] == 1001# 断言返回结果中data是否为True(这里其实就是判断是否为空)assert not res['data']Andy = {"id": 1, "username": "刘德华", "sex": 0, "telephone": "12306", "address": "香港九龙区"}# 断言返回结果中data是否包含刘德华的信息assert Andy not in res['data']

运行结果如下:

可以看到,code 的 Actual 为1000,而 Excepted 为1001,所以断言直接报错,不继续执行后面的代码。

断言结果添加异常信息

我们可以在断言异常的时候,输出一些提示信息,这样断言报错后,可以方便我们查看原因。

自定义的用户信息接口可以查询某个用户的信息,对它编写测试脚本如下:

def test_get_user():'''查询所有用户信息'''url = "http://127.0.0.1:5000/users/1"res = requests.get(url=url).textres = json.loads(res)assert res['code'] == 1000assert res['data']['username'] == "张学友", "判断返回是否为张学友,实际返回:{}".format(res['data']['username'])

运行结果如下:

总结

pytest 还能对执行过程中产生的 Exception 及 Warnning 进行断言,但这些情况在我们的测试中很少会用到,所以不做过多阐述。

 

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

相关文章:

  • 四川网站网站建设平台推广公众平台营销
  • 模板网站建设的弊端广东恒力建设工程有限公司网站
  • 网站seo外链怎么做网站服务器参数查询
  • 网站建设 青海十大网站平台
  • 宝塔wordpress建站教程哪个网站可以做身份核验
  • 个人站长还有什么类型的网站可以做永州网站seo
  • 上海市建设工程 安全质量网站做网站宁波有什么的网络公司
  • 开发网站要注意什么同城引流用什么软件
  • 建立门户网站的步骤网站301是什么意思
  • 建设银行的投诉网站首页怎么投诉做网站的公司
  • 五金店网站模板成都网站建设哪便宜
  • php多平台商城网站系统建设网站推广的实际案例
  • 做么做好网站运营怎么看网站建设
  • asp.net 网站后台管理系统制作项目建设环境影响登记表在哪个网站
  • 网站建设程序策划书沧州地区做网站
  • 黔南网站建设公司名字大全简单好听
  • 夸克看网站要钱吗云南建网站
  • 网站的定位与功能多用户智能网站建设源码
  • 制作微网站的平台有哪些购物商城设计
  • asp网站镜像代码如何登录qq网页版
  • 我国网站开发ui设计软件手机版下载
  • 苏州建设招投标网站网站第一关键词怎么做
  • app取代网站速成网站建设
  • 怎么查看网站外链效果东莞市视频直播网站开发
  • 新手学做网站用什么软件企业年金怎么查
  • 网站做整合页面有做财经 直播的网站吗
  • 门户网站建设参考文献做网站起什么题目
  • 做卡盟开端网站要多少钱可以做公众号的网站吗
  • 当涂县微网站开发外贸网站建站用什么意思
  • 页游做的好的是哪个网站专门做旅游攻略的网站