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在命令行下使用google翻译(带语音)
Jan 16 Python
Python格式化css文件的方法
Mar 10 Python
Python常用的文件及文件路径、目录操作方法汇总介绍
May 21 Python
Python实现的文本编辑器功能示例
Jun 30 Python
分分钟入门python语言
Mar 20 Python
pytorch中tensor的合并与截取方法
Jul 26 Python
python+influxdb+shell编写区域网络状况表
Jul 27 Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
Jul 03 Python
通过python调用adb命令对App进行性能测试方式
Apr 23 Python
pandas to_excel 添加颜色操作
Jul 14 Python
关于python pygame游戏进行声音添加的技巧
Oct 24 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数据库连接类~~做成一个分页类!
2006/11/25 PHP
PHP 第二节 数据类型之数值型
2012/04/28 PHP
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
2014/05/15 PHP
php中实现记住密码下次自动登录的例子
2014/11/06 PHP
[原创]解决wincache不支持64位PHP5.5/5.6的问题(提供64位wincache下载)
2016/06/22 PHP
微信封装的调用微信签名包的类库
2017/06/08 PHP
Js 获取HTML DOM节点元素的方法小结
2009/04/24 Javascript
JS小框架 fly javascript framework
2009/11/26 Javascript
jQuery Selector选择器小结
2010/05/06 Javascript
JS获取浏览器版本及名称实现函数
2013/04/02 Javascript
JS实现两表格里数据来回转移的方法
2015/05/28 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
轻松搞定js表单验证
2016/10/13 Javascript
PHP捕捉异常中断的方法
2016/10/24 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
2016/11/08 Javascript
vue日期组件 支持vue1.0和2.0
2017/01/09 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
jQuery中event.target和this的区别详解
2020/08/13 jQuery
用vite搭建vue3应用的实现方法
2021/02/22 Vue.js
Python3利用print输出带颜色的彩色字体示例代码
2019/04/08 Python
Django模型序列化返回自然主键值示例代码
2019/06/12 Python
Python实现Restful API的例子
2019/08/31 Python
Python气泡提示与标签的实现
2020/04/01 Python
Opencv python 图片生成视频的方法示例
2020/11/18 Python
使用Python下载抖音各大V视频的思路详解
2021/02/06 Python
adidas官方旗舰店:德国运动用品制造商
2017/11/25 全球购物
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
开学典礼演讲稿
2014/05/23 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
设立有限责任公司出资协议书
2014/11/01 职场文书
部门2015年度工作总结
2015/04/29 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
CSS 还能这样玩?奇思妙想渐变的艺术
2021/04/27 HTML / CSS
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS