postman测试实例--断言
让我们来看看postman测试的一些例子。 其中大部分是作为内部postman片段。 大多数测试是为单行的JavaScript语句一样简单。 只要你想一个请求,你可以有很多的测试。
注意:一个响应已从服务器接收后测试脚本运行。
测试实例
1.设置环境变量
postman.setEnvironmentVariable("key", "value");
例子: postman.setEnvironmentVariable("url", "http://192.168.36.47/v2/api");
使用环境变量的格式:{{url}}
1.1清除环境变量
postman.clearEnvironmentVariable("variable_key");
例子:postman.clearEnvironmentVariable("url");
2.设置一个全局变量
postman.setGlobalVariable("key", "value");
例子:postman.setGlobalVariable("username", "123@qq.com");
使用全局变量格式:{{variableName}}
2.1清除一个全局变量
postman.clearGlobalVariable("key", "value");
例子:postman.clearGlobalVariable("username", "123@qq.com");
3.检查响应体包含一个字符串
tests["Body matches string"] = responseBody.has("string_you_want_to_search");
例子:响应体包含以下字段 "path": "field is read-only",
tests["Body matches string"] = responseBody.has("field is read-only");
tests["Body matches string"] = responseBody.has("path");
4.转换XML身体JSON对象
var jsonObject = xml2Json(responseBody);
例子:
5.检查响应体等于一个字符串
tests["Body is correct"] = responseBody === "response_body_string";
例子:响应体包含以下字段 "path": "field is read-only",
tests["Body is correct"] = responseBody === "response_body_string";
6.检查一个JSON值
var data = JSON.parse(responseBody);
tests["Your test name"] = data.value === 100;
7.Content-Type的存在(不区分大小写检查)
tests["Content-Type is present"] = postman.getResponseHeader("Content-Type"); //Note: the getResponseHeader() method returns the header value, if it exists.
8.Content-Type的存在(区分大小写)
tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");
9.响应时间小于200ms的
tests["Response time is less than 200ms"] = responseTime < 200;
10.状态代码是200
tests["Status code is 200"] = responseCode.code === 200;
例子:状态码是404
tests["Status code is 404"] = responseCode.code === 404;
11.代号包含一个字符串
tests["Status code name has string"] = responseCode.name.has("Created");
例子:Status:201 CREATED
tests["Status code is 201"] = responseCode.code === 201;
tests["Status code name has string"] = responseCode.name.has("Created");
12.成功的POST请求的状态代码
tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;
13.使用TinyValidator的JSON数据
var schema = {
"items": {
"type": "boolean"
}
};
var data1 = [true, false];
var data2 = [true, 123];
console.log(tv4.error);
tests["Valid Data1"] = tv4.validate(data1, schema);
tests["Valid Data2"] = tv4.validate(data2, schema);
样本数据文件
JSON文件由键/值对
下载JSON文件
对于CSV文件,最上面一行需要包含变量名
下载CSV文件
postman测试实例--断言的更多相关文章
- 三、postman测试断言设置语法
postman的基本介绍跟基本的用法,在此就不做过多赘述,主要是受限于时间,网上有很多大神总结的已经算是很详尽了,给出链接并感谢大神的辛苦与奉献: postman基本用法:http://www.jia ...
- JMeter学习-026-JMeter 分布式(远程)参数化测试实例
以前文所述对文章详情的HTTP请求进行性能测试为例.日常实际场景中,不可能所有的人都在同时访问一篇文章,而是多人访问不同的文章,因而需要对文章编号进行参数化,以更好的模拟日常的性能测试场景.同时,因文 ...
- PHP简单实现异步多文件上传并使用Postman测试提交图片
虽然现在很多都是使用大平台的对象存储存放应用中的文件,但有时小项目还是可以使用以前的方式上传到和程序一起的服务器上,强调一下这里是小众需求,大众可以使用阿里云的OSS,腾讯的COS,七牛的巴拉巴拉xx ...
- postman—Sandbox和断言
Postman沙盒 Postman Sandbox是一个JavaScript执行环境,您可以在编写预请求脚本和测试脚本(在Postman和Newman中)时可用.在这个沙箱中执行您在预请求/测试脚本部 ...
- 4、postman的常见断言
推荐我的另一篇文章 浅谈JSONObject解析JSON数据,这篇文章原理类似,使用java或者beanshell进行断言解析json数据 介绍断言之前,我们先测试1个接口: 接口地址:https: ...
- 基于postman测试接口(整套接口测试)
基于postman测试接口(整套接口测试) 可以解决的问题 几百个接口人工测试接口过于繁杂 大多测试无法使用请求结果当参数 可以使用随机参数 支持swagger信息导入 随账号持久化保存数据 对集合一 ...
- API测试之Postman使用全指南(原来使用 Postman测试API如此简单)
Postman Postman是一个可扩展的API开发和测试协同平台工具,可以快速集成到CI/CD管道中.旨在简化测试和开发中的API工作流. Postman 工具有 Chrome 扩展和独立客户端, ...
- 『政善治』Postman工具 — 9、在Postman中使用断言
目录 1.Tests的介绍 2.常用SNIPPETS(片段)说明 (1)常用变量相关 (2)状态码相关 (3)响应结果断言: (4)Header : (5)响应速度: 3.示例 (1)响应码断言 (2 ...
- webservice测试实例
webservice测试实例(LR8.1) 接口声明:这个接口是sina的短信服务接口,我只是用来做脚本学习使用,不会对其产生压力:希望读者也只是用来进行录制学习,而不是产生压力. 接口文档:http ...
随机推荐
- ZOJ 3717
这题是二分+2SAT. 总结一下SAT题的特征.首先,可能会存在二选一的情况,然后会给出一些矛盾.据这些矛盾加边,再用SAT判定. 这一道题好像不能直接用printf("%0.3lf&quo ...
- javascript推断浏览器类型
<script> window["MzBrowser"]={};(function() { if(MzBrowser.platform) return; var ua ...
- Light oj 1251 - Forming the Council 【2-sat】【推断是否存在可行解 + 反向拓扑输出可行解】
1251 - Forming the Council problem=1251" style="color:rgb(79,107,114)"> PDF (Engli ...
- Flex布局 Flexbox属性具体解释
原文:A Visual Guide to CSS3 Flexbox Properties Flex布局官方称为CSS Flexble Box布局模型是CSS3为了提高元素在容器中的对齐.方向.顺序,甚 ...
- Swift3.0中关于日期类的使用指引
日期的处理在大大小小的iOS项目中都十分常见,随着Swift3.0正式版的即将推出,语法的改变让NSDate以及相关类的使用都与之前略有不同,这里将会对基于Swift3.0版本的NSDate及相关类的 ...
- [ASP.Net] MVC2,3,4,5的不同
现在MVC的技术日趋成熟,面对着不同版本的MVC大家不免有所迷惑 -- 它们之间有什么不同呢?下面我把我搜集的信息汇总一下,以便大家能更好的认识不同版本MVC的功能,也便于自己查阅. View Eng ...
- canvas的自动画图
<!DOCTYPE HTML><html><body> <canvas id="myCanvas" width="200&quo ...
- php模版静态化技术
PHP页面的静态化很有必要,尤其是在CMS系统中,一些内容一旦生成,基本上不会有变化,这时如果用html将页面静态化,无疑会减少服务其解析PHP页面的负担.以下是看书学来的PHP静态化技术,记录之以备 ...
- HUdson2092整数解
2019-05-17 16:04:37 加油,坚持就是胜利,fightting m / i的情况,i可能等于0 #include <bits/stdc++.h> using namespa ...
- selenium 最大化浏览器是解决浏览器和驱动不匹配的方法如下
那么要想selenium成功的操作chrome浏览器需要经历如下步骤: 1.下载ChromeDriver驱动包(下载地址: http://chromedriver.storage.googleapis ...