进行接口测试时,添加断言时必不可少的,断言就是判断响应内容与预期返回是否一致
进行接口测试时,添加断言时必不可少的,断言就是判断响应内容与预期返回是否一致
 
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. 怎么将APE转MP3,APE转MP3的方法

    怎样实现APE转MP3的问题呢?很多时候我们从网上所下载的音乐格式,可能并不是我们所需要的音乐格式.如APE音乐格式,那么当我们下载了自己并不需要的APE音乐格式我们应该如何将其转换为自己需要的MP3 ...

  2. fiddler 修改

    很多新手学习fiddler抓包的同学们都会对https网站抓包难或者抓不起来的问题无所适从,想寻求解决办法,没问题,这节课就来解决你的疑问! 最典型的网站就是目前的百度网站了,百度在近些年采用了htt ...

  3. ZOJ 4070 - Function and Function - [签到题][2018 ACM-ICPC Asia Qingdao Regional Problem M]

    题目链接:http://acm.zju.edu.cn/onlinejudge/showContestProblem.do?problemId=5840 Time Limit: 1 Second Mem ...

  4. POJ 3984 - 迷宫问题 - [BFS水题]

    题目链接:http://poj.org/problem?id=3984 Description 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, ...

  5. makefile编写规则

    cc = g++ -std=c++11 prom = calc deps = FtTest.h obj = FtTest.o newft.o LIBS = -lgtest_c11 $(prom): $ ...

  6. Intellij IDEA注册激活破解

    1.2017年适用(2016.3.5到2017.2.4版均生效) 安装IntelliJ IDEA 最新版 启动IntelliJ IDEA 输入 license时,选择输入 [License serve ...

  7. Selenium IDE

    Selenium IDE : Selenium IDE作为Firefox浏览器的一款插件,依附于firefox浏览器,打开它的录制功能,它会忠实的记录,你对firefox的操作,并可以回放它所记录的你 ...

  8. java框架之Hibernate(4)-几种检索方式

    准备 模型及映射文件 package com.zze.bean; import java.util.HashSet; import java.util.Set; public class Class ...

  9. VoiceXML简介

    简单来说,VoiceXML就是语音网络世界的HTML,一种用于语音应用的开放标准的标记语言.VoiceXML的问世使得为HTML发展起来的web体系也能够轻松地创建和使用语音应用. 发展历史: 199 ...

  10. day014 模块

    # 1.用于多种语言交互 编程语言通用数据 # 内置的 不需要安装 直接导入使用 import json # 导入一个json模块 # dumps loads# dump load 有持久化的功能 # ...