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自动生成文章
Dec 25 Python
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
Apr 05 Python
Python实现包含min函数的栈
Apr 29 Python
python设计模式大全
Jun 27 Python
Django实现跨域请求过程详解
Jul 25 Python
django foreignkey外键使用的例子 相当于left join
Aug 06 Python
python NumPy ndarray二维数组 按照行列求平均实例
Nov 26 Python
Python如何读取文件中图片格式
Jan 13 Python
Python3基本输入与输出操作实例分析
Feb 14 Python
PyCharm中如何直接使用Anaconda已安装的库
May 28 Python
pytorch加载自己的图像数据集实例
Jul 07 Python
Python3压缩和解压缩实现代码
Mar 01 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
虫族 Zerg 魔法科技
2020/03/14 星际争霸
ADODB类使用
2006/11/25 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
PHP 设计模式系列之 specification规格模式
2016/01/10 PHP
PHP中PDO事务处理操作示例
2018/05/02 PHP
详解关于php的xdebug配置(编辑器vscode)
2019/01/29 PHP
javascript cookies操作集合
2010/04/12 Javascript
js鼠标滑过弹出层的定位IE6bug解决办法
2012/12/26 Javascript
JavaScript定义类的几种方式总结
2014/01/06 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
Vue2单一事件管理组件通信
2017/05/09 Javascript
通过学习bootstrop导航条学会修改bootstrop颜色基调
2017/06/11 Javascript
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
微信小程序数据统计和错误统计的实现方法
2019/06/26 Javascript
js实现div色块拖动录制
2020/01/16 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
Python编程中使用Pillow来处理图像的基础教程
2015/11/20 Python
Linux下将Python的Django项目部署到Apache服务器
2015/12/24 Python
Python中input与raw_input 之间的比较
2017/08/20 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
Linux下python3.6.1环境配置教程
2018/09/26 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
2019/03/13 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
Django实现基于类的分页功能
2019/10/31 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
一文解决django 2.2与mysql兼容性问题
2020/07/15 Python
如何在python中实现线性回归
2020/08/10 Python
详解移动端h5页面根据屏幕适配的四种方案
2020/04/15 HTML / CSS
汉森批发:Hansen Wholesale
2018/05/24 全球购物
财务信息服务专业自荐书范文
2014/02/08 职场文书
质检部经理岗位职责
2014/02/19 职场文书
机关作风整顿个人整改措施2014
2014/09/17 职场文书
欢迎家长标语
2014/10/08 职场文书
婚礼领导致辞大全
2015/07/28 职场文书