python自动化测试-json数据格式处理
在接口自动化中,接口的请求体或返回体经常会用到json格式的数据,所以为了更好的处理这种格式的数据,我们需要用到python中的内置模块—json,主要应用场景就是json格式的str数据类型和python字典数据类型的相互转换。
导入json内置模块
import json # 导入json模块
json.dumps()
将dict数据类型转换成json格式的str类型
one_dict = {"age": 17, "sex": True, "name": None, 'hobby': "basktball"}
one_str = json.dumps(one_dict)
print(one_str, type(one_str))
{"age": 17, "sex": true, "name": null, "hobby": "basktball"} <class 'str'>
json.loads()
将json格式的str类型数据转换成dict类型数据
two_dict = json.loads(one_str)
print(two_dict, type(two_dict))
{'age': 17, 'sex': True, 'name': None, 'hobby': 'basktball'} <class 'dict'>
json.dump()
将dict数据类型转换成json格式的str类型,并写入json文件
json_path = "test.txt" # 定义文件路径
# 方法一
with open(file=json_path, mode="w", encoding="utf-8") as write_json:
json.dump(obj=one_dict, fp=write_json)
# 方法二
json.dump(obj=one_dict, fp=open(file=json_path, mode="w"))
json.load()
从文件中读取json格式的str类型数据,并转为dict
test = json.load(fp=open(file=json_path))
print(test, type(test))
{'age': 17, 'sex': True, 'name': None, 'hobby': 'basktball'} <class 'dict'>