前言
Jmeter的断言方式有不少种,因为在工做中常常作的是API接口测试,因此这篇文章主要介绍如何对接口的字段进行解析,如何对解析出来的字段的值断言ios
协议:采用http或者https协议json
数据传输格式:采用json,而不用xmlapi
url连接:url连接中,不能有动词,只能有名词,并且对于一些名词,若是出现复数,那么应该后面加上s。例如:获取文章列表,使用/articles/,而不使用/get_article/服务器
http请求的方法:restful
状态码app
状态码 | 原生描述 | 描述 |
---|---|---|
200 | OK | 服务器成功响应客户端请求 |
400 | INVALID REQUEST | 用户发出的请求有误 |
401 | Unauthorized | 用户没有权限访问这个请求 |
403 | Forbidden | 因为某些缘由,服务器禁止访问这个请求 |
404 | NOT FOUND | 用户请求的url不存在 |
406 | NOT Acceptable | 用户请求不被服务器接收(好比服务器指望客户端发送某个字段,可是没有发出) |
500 | Internal server error | 服务器内部错误 |
url: /api/get-token/ method: POST Headers: app_version: 2.8.6 Content-Type: application/json os_platform: ios user_agent: iOS/10.3 device_sn: FwgRiO7CNA50DSU body: {"sign": "958a05393efef0ac7c0fb80a7eac45e24fd40c27"} response: { "success": true, "token": "qba756V9z6rOYOVH" }
这个示例中基本符合restful api接口规范,可是在实际开发中response基本不会这样写,下面的例子是实际开发中response的例子测试
url: /user/accessToken/ method: POST Headers: app_version: "2.8.6" Content-Type: "application/json" os_platform: "ios" user_agent: "iOS/10.3" device_sn: "FwgRiO7CNA50DSU" platform_id: "87659" body: { "email": "********@qq.com", "timestamp": "1598765432198" # 时间戳通常13位 "sign": "958a05393efef0ac7c0fb80a7eac45e24fd40c27" } response: { "code": "000000", "data": { "token": "qba756V9z6rOYOVH" }, "message": "操做成功", "success": True }
这个例子当中,response返回的json数据就比较规范。code|message|success 这3个字段通常是不会变的。 1. code 接口返回的状态码,包括成功的和失败的,设计的时候会有一个状态码对照表,对照code,就能够知道返回的message文案 2. message 接口返回的状态码的说明,包括成功的和失败的
Apply Changes and Restart Jmeter
,便可完成插件安装查看结果树中也能够看到断言结果:url
至此,一个完整的Http请求接口基本上算是完成了。spa
Jmeter使用基础系列文章大纲:
Jmeter使用基础笔记 - 认识Jmeter
Jmeter使用基础笔记 - 写一个http请求
Jmeter使用基础笔记 - 断言 - API接口返回数据断言.net