DeepDiff 库如何测试接口数据源变更

废话不多说,直接上脚本

from deepdiff import DeepDiff

ddiff = DeepDiff(dict(a=3, b=2), dict(a=2, b=2))
print(ddiff)

运行之后:

D:\code\pd\venv\Scripts\python.exe D:/code/pd/test_diff.py
{'values_changed': {"root['a']": {'new_value': 2, 'old_value': 3}}}

Process finished with exit code 0

OK,我们先看返回值,发现a的对比结果前后有变化,一个是2,另一个是3,并且我们也可以看出,DeepDiff这个函数,传递的参数,逗号前面的是老的参数,逗号后面的是新的参数;总体来看,输出的结果把哪些字段有问题,以及字段的返回结果都是什么,都给输出了出来,看起来是一个很不错的方法。
好的,那么我们上一个比较复杂的,接口对比两个请求的返回值
我们直接上代码

import json
import time
import requests
from deepdiff import DeepDiff

#请求01
org_01 = requests.request( method="post",url="",data=json.dumps([{"orgId": ""}]))
time.sleep(0.5)
print("aaaaa"+str(org_01.json()))
org_01 = org_01.json()
#请求02
org_02 = requests.request( method="post",url="", data=json.dumps([{"orgId": ""}]))
time.sleep(0.5)
print("bbbbb"+str(org_02.json()))
org_02 = org_02.json()

#对比两个请求的返回结果
ddiff_res = DeepDiff(dict(org_01), dict(org_02))
print(ddiff_res)

这里请求的url以及参数就不给大家展示了,大家自行用自己的就可以了,运行之后的结果:
返回的结果,也截图一部分
在这里插入图片描述

可以看到,同样也把有差异的字段以及结果返回来了,这个可以在工作中用到,可以尝试下哈

你可能感兴趣的:(计算机,python,工具,python,开发语言)