接口测试Python接口测试实战

Python接口测试实战1(下)- 接口测试工具的使用

2018-08-27  本文已影响853人  韩志超

课程目录

Python接口测试实战1(上)- 接口测试理论
Python接口测试实战1(下)- 接口测试工具的使用
Python接口测试实战2 - 使用Python发送请求
Python接口测试实战3(上)- Python操作数据库
Python接口测试实战3(下)- unittest测试框架
Python接口测试实战4(上) - 接口测试框架实战
Python接口测试实战4(下) - 框架完善:用例基类,用例标签,重新运行上次失败用例
Python接口测试实战5(上) - Git及Jenkins持续集成
Python接口测试实战5(下) - RESTful、Web Service及Mock Server

更多学习资料请加QQ群: 822601020获取

本节内容

抓包工具的使用

抓包工具简介

Chrome开发者工具

Network面板

Network面板
  1. Console: 外观及功能控制
    • 录制:记录或停止记录请求
    • 清空: 清空所有请求
    • 抓取快照:按帧捕获屏幕事件
    • 过滤: 请用关闭过滤功能
    • 搜索:搜索请求
    • Group by frame:按框架分组
    • Preserve log:页面重载时保留请求
    • Disable cache:禁用缓存
    • Offline:断网及弱网模拟
  2. Filters: 请求过滤器
  3. Overview: 资源时间轴
  4. Requests Table: 请求列表
    • Name: 资源名称
    • Status: HTTP状态码
    • Initiator: 请求源
    • Size: 从服务器下载的文件和请求的资源大小。如果是从缓存中取得的资源则该列会显示(from cache)
    • Timeline: 显示所有网络请求时间状态轴
  5. Summary: 请求总数,数据传输量,加载时间信息
    • DOMContentLoaded:页面上DOM完全加载并解析完毕
    • load:页面上所有DOM、CSS、JS、图片完全加载完毕

导出请求:右击请求 -> Copy -> Copy as fetch / Copy as cUrl

Fiddler简介

Fiddler 4.6 下载 http://www.downza.cn/soft/234727.html

为什么使用Fiddler?

Fiddler主界面
Fiddler的主界面分为 工具面板、会话面板、监控面板、状态面板

Fiddler主界面

参考: Fiddler详细教程

服务端抓包 - tcpdumps

Postman的使用

常见接口测试工具

新版Postman使用简介

Postman 6.1.4 独立安装版 下载 http://www.downza.cn/soft/205171.html

Postman主界面

工具栏

接口管理区

环境管理区

什么是环境
接口完整地址 = 服务地址 + 接口地址, 如

www.sojson.com + /open/api/weather/json.shtml

环境是一套配置,包含许多环境变量。在接口测试中,根据部署在不同的服务器上,服务器地址有可能不同,而同一个接口,接口地址是不变的。为了测试部署在不同服务器上的同一套接口,我们可以建立不同的环境,不同环境中host变量使用不同的地址

接口设计区
可以通过上方tab边上的+号,新建多个请求。接口设计区从上到下分为请求区和响应区

Postman主界面功能

Collection请求集
测试集是Postman中接口管理的一个“整体”单位,运行、导出、分享等都是基于测试集的。

** 环境管理**


新建环境

我们可以环境中设置多个变量,以供在请求中使用
环境变量使用方法:
选择环境,在请求URL或者请求Body里使用{{变量名}}来使用环境变量,变量可以在请求Body的各种格式中使用,但不能直接在请求前脚本(Pre-request Script)和请求后脚本(Tests)中使用


环境变量的使用

环境管理中还可以点击“Global”添加全局变量,环境变量只有当选择了该环境时生效,全局变量在任何环境中生效,测试集中的变量只在当前测试集生效,当测试集变量,环境变量,全局变量有重复的变量名时,优先级为:环境变量>全局变量>测试集变量
Params使用
当请求URL中参数很多时,不方便进行添加和查看,可以点击URL输入框后的Params按钮,以表格的方式添加变量及值,从表格添加后,变量和值会自动添加到URL中

添加URL参数

请求设计

Postman发送各种格式请求的方法:
注意:选择不同的请求可是,会自动在Header中添加Content-Type信息

混合表单请求
传统表单请求
JSON格式请求
XML请求

Tests断言

tests["HTTP状态码200"]=responseCode.code == 200;
tests["状态码200"] = responseBody.has("登录成功");

接口样例:
POST https://demo.fastadmin.net/admin/index/login.html 用户名/密码: admin/123456

接口样例
断言方法
var jsonData = JSON.parse(responseBody);
tests["code为200"] = jsonData.code==200
tests["msg为success"] = jsonData.msg == "success"

接口样例:
GET http://www.tuling123.com/openapi/api?key=ec961279f453459b9248f0aeb6600bbe&info=你好

JSON响应断言

Runner: 测试集批量执行

运行结果

个人微信号: lockingfree, 如有问题,欢迎交流

上一篇 下一篇

猜你喜欢

热点阅读