python怎么实现接口测试返回数据为字典取值方式
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,本文小编为大家详细介绍"python怎么实现接口测试返回数据为字典取值方式",内容详细,步骤清晰,细节处理妥当,希望这篇"python怎么实现接口测试返回数据为字典取值方式"文章能帮助大家解决疑惑,下
千家信息网最后更新 2025年11月06日python怎么实现接口测试返回数据为字典取值方式
本文小编为大家详细介绍"python怎么实现接口测试返回数据为字典取值方式",内容详细,步骤清晰,细节处理妥当,希望这篇"python怎么实现接口测试返回数据为字典取值方式"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
接口测试返回数据为字典取值
接口测试通常需要校验返回数据跟预期结果是否一致,这个时候如果返回数据为字典,那么我们要拿到我们想要的key对应的values时,需巧妙的运用dict.keys()、dict.values()和for循环,以及列表相关知识点。
实例
这是我调接口返回的数据,该数据为dict类型,我的目标是要拿到account。
#接口返回的数据:api_result = {'code': '000001', 'dataMap': {'data': {'amount': 0, 'billingWeight': 0, 'quantity': 0}}, 'failureString': '', 'failures': [], 'flag': 'success', 'hasError': False, 'message': '请求成功'}方法
#方法1:print("这是方法1")for i in api_result.keys(): if i == 'dataMap': print(api_result[i]['data']['amount'])#方法2:print("这是方法2")getkey = api_result.get('dataMap')# print(getkey)cc =list(getkey.values())[0]print(cc['amount'])#方法3:print("这是方法3")print(api_result['dataMap']['data']['amount'])运行结果
本次介绍了三个方法,一个循环,一个利用keys()和values(),另外一个直接嵌套取key对应的值。当然大家可以看出来,最后一种方法是最快最简单的。
python接口测试--sign签名
最近测试的项目由于需要给第三方调用,所以增加了安全性的认证,所有的接口调用都需要签名进行验签,
于是研究了一下使用python按照接口签名规范生成sign值。
接口签名规范
1、请求参数中的 sign 参数和为空的参数去除后,剩余的多个键值对,将键按照字典序排序,
并以key1=value1&key2=value2的格式拼成一个字符串
2、拼接的字符串需要URLEncode
3、将开发者的key拼接在第一步中排序后的字符串后面得到待签名字符串
4、使用md5算法加密待加密字符串并转为大写即为sign
实现代码
下面为实现的 代码片。
import timeimport requestsimport jsonimport urllib,hashliburl = "http://www.xxx.xx"#获取当前的时间戳stamp = time.time()print(stamp)#转换为int类型的13位时间戳timestam = int(round(stamp*1000))print(timestam)time_new = str(timestam)print(type(time_new))data ={ 'appId':'3301820001', "outTradeNo":"20201026001", "amount":"100", "body":"test", "timestamp":time_new, "notifyUrl":"http://localhost:8080/notify",}#将键按照字典序排序data_order = sorted(data.items(),key=lambda x:x[0],reverse=False)#将列表转化为字典data_new = dict(data_order)print(data_new)#将key=value键值对进行url编码datanew = urllib.parse.urlencode(data_new)datadic = datanew + "&key=BF1BDE5A649724056F904A9335B1C1C7455655"print(datadic)#创建md5对象m = hashlib.md5()m= hashlib.md5(datadic.encode())data_md5 = m.hexdigest()#将小写字母切换为大写字母sign=data_md5.upper()print(sign)读到这里,这篇"python怎么实现接口测试返回数据为字典取值方式"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
接口
数据
方法
字典
测试
字符
字符串
这是
方式
参数
文章
排序
代码
内容
大写
字母
时间
知识
知识点
类型
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
小学生网络安全题库
怎么连接sql两个数据库
手机软件开发如何做
武汉汉达升网络技术
电信网络安全知识手册
两台服务器如何配置无密钥登陆
如何选择信任服务器的安全
软件开发培训的质量
软件开发项目具体实例
网络安全证书发放时间
奇迹世界2服务器名字
新加坡 软件开发薪资
网络运营商对于网络安全
研发软件开发课英语
虚拟服务器远程桌面
app月活用户数据库
中国最优秀的网络安全倡导者
乐昌软件开发定制
数据库报错列与值不匹配
软件开发成果文档
甘肃中小学家庭教育和网络安全
服务器的管理权限翻译
全球最牛服务器存放位置
5g网络技术架构设计白皮书
戴尔服务器插显示器如何关机
国家网络安全工程师证书
新加坡 软件开发薪资
网络安全小报电子版文档
戴尔服务器报安全电压错
银行软件开发中心笔试题