postman进阶篇之测试断言

小伙伴们好,欢迎来到小葵花课堂第二课。大家都知道不管什么用例都有一个3A原则,没有assert的用例是不完整的,测试宝宝我今天就给大家来介绍postman中断言的使用。

写在前面

断言其实就是对预期结果与实际结果的判断,预期==实际,就通过;预期!=通过则失败。

Postman的断言是JavaScript语言编写的,写在tests标签页里,在sandbox中运行,postman预置了很多公共库,如

cheerio(解析html)、lodash(简化JSON操作)、CryptoJS(加密解密)、chai(断言框架)等。sandbox链接:https://www.getpostman.com/docs/v6/postman/scripts/postman_sandbox_api_reference但由于它是独立的隔离的运行环境,所以没有办法引用自己预置的JS库。

tests在发送请求之后执行(而Pre-request Script则与之相反,在请求之前执行),并以断言的pass/fail形式体现在最终测试结果中。

一、发送请求

今天,我们以登录第四方运营管理平台为例来介绍断言。

1.首先找到登录入口路径


新建一个请求,依次输入以下请求信息

 Request URL: http://uat.jifenmy.com/zfs_merchant_boss/login.do

 Request Method: POST

 Content-Type: application/json

在Body中传入用户名、密码以及验证码{userName: "admin", smsCode: "k8y8F8", password: "admin"}


2.第二步,发送send,看看我们的接口通了没有。


OK,访问成功。

二、设置断言

架子已经搭好了,下面我们愉快的开始写断言吧~打开Tests和Test Results,界面如下,分别表示请求和结果部分。

未经处理的tests界面是空的。右侧依然配置了一些常用的代码片段以照顾编程能力不是那么好的同学。(感恩!)


1.首先,要先确认我们到底要检查什么,打开我们的响应。


显然"rspCd": "00000"就是我们的开发哥哥设置的成功状态码,要想登录成功就必然少不了他,OK,目标锁定。

2.写断言。

我们找到右边的程序片段,

(检查body包含字符串,正是我们需要的)单击一下,生成代码如下


【Body matches string】是该条测试的名字,可自行定义,我们改为【校验是否有00000状态码】;

【string_you_want_to_search】是我们要校验的字符串,这里我们修改为【00000】。

3.执行,查看结果

老规矩,点击sand执行。


大大的PASS送给你!

套路就是这样,噢不,是框架如此,怎么样,不难吧。

三、常用方法介绍

聪明的你一定不会满足于示例中的一个方法,接下来我们逐个介绍tests中常用方法的使用,大家根据自己的实际需求选择相应的来用就好。

1.清除环境变量

2.设置一个全局变量

3.得到一个环境变量

4.检查response body中是否包含某个string

5.检测JSON中的某个值是否等于预期的值

6.转换XML body为JSON对象

7.检查response body是否与某个string相等

8.测试response Headers中的某个元素是否存在(如:Content-Type)

9.验证Status code的值

10.验证Response time是否小于某个值


PS:有一位前辈告诉我,学习一个东西最好的途径就是查看官方文档。今天我也推荐给大家。

以下是官方大大的【Test examples】,非常之清晰详细,看过都说好:https://www.getpostman.com/docs/v6/postman/scripts/test_examples

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,404评论 19 139
  • Postman用法简介-Http请求模拟工具 在我们平时开发中,特别是需要与接口打交道时,无论是写接口还是用接口,...
    奥利奥龙卷风阅读 9,697评论 2 9
  • Postman 是一个很强大的 API调试、Http请求的工具,当你还准备拿着记事本傻傻的去写 Form 表单的时...
    MR_LiY阅读 8,746评论 0 3
  • 前言: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 一、get请求 GET请...
    小喜_ww阅读 23,950评论 2 43
  • 感恩: Tina,晚饭好吃 图书馆,暖和 天气,雨不大,不拿伞也可以走 可乐,清凉一下 我,努力研究了一个小时,很...
    kroos阅读 1,755评论 0 0