Python接口测试结果集实现封装比较


Posted in Python onMay 01, 2020

引言

接口测试执行完后,我们需要进行断言,断言的主要目的是用代码来判断实际结果和预期结果是否一致,这跟手工测试中用肉眼去判断是一样的思路。既然这样,我们可以将已知的预期结果和未知的实际结果简单的封装成一个类,然后写一个比较的函数来判断,最后得到结果。

知识点预热

在讲代码之前,先了解一下python的运算符is和==。可能有些人经常用,但是却不知道是什么意思,知其然而不知其所以然。

python对象包括三个基本要素:id(身份标识)、type(数据类型)和value(值)。

1、"is" 是身份运算符,判断两个对象是否相同,是判断id是否相同,也就是内存地址是否相同。

2、"=="是比较运算符,判断两个对象的值是否相同,也就是value。

示例:

# 数值型

Python接口测试结果集实现封装比较

# 字符串

Python接口测试结果集实现封装比较

# 元组

Python接口测试结果集实现封装比较

# 列表

Python接口测试结果集实现封装比较

# 字典

Python接口测试结果集实现封装比较

# 集合

Python接口测试结果集实现封装比较

结论:通过上面几个例子可以看出,两个对象只有int和str的时候,a is b才为True。而当a和b是tuple,list,dict或set型时,a is b为False。

封装

上面已经介绍了如何比较两个对象是否相同,那么我们在比较两个结果,实际结果和预期结果是否相同也可以用这种方法,但是一定要记住是比较value还是内存地址。现在我简单对判断测试结果进行封装,不过这里我用的是包含,当然你可以用"=="。

具体代码:

__author__ = 'Leo'
 
 
class CompareStr(object):
  def is_contains(self,str1,str2):
    """
    判断预期结果与实际结果是否相同
    :param str1: 预期结果
    :param str2: 实际结果
    :return flag: 标记
    """
    self.flag = None
    if str1 in str2:
      self.flag = True
    else:
      flag = False
    return self.flag
 
if __name__ == '__main__':
  cs = CompareStr()
  print(cs.is_contains('123','123456'))

运行结果:

Python接口测试结果集实现封装比较

总结

以上内容是一个简单的知识点,简单进行封装。小知识点容易被忽略,记一记总是好的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理cookie详解
Feb 07 Python
python实现端口转发器的方法
Mar 13 Python
python的random模块及加权随机算法的python实现方法
Jan 04 Python
linux环境下的python安装过程图解(含setuptools)
Nov 22 Python
matplotlib绘图实例演示标记路径
Jan 23 Python
浅谈Python爬虫基本套路
Mar 25 Python
CentOS7安装Python3的教程详解
Apr 10 Python
Python中模块(Module)和包(Package)的区别详解
Aug 07 Python
PyCharm使用之配置SSH Interpreter的方法步骤
Dec 26 Python
python如何通过twisted搭建socket服务
Feb 03 Python
Python调用飞书发送消息的示例
Nov 10 Python
学会用Python实现滑雪小游戏,再也不用去北海道啦
May 20 Python
解决python虚拟环境切换无效的问题
Apr 30 #Python
python爬虫实现POST request payload形式的请求
Apr 30 #Python
Pycharm IDE的安装和使用教程详解
Apr 30 #Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
Apr 30 #Python
Python爬虫:Request Payload和Form Data的简单区别说明
Apr 30 #Python
如何配置关联Python 解释器 Anaconda的教程(图解)
Apr 30 #Python
python针对Oracle常见查询操作实例分析
Apr 30 #Python
You might like
php echo 输出字符串函数详解
2010/05/13 PHP
解析PHP对现有搜索引擎的调用
2013/06/25 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
jquery操作checkbox示例分享
2014/07/21 Javascript
js propertychange和oninput事件
2014/09/28 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
2016/05/05 Javascript
解决前端跨域问题方案汇总
2016/11/20 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
js 取消页面可以选中文字的功能方法
2018/01/02 Javascript
详解js根据百度地图提供经纬度计算两点距离
2019/05/13 Javascript
element-ui组件中input等的change事件中传递自定义参数
2019/05/22 Javascript
JS实现可视化音频效果的实例代码
2020/01/16 Javascript
JavaScript 事件代理需要注意的地方
2020/09/08 Javascript
nuxt静态部署打包相对路径操作
2020/11/06 Javascript
跟老齐学Python之集成开发环境(IDE)
2014/09/12 Python
Python2.x中str与unicode相关问题的解决方法
2015/03/30 Python
python 调用c语言函数的方法
2017/09/29 Python
django之自定义软删除Model的方法
2019/08/14 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
python实现字符串和数字拼接
2020/03/02 Python
欧洲领先的技术商店:eibmarkt.com
2019/05/10 全球购物
就业推荐表自我鉴定
2013/10/29 职场文书
安全生产责任书范本
2014/04/15 职场文书
英语教育专业自荐信
2014/05/29 职场文书
离婚协议书怎么写2014
2014/09/30 职场文书
老人节标语大全
2014/10/08 职场文书
公司给客户的感谢信
2015/01/23 职场文书
入党自荐书范文
2015/03/05 职场文书
毕业设计致谢语
2015/05/14 职场文书
竞聘书的秘诀
2019/04/02 职场文书
微信小程序实现聊天室功能
2021/06/14 Javascript
sql字段解析器的实现示例
2021/06/23 SQL Server
MySQL数据库完全卸载的方法
2022/03/03 MySQL
阿里云k8s服务升级时502错误 springboot项目应用
2022/04/09 Servers