大家好。
最近在看接口测试相关内容,相关HTTP请求返回了非常复杂的Json 文件,Json文件的校验成为了一大难题。
今天就列一下接口测试中如何校验复杂json的python代码,方便大家参考。
import json
import requests
# 发送HTTP请求并获取响应
response = requests.get('YOUR_API_ENDPOINT')
# 解析JSON响应
json_data = response.json()
# 校验函数
def validate_json(data, key_map):
for key, value in key_map.items():
# 如果值是字典,则递归校验
if isinstance(value, dict):
validate_json(data[key], value)
# 如果值是列表,则遍历列表中的每个元素
elif isinstance(value, list):
for item in data[key]:
validate_json(item, value[0])
else:
# 校验值
assert data[key] == value
# 定义期望的JSON结构
expected_structure = {
'key1': 'value1',
'key2': {
'nestedKey1': 'nestedValue1',
'nestedKey2': ['nestedValue2', 'nestedValue3']
},
'key3': [{
'deepNestedKey': 'deepNestedValue'
}]
}
# 调用校验函数
validate_json(json_data, expected_structure)校验数据。
这个代码示例定义了一个validate_json
函数,它递归地遍历JSON数据和一个预期的键值映射。它可以处理嵌套的字典和列表,并使用assert
语句来校验数据。
请根据您的具体需求调整YOUR_API_ENDPOINT
和expected_structure
。这只是一个简单的校验示例,实际应用中可能需要更复杂的逻辑来处理各种情况。
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。