python接口自动化测试之根据excel中的期望结果是否存在于请求返回的响应值中来判断用例是否执行成功
1、首先在excel中填写好预期结果的值

这里判断接口成功的依据是预期结果值是否存在于接口的返回数据中。
一般接口的返回值都是json对象,我们需要将json对象转换为json格式的字符串
如下图,进行转换

我们从excel文件解析出来的预期结果也是str类型,这样就可以将两者进行对比,判断excel中的预期结果是否存在于接口的返回数据中
2、使用if进行判断,一个简单的demo
# coding:utf-8
import requests, json
url = 'http://192.168.0.53:7001/CommonService/api/control/controlProgress/query.v'
data = {"controlSeq": "2018118579"}
r = requests.post(url, data=data)
re = json.dumps(r.json(),indent=2, sort_keys=False, ensure_ascii=False)
print(re)
print(type(r))
print(type(r.json()))
print(type(re))
expect_value = '企业事项_hmk' if expect_value in re:
"""关键字in判断前者是否存在于后者之中"""
print('测试通过')
else:
print('测试失败')
3、主函数片段

如果预期结果存在于接口返回值中,则测试通过,将pass写入到excel中的实际结果中;否则将fail写入实际结果。
--------------------------------------
json.load()从文件中读取json字符串
json.loads()将json字符串转换为字典类型
json.dumps()将python中的字典类型转换为字符串类型
json.dump()将json格式字符串写到文件中
python接口自动化测试之根据excel中的期望结果是否存在于请求返回的响应值中来判断用例是否执行成功的更多相关文章
- python接口自动化21-下载excel文件(Content-Type:octets/stream)
		
前言 Content-Type类型为octets/stream,这种一般是文件类型了,比如有时候需要导出excel数据,下载excel这种场景如何用python来实现呢? 抓下载接口 1.下载的场景如 ...
 - python接口自动化测试之requests库详解
		
前言 说到python发送HTTP请求进行接口自动化测试,脑子里第一个闪过的可能就是requests库了,当然python有很多模块可以发送HTTP请求,包括原生的模块http.client,urll ...
 - python接口自动化,从excel取param的内容太多,使用eval转换报错'EOL while scanning string literal
		
背景: 做接口自动化时,有个接口的参数内容很多,可以从excel中读取出来,但是在eval()进行转化时,就报错"'EOL while scanning string literal&quo ...
 - 记录python接口自动化测试--根据excel中的期望输出是否存在请求返回的响应来判断用例是否执行成功(第八目)
		
1.首先在excel中的expectValue列填好预期结果值 这里判断接口成功的依据是预期结果值是否存在于接口返回的数据中. 首先,要知道在之前封装的get/post请求方法中返回的是‘str’,也 ...
 - python接口自动化测试之http协议(一)
		
1.http(超文本传输)协议:是一个基于请求与响应模式的.无状态的(不会记住每个请求的状态).应用层协议 2.url详解 https://www.baidu.com/s?ie=utf-8&f ...
 - python接口自动化之读取excel表的数据(使用openpyxl模块)
		
1.安装openpyxl:pip install openpyxl 2.基础知识,直接上代码 import openpyxl #导入模块 wd2=openpyxl.load_workbook('stu ...
 - python接口自动化(四十一)- 发xml格式参数的post请求(超详解)
		
简介 最近在工作中,遇到一种奇葩的接口,它的参数数据是通过xml,进行传递的,不要大惊小怪的,林子大了什么鸟都有,每个人的思路想法不一样,开发的接口也是各式各样的,如果想要统一的话,必须是提前团队已经 ...
 - python接口自动化(响应对象方法)
		
python接口自动化(响应对象方法) 一.encoding作用 获取请求的编码(在不设置响应编码时,响应的信息默认使用的是请求的编码格式):r.encoding 设置响应的编码:r.encoding ...
 - Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要
		
1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...
 
随机推荐
- SpringBoot图文教程6—SpringBoot中过滤器的使用
			
有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文系列教程技术大纲 鹿老师的Java笔记 SpringBo ...
 - JavaScript的语法、数据类型、基本算数和逻辑运算操作
			
str.toString() 可以把字符串.数值.布尔值.对象转为字符串 String(str) 任何数值强制转换为字符串类型 <!DOCTYPE html> <html lang= ...
 - cf1037E
			
题解:考虑逆序处理询问,用一个set来维护能去的人,每次减少边的时候,维护一下这个set就可以,具体看代码 int main(){ int n, m, k; cin >> n >&g ...
 - js磁力线代码(非压缩,自己在压缩的版本上优化了代码,易于阅读)
			
拿去白嫖吧: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=" ...
 - mysql修改密码、创建用户、开放远程
			
创建密码: MariaDB [(none)]> use mysql; MariaDB [mysql]> UPDATE user SET password=password('newpass ...
 - Android studio中修改xml文件无效问题
			
昨天遇到的这个问题,在修改布局xml文件后保存,但运行时布局却并没有被修改,也就是说我的修改无效,今天参照了这篇文章中的方法终于解决了: https://blog.csdn.net/l_o_s/art ...
 - java遍历统计一个文件夹中所有文件单词出现次数
			
思路就是通过递归进行文件遍历,把所有文件夹中的非目录文件都遍历一遍,并判断其中读取到的字符串是不是单词,并对单词进行记录和计数,并在最后进行排序输出,下面是代码: package word; impo ...
 - plsql导出查询结果,导出csv文件。但是类似身份证等超出15位的数据后三位显示问题,和科学计数法的格式问题
			
问题描述: plsql导出查询结果时,如果使用导出查询结果,使用excelfile会特别慢. 所以我们一般使用csv文件,然后在excel中新建空白文档,在数据菜单中导入数据,但是导出 ...
 - vue 学习3
			
在 2.5.0 及以上版本中,如果你使用了单文件组件 $children,$slots,$attrs .... $attrs 可以透传props 注意.模板标签上有:属性="a", ...
 - css使用padding-bottom百分比进行提前占位,防止抖动
			
页面加载抖动问题 在web开发中,经常会遇到这样一个问题,比如一个宽度百分百,高度自适应的图片,在网速慢的情况下加载过程中会出现抖动的问题(未加载图片前容器的高度为0,图片加载完成后下面的内容会被挤下 ...