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格式字符串写到文件中

原文地址:https://www.cnblogs.com/wulixia/p/11953072.html