框架代码分层优化03:接口请求部分代码封装

测试用例代码分层思想:

  • 测试用例中尽可能少写代码
  • 新增一些文件和方法,作为方法传递使用
  • 统一处理接口请求和返回,实现代码复用

针对已经读取yaml和ini文件的用例代码的接口请求部分,进行封装

1、创建参数请求接口的方法文件

1)新建一个专用的api文件夹及文件。

2)编写接口调用代码。将接口请求部分代码抽出放到api文件中,如下mobile_query()即为请求接口的方法。

注意mobile_query()的括号中已经需要传入参数param

同时主程序case_optimize中改为:

2、针对api文件中的mobile_query()中的request请求优化

1)新建一个文件夹及文件用来存放每个接口必须要调用的get/post方法。

2)mobile_query()相应修改

3)改进。重新定义变量接收ini中的域名

则在rest_client中引入read_ini方法;

3、优化mobile_query中的url传参。

如上图,第2步中的url仍需要完善。

1)创建一个文件api_util专门存放url。便于管理多个url,例如订单页面、商品详情接口

写法如下:

将mobile_query中的get()部分,重新存放在api_util文件的get_mobile_belong方法中。

2)修改mobile_query()。此时,mobile_query接口只需要传入params参数,而内置其他方法只需要调用。

4、去除方法中的多余params

**kwargs是个可变参数,当形参param传入时,**kwargs会根据其是param还是json自动进行传参。

则以上两个方法中的params可直接去掉,进一步简化代码。

5、封装方法。

1)将api_util文件和rest_client文件中的方法用类进行封装。

2)通过类继承实现调用get方法。

第一步中两个方法类封装后,api_util中的api()方法此时不能接着调用get()(因为之前api_util只引入了get方法)

则Api类就需要继承RestClient,才能调用get().

3)基于同2)一样的道理,此时api中mobile_query不能调用get_mobile_belong()。

定义变量api_util实例化Api():

mobile_query()通过调用和引入api_util,从而实现调用Api类中的方法:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值