接口测试时,传入的参数要求是string类型,但目前是字典dict类型
首先尝试用str()转换后,发起接口请求后,报服务器异常
然而用json.dumps()转换后,可以发起成功
观察了下两者的区别:
使用str()转换:
a = {'term':'5',} b = {"term":"5",} print(str(a)) print(str(b))输出结果均为:{'term': '5'}
使用json转换:
import json a = {'term':'5',} b = {"term":"5",} print(json.dumps(a)) print(json.dumps(b))
输出结果均为:{"term": "5"}
由于我使用的接口请求
request().post(url, header, param)
param = {'subData': a1, }param的格式如此,用str转换后,就会导致param的格式变为{'subData': "{'term': '5',}”},与实际需求不一致,导致服务器报异常。
延伸下:list格式用这2种转换的结果都可以正常发请求