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与js)两种实现
Feb 21 Python
Python实现获取网站PR及百度权重
Jan 21 Python
python在Windows下安装setuptools(easy_install工具)步骤详解
Jul 01 Python
python递归删除指定目录及其所有内容的方法
Jan 13 Python
解决Python下imread,imwrite不支持中文的问题
Dec 05 Python
在Python中字符串、列表、元组、字典之间的相互转换
Nov 15 Python
解决python中的幂函数、指数函数问题
Nov 25 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
python实现每天自动签到领积分的示例代码
Aug 18 Python
Python classmethod装饰器原理及用法解析
Oct 17 Python
Python try except else使用详解
Jan 12 Python
使用Pytorch实现two-head(多输出)模型的操作
May 28 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 仿Comsenz安装效果代码打包提供下载
2010/05/09 PHP
Laravel5中contracts详解
2015/03/02 PHP
Laravel创建数据库表结构的例子
2019/10/09 PHP
php数组函数array_push()、array_pop()及array_shift()简单用法示例
2020/01/26 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
jQuery each()小议
2010/03/18 Javascript
JavaScript Memoization 让函数也有记忆功能
2011/10/27 Javascript
javascript学习笔记(十一) 正则表达式介绍
2012/06/20 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
2015/02/05 Javascript
jQuery检测鼠标左键和右键点击的方法
2015/03/17 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
详解Vue项目编译后部署在非网站根目录的解决方案
2018/04/26 Javascript
一个小时快速搭建微信小程序的方法步骤
2019/04/15 Javascript
nuxt踩坑之Vuex状态树的模块方式使用详解
2019/09/06 Javascript
Vue实现背景更换颜色操作
2020/07/17 Javascript
js实现移动端轮播图滑动切换
2020/12/21 Javascript
[55:11]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第一场 11.26
2020/11/30 DOTA
python在Windows8下获取本机ip地址的方法
2015/03/14 Python
Python+Opencv识别两张相似图片
2020/03/23 Python
python实现批量监控网站
2016/09/09 Python
Python常见字典内建函数用法示例
2018/05/14 Python
通俗易懂了解Python装饰器原理
2020/09/17 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
前后端结合实现amazeUI分页效果
2020/08/21 HTML / CSS
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
高中生自我鉴定范文
2013/10/30 职场文书
求职信名称怎么写
2014/05/26 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
2019西餐厅创业计划书范文!
2019/07/12 职场文书
spring cloud eureka 服务启动失败的原因分析及解决方法
2022/03/17 Java/Android
Java 数据结构七大排序使用分析
2022/04/02 Java/Android