进行接口测试时,添加断言时必不可少的,断言就是判断响应内容与预期返回是否一致
进行接口测试时,添加断言时必不可少的,断言就是判断响应内容与预期返回是否一致
 
postman可以在请求模块的Tests标签添加断言,比较方便的是,postman已经提供了一些代码片段供我们使用
 
下面以一个接口实例来说下如何处理断言:

如上,响应body的内容为一个json格式的字符串,这些内容可以作为断言的依据
切换到Tests标签,控制台右侧可以看到备用的代码片段

 
1.判断响应内容是否包含某个字符串
点击选择【Response body:Contains string】,左侧出现如下代码段

其中,pm是postman的主要对象,一般通过它来调用函数、数据等;
Body matches string可以看作这个测试代码段的描述说明,可以自己定义;
string_you_want_to_search表示预期响应内容,即用来断言的标准输出,需要根据实际情况设置;
改为如下:
意思就是:判断响应body中是否包含字符串“重点人员修改成功”
如果包含,表示断言结果通过;如果不包含,表示断言结果不通过。
 
2.判断响应内容是否和预期内容完全一致
点击选择【Response body:Is equal to a string】,左侧出现如下代码段

其中,response_body_string处填写的内容要和接口返回的内容完全一致才可以匹配成功
假如响应body内容如下

那么需要把所有返回的内容填写到response_body_string处才可以
拷贝响应内容时,把Raw标签中的原始返回内容放过去即可,这样避免出现格式问题

 
3.判断返回json数据中某个键对应的值
如果响应内容是json格式的字符串,则可以断言json数据中的某个键值对
点击选择【Response body:JSON value check】,左侧出现如下代码段
 

其中,Your test name表示这个测试片段的名称,可以自己任意定义;
jsonData.value表示响应json串中的某个键,如果响应内容如下

所以,jsonData.value可以是json.status或json.desc或json.data
eql()填写的预期返回的字符串(把100改为断言内容即可)
最终形式如下:

如果响应内容是嵌套的字典格式,则一层层引用即可,如下:

如果字典中嵌套了列表,则按照索引引用即可,反正要看清响应内容的格式

 
4.判断请求返回的状态码是否为200
点击选择【Status code:Code is 200】,左侧出现如下代码段

 
其中,Status code is 200表示这个测试片段的名称,可自己定义

5.判断响应体中某个返回值的类型

同样点击选择【Response body:JSON value check】,然后要把jsonData.value放在一个typeof()函数中,这样就是判断输出值的类型了
 
断言设置好后,点击【Send】发送请求,在响应模块的Test Results标签中可以看到断言结果
如果实际返回结果与预期符合,如下:

如果实际返回结果与预期不符,则如下:


2018-12-24  21:23:59
 
 
 
 

postman(三):添加断言的更多相关文章

  1. 接口测试工具postman(三)添加断言

    每个用例执行完成后,可以通过添加断言来判断返回结果是否正确,即表示用例执行是否成功. 官方说明文档:https://learning.getpostman.com/docs/postman/scrip ...

  2. SoapUI、Jmeter、Postman三种接口测试工具的比较分析

    前段时间忙于接口测试,也看了几款接口测试工具,简单从几个角度做了个比较,拿出来与诸位分享一下吧.各位如果要转载,请一定注明来源,最好在评论中告知博主一声,感谢.本报告从多个方面对接口测试的三款常用工具 ...

  3. SoapUI、Jmeter、Postman三种接口测试工具的比较分析——灰蓝

    前段时间忙于接口测试,也看了几款接口测试工具,简单从几个角度做了个比较,拿出来与诸位分享一下吧.各位如果要转载,请一定注明来源,最好在评论中告知博主一声,感谢.本报告从多个方面对接口测试的三款常用工具 ...

  4. SoapUI、Jmeter、Postman三种接口测试工具的比较

    1.  用例组织方式 首先是用例组织方式的不同,不同的目录结构与组织方式代表不同工具的测试思想,学习一个测试工具应该首先了解其组织方式. SoapUI的组织方式如下图,最上层是WorkSpace,每个 ...

  5. 『政善治』Postman工具 — 9、在Postman中使用断言

    目录 1.Tests的介绍 2.常用SNIPPETS(片段)说明 (1)常用变量相关 (2)状态码相关 (3)响应结果断言: (4)Header : (5)响应速度: 3.示例 (1)响应码断言 (2 ...

  6. Jmeter—4 添加断言 判断响应数据是否符合预期

    发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个登录的http请求(参数故意输入错误).结果肯定是登陆失败啦. 但结果树中http请求的图标显示‘绿色’表 ...

  7. jmeter添加断言

    先创建一个线程组,再创建一个http请求. 为了方便观察,我们添加两个监听器,察看结果树和断言结果. 添加断言:响应断言,响应断言也是比较常用的一个断言 设置响应断言:正常情况下响应代码是200.选择 ...

  8. Jmeter—添加断言 判断接口响应数据是否符合预期

    发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个状态返回200的http请求(参数故意输入错误).结果肯定是不是返回200啦. 但结果树中http请求的图 ...

  9. Jmeter入门4 添加断言 判断响应数据是否符合预期

    发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个登录的http请求(参数故意输入错误).结果肯定是登陆失败啦. 但结果树中http请求的图标显示‘绿色’表 ...

随机推荐

  1. css学习_css常见属性用法

    1.元素的显示模式 a.被动转换:浮动.绝对定位.固定定位(转换为行内块元素特性的模式---不设置宽度时,模式换行为行内块模式后宽度是内容宽度.) b.主动转换:display:block  / in ...

  2. [07-01]http网页提示含义

    出现较多的一些网页代码提示的意思: 100 - 继续. 101 - 切换协议. 110 重新启动标记答复. 120 服务已就绪,在 nnn 分钟后开始. 125 数据连接已打开,正在开始传输. 150 ...

  3. Linux下的文件系统2

    2017-03-13 上文针对VFS的基本信息做了介绍,并简单介绍了VFS涉及的几个数据机构,本节结合LInux源码,对各个结构之间的关系进行分析. 一.总体架构图 总体架构图如上图所示,结合进程访问 ...

  4. py三个面试小问题

    1.是否遇到过Python的模块间循环引用的问题,如何避免它? 这是代码结构设计的问题,模块依赖和类依赖,如果老是觉得碰到循环引用可能的原因有几点: a.可能是模块的分界线划错地方了 b.可能是把应该 ...

  5. python框架之Django(3)-模版

    常用语法 符号 {{...}} # 变量相关 {%...%} # 逻辑相关 {#...#} # 注释 使用变量 def test(request): name = '张三' age = 19 retu ...

  6. JedisCluster简单使用

    项目中因为一些原因需要用到缓存,之前没有接触过,在此做一些简单的使用记录. 1.jedis在项目中依赖 <dependency> <groupId>redis.clients& ...

  7. HttpWebRequest请求http1.1的chunked的解析问题记录

    问题:我的请求获取不到URL对应的内容(换个浏览器可以). 第一步对比wirshark截包看HTTP请求头,发现我这缺失一部分请求头. 对着官方文档添加即可.https://msdn.microsof ...

  8. UVA 12345 Dynamic len(带修莫队)

    Dynamic len [题目链接]Dynamic len [题目类型]带修莫队 &题解: 莫队可以单点更改,只要再多加一维,代表查询次数,排序的时候3个关键字. 之后循环离线的时候,先暴力时 ...

  9. sublime开启vim模式

    sublime自带vim模式Vintage,只是默认是ignore状态,因此如果按Esc键没有进入vim模式,只需要按ctrl+shift+P进入命令模式,键入Enable package,输入Vim ...

  10. 无需激活直接同步登入discuz,php代码(直接可用)

    <?php /** * 抽奖 * @param int $total */ function getReward($total=1000) { $win1 = floor((0.12*$tota ...