1. 需求
在我的项目中,测试GET请求时,参数传递格式是这样的:params1:value1 + params2:value2 +params3:value3+ params4:value4 ,例如:https://dev.xxxxx.com/xxxx/mz_ysgzz_ygjbxx_sel?openid=xxxx&token=xxxx&sessionId=xxx&searchtext=xxx
其中params1、params2、params3都是固定(即通用的,类似于联机参数)的,后面的params4、params5是根据接口内容的不同而变化的,有可能后面还有更多的查询参数,那么这个时候怎么处理呢?
2. 解决思路
①先将params1、params2、params3等固定的联机参数生成 为一个字典 dict A;
②再将不同的测试接口参数params4、params5等变化的查询参数写到对应的位置;
图片.png
③通过封装excel方法获取到这些数据,得到str类型的数据;
图片.png
图片.png
④ 通过json.loads方法将str类型的数据转换成字典 dict B ;
⑤ 合并两个字典成为 dict C,并返回合并后的值供其他接口调用
params_common = {"openid":openid,"token":token,"sessionId":sessionId}
#获取查询参数,并更新到 params_request 字段
searchtext = self.data.get_params_searchtext(row)
if searchtext:
searchtext_dict = json.loads(searchtext) #将获取到的str转换成 dict
params_request = dict(params_common,**searchtext_dict) #将两个dict合并
return params_request
else:
return params_common #如果没有查询参数,就默认使用联机参数
网友评论