python专项测试——Android App Api接口测试

一 基础概念

1 API:应用编程接口,软件系统不同组成部分衔接的约定。

2 种类:

  • 面向对象语言的API
  • 库与框架的API
  • API与协议
  • API与设备接口
  • WebAPI

3 涉及种类:Web API, 即http api

4http api 接口种类: get , post, put, delete , options, head, trace, connect

5 主要讲 get ,post ; 涉及场景:客户端的容错能力,服务器处理错误数据的能力。

二 Fiddler

1 从9方面讲解:

  • 环境准备
  • 工作原理
  • 基本界面
  • 设置断点修改request
  • 设置断点修改reponse
  • fiddler小工具
  • host设置
  • 构造http请求
  • 抓取手机包

2设置断点修改request方式

工具栏——Rules~Automatic Breakpoints~Before Requests 不足:会拦截所有请求; 清除拦截:disabled

命令—— bpu www.google.com.hk 拦截指定站点儿; 清除拦截:bpu

3 设置断点修改reponse方式

工具栏——Rules~Automatic Breakpoints~After Response 不足:会拦截所有请求; 清除拦截:disabled

命令—— bpafter www.google.com.hk 拦截指定站点儿; 清除拦截:bpafter

AutoResponder——选中session,AutoResponder, 点击add Rule, 勾选三项复选框,在Rule Editor框中模糊匹配,在最下方选中要返回的内容,保存,再次复现session,

4 fiddler小工具

会话的过滤:filter标签

会话的对比:按Ctrl键同时选中2个session, 右键,compare, 出现windiff框, 完成2个session的对比

请求的编解码: 略~

5 设置hosts常见方式:

  • 修改windows系统下的host文件
  • 借助小工具
  • 借助fiddler

借助fiddler——Tools~HOSTS~打开窗口,选中checkbox, Import Windows Hosts File , 即引入电脑中的hosts文件了,根据需求进行选取;

如取消Hosts设置,则只需勾掉checkbox

6 构造Http 请求

适用情况:客户端的服务模块先提测,此时没有客户端可用

构造get请求——找到Composer 标签, 用来构造请求。

具体:先选定session , Inspectors~Raw , 查看请求组成。全部复制,再粘贴到Composer的Parsed标签中,从中选取请求方式,url, 协议类型依次填到下拉菜 单中,点击execute

构造post请求——与构造get请求类似,只是多了一个request body

7 抓取手机上的包

已知

三 Postman

1 由于fiddler的composer不能实现接口的自动化测试,所以引入postman

2 postman适用的产品:PC/WAP/APP

3 如何批量执行用例?先保存到一个文件中,点击箭头,Run, 选择该文件,start ,可设置延时,循环次数。

四 DDT在API自动化中的应用

1 Python Requests 模块的准备:安装

2 Http Get 测试脚本的实现,见pycharm

3 Http Post 测试脚本的实现,见pycharm

4 在API自动化中应用DDT,见pycharm