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创建只读属性对象的方法(ReadOnlyObject)
Feb 10 Python
利用 Monkey 命令操作屏幕快速滑动
Dec 07 Python
Python实现两个list对应元素相减操作示例
Jun 09 Python
python 利用栈和队列模拟递归的过程
May 29 Python
如何安装多版本python python2和python3共存以及pip共存
Sep 18 Python
Python 200行代码实现一个滑动验证码过程详解
Jul 11 Python
基于Python实现大文件分割和命名脚本过程解析
Sep 29 Python
matplotlib quiver箭图绘制案例
Apr 17 Python
python实现一次性封装多条sql语句(begin end)
Jun 06 Python
python的json包位置及用法总结
Jun 21 Python
浅析Python 字符编码与文件处理
Sep 24 Python
用 Python 定义 Schema 并生成 Parquet 文件详情
Sep 25 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 addslashes 函数详细分析说明
2009/06/23 PHP
php实现的SESSION类
2014/12/02 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
Yii 2中的load()和save()示例详解
2017/08/03 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
jquery ajax 登录验证实现代码
2009/09/23 Javascript
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
JavaScript自定义日期格式化函数详细解析
2014/01/14 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
Javascript中的默认参数详解
2014/10/22 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
解析浏览器端的AJAX缓存机制
2016/06/21 Javascript
vue2.0之多页面的开发的示例
2018/01/30 Javascript
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
Webpack path与publicPath的区别详解
2018/05/03 Javascript
vue多次循环操作示例
2019/02/08 Javascript
深入了解响应式React Native Echarts组件
2019/05/29 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
js实现跟随鼠标移动的小球
2019/08/26 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
python实现绘制树枝简单示例
2014/07/24 Python
python按照多个字符对字符串进行分割的方法
2015/03/17 Python
python自动发送邮件脚本
2018/06/20 Python
eclipse创建python项目步骤详解
2019/05/10 Python
Python 脚本的三种执行方式小结
2019/12/21 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
便利店的创业计划书
2014/01/15 职场文书
恐龙的灭绝教学反思
2014/02/12 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
教师师德师风个人整改方案
2014/09/18 职场文书
群众路线教育实践活动整改落实情况汇报
2014/10/28 职场文书
《走遍天下书为侣》教学反思
2016/02/22 职场文书
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
Python 中 Shutil 模块详情
2021/11/11 Python
yyds什么意思?90后已经听不懂00后讲话了……
2022/02/03 杂记