postman接口教程 同一个接口多个case可以同时跑吗

postman(1)
两种安装方式,我热衷于以chrome插件形式安装
2. 发送请求
Postman最基础的功能就是发送http请求,支持GET/PUT/POST/DELETE,还有很多我不认识的http方法。
通过填写URL、header、body等就可以发送一个请求,这对于我们平时做一些简单的测试是够用的。
如果你的应用需要用到登录验证,可以通过填写Authorization以满足你的需求。
另外也可以使用Chrome浏览器已经登录的cookie,同步浏览器的cookie需要安装另一个插件&(拦截机)。它可以在你发送请求时帮你将已经存在于浏览器的数据随header请求,另外它可以将浏览器的请求写到postman的历史中(需要开启“Request
每次配置完一个请求都可以保存到一个集合中,如此一来,下次测试可以直接从集合中找到你要执行的测试。
集合不单单只有分类和存储功能,Postman支持一键运行整个集合内的测试。
我们可以把一个请求当做一个Test Case, 那么集合就是一个Test Suite。
每个集合都对应一个URL,可以通过&Share&按钮获得你的集合URL,这个URL可以用于分享给你的队友,或者用于&执行。
是Postman的一个命令行工具,可以让API测试加入到你的持续集成任务上。
4. 环境变量
当做API测试时,你可能经常需要切换不同的设置。比如,开发环境的API设置、测试环境和产品环境的API设置,你可能需要在不同的测试环境下使用不同的配置。为此Postman提供了环境变量,这样你就可以通过修改环境变量,而不需修改请求了。
你可以通过右上角的下拉菜单选择环境,可以通过点击右侧的小眼睛来查看当前环境变量。
5. API测试
是一个JavaScript执行环境,可以通过JS脚本来编写pre-requist和测试脚本。pre-requist可以用来修改一些默认参数。
Postman沙箱集成了几个工具库,比如&&、&&、&&,还有一些内置函数如xml2JSON..
tv4用于验证JSON数据,通过编写JSON Schema来验证,JSON Schema的语法请
测试语法:
tests[description] = value
tests[&Status code is 200&] = responseCode.code === 200;
我们以&&的接口为例:
tests[&Status code is 200&] = responseCode.code === 200;
var schema = {
properties: {
status: {type: 'string'},
last_updated: {type: 'string'}
tests[&Valid data schema&] = tv4.validate(responseBody, schema);
var jsonData = JSON.parse(responseBody);
tests[&Github status is good&] = jsonData.status === 'good';
运行结果:
受&&启发,Postman也提供了一套入门的API&&,接下来我们将利用这套API做完整的测试。
1. 创建一个环境变量
点击&Manage
Environments&,然后点击&Add
添加一个URL变量,我们会在后续使用
2. 请求一个新用户
我们需要通过发送一个POST请求到{{url}}/blog/users/来创建一个用户,并需要附加下面的参数到请求body中:
注:记得将环境变量切换到,这样我们才能获取到{{url}}变量
&username&: &abhinav“,
&password&: &abc&
这个接口现在好像不支持创建用户了,我们假设已经创建成功了,因为这不影响我们后续操作
3. 获取用户的Token
Token用于授予终端请求和访问权限的。我们可以通过POST用户名和密码请求 {{url}}/blog/users/tokens/ 来获取用户的Token,这个Token将用于其他请求中。
&username&: &abhinav“,
&password&: &abc&
4. 格式化JSON
我们需要从上面的请求结果中获取到用户Token和用户ID,并将这两个值保存到环境变量中,以供后续使用。将下面这段代码添加到测试编辑器中:
var data = JSON.parse(responseBody);
if (data.token) {
tests[&Body has token&] = true;
postman.setEnvironmentVariable(&user_id&, data.user_id);
postman.setEnvironmentVariable(&token&, data.token);
tests[&Body has token&] = false;
5. 创建一篇文章
如果上面的测试是在主窗口或者集合运行器中执行,那么&user_id&和&token&会自动地被添加到环境变量中。
为了创建一篇文章,我们需要发送一个POST请求到 {{url}}/blog/posts ,并将&user_id&和&token&添加在URL参数中。POST的请求Body如下:
&post&: &This is a new post&
6. 检查返回数据
如果上述的请求成功的话将返回一个带有&post_id&的JSON。我们将在这里验证是否创建文章成功,并且将文章ID保存到环境变量。将下面这段代码添加到测试编辑器中:
var data = JSON.parse(responseBody);
if (data.post_id) {
tests[&post_id found&] = true;
postman.setEnvironmentVariable(&post_id&, data.post_id);
tests[&post_id found&] = false;
7. 获取一篇文章并验证JSON
我们将通过上面返回的文章ID来获取我们创建的文章。这里我们将用到Postman内置的&&JSON
验证器来检查服务器响应的JSON。
创建一个GET请求到 {{url}}/blog/posts/{{post_id}},并将下面这段代码添加到测试编辑器中:
var schema = {
&type&: &object&,
&properties&: {
&content&: &string&,
&created_at&: &integer&,
&id&: &integer&
&required&: [&content&, &created_at&, &id&]
var data = JSON.parse(responseBody);
var result = tv4.validateResult(data, schema);
tests[&Valid schema&] = result.
8. 一键运行与分享集合
我们将上述每一个测试保存到PostmanTest的集合中,这样我们就可以在任何时候打开和运行你想要的测试,并且可以一键运行所有,或者将集合分享给你的小伙伴,也可以获取嵌入式代码(如下面的按钮)。
本文的所有测试用例都在&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:70654次
积分:1410
积分:1410
排名:千里之外
原创:58篇
转载:112篇
(1)(2)(2)(5)(16)(11)(3)(14)(1)(3)(5)(9)(10)(32)(10)(17)(9)(4)(1)(1)(7)(7)postman+newman+jenkins组合 - [ 接口测试 ] - 看云
这样的组合可以快速的让你开始接口测试,一起来看看这个小儿美的接口测试工具吧
Postman-录制Case
安装Postman
现在是一个单独的App,以前是Chrome的一个插件,现在单独出来了。
安装Postman Interceptor
记得一定要安装Postman Interceptor插件,这样在chrome浏览器上访问的信息都会在postman的app端同步显示。安装好后Postman Interceptor会在浏览器的右边显示,如下:
连接Postman和Interceptor
在我们使用postman前,开启这个工具:
我是在mac下安装postman的,打开后如下:
点击图中红框的按钮,打开Interceptor开关。
这样的工作准备完毕后,我们就可以通过chrome正常访问了。
这样就录制了一条url了。
过滤特定url
如果你想录制特定的url的访问请求,可以在postman interceptor中加过滤条件:
这样我们就只录制跟testerhome相关的请求了。
有了url只是开始,现在执行一下这个请求:
执行完后,我们有了返回值了,我们可以根据这个填写验证点
比如我们想验证返回的结果中是否包含了TesterHome,然后再来个反例,看是否包含Doctorq
验证语句如下:
这个时候执行,我们就能看到执行结果如下:
测试结果显示也很清晰。
用例已经执行完了,我们要把用例导出,用newman来执行:
ok,到newman了。
Newman-执行Case
安装成功后,执行上面命令,可以显示版本信息,现在可以执行接口测试了。
如果你出现如下错误,请看,是因为node4.0以上的版本支持最新的newman,所以我们下载最新的。
npm install -g newman@beta
这个时候执行就没问题,执行完毕后,会看出结果的详细信息。如果加上参数,可以生成如下报告:
newman也可以直接执行postman云端保存的collections,
具体怎么做请参考上面的文章。
因为newman的方式是通过命令行的方式,所以就可以通过jenkins去做定时自动化回归测试了。
Jenkins-自动化回归
具体怎么在Jenkins里面配置我就不讲解了
无法直接导入HAR包,不过现在呼声很高,请查看
App无法通过代理直接连接POSTMAN,这样录制移动端的http请求就很麻烦
这两种局限性,目前的想法的通过将har文件转为能导入postman的文件格式,有时间去尝试下。
页面正在加载中前端开发小技巧之Postman - 简书
<div class="fixed-btn note-fixed-download" data-toggle="popover" data-placement="left" data-html="true" data-trigger="hover" data-content=''>
写了14395字,被25人关注,获得了72个喜欢
前端开发小技巧之Postman
专职前端开发也有很长一段时间(10 months) =.= 了 其中用到各种各样小技巧 小工具。 零零散散的,今天决定把他们陆陆续续记录下来,O(∩_∩)O哈哈~
今天的主题是接口测试工具-Postman,它是Chrome浏览器上的一款半免费主要用来调试各种RestFul 接口。当然你需要翻墙才能拥有它。不愿意翻墙的童鞋也莫要惊慌,文章的末尾放上了Postman和Postman-Interceptor的网盘地址.("为啥不直接放这里???!!!" "没错! 我就是要忽悠大家看完这篇文章 嘿嘿嘿~")
产品开发流程中 常常很耗时的一块就是前后端程序员的接口联调,动辄 数据类型不对,"我要的数组,你为啥传个对象啊~~" "为啥我一POST, Status Code就500啊" 总总问题。当前后端好不容易联调完,抛给测试,测试有需要重新在页面里输入一个个数据验证表单结果对否。。简直是灾难。。
如果能有一个东西又能从当接口文档,又能反复多次测试接口,还能在团队之间共享,接口的理想反馈,那该多好!于是Postman出现了!
下午8.58.30.png
一个Postman 大概就长成上面这样[1号区域] 你可以不停的创建新的接口实例[2号区域] 敲上你的接口地址 选着对应的method(POST or GET) params 可以编辑参数[3号区域] 点击蓝色Send按钮 就可在这里看到返回结果啦!!! 是对是错,拉出来溜溜
GET型的方法都很容易将参数写在params里或者直接放在URL上但是POST 方法怎么办呢?别急看下面两张图
下午9.07.38.png
下午9.07.53.png
第一张图是大家都很熟悉的我们调用了POST接口后,相应的参数会显示在Form Data 里,我们只需利用 Ctrl+C Ctrl+V将其粘贴到 图二的body form-data(bulk edit模式)里去就行了,喜欢Key-Value模式的同学也可以点击 "Key-Value Edit" 按钮 去自由编辑 这样一来我们想怎么调用接口就可以轻松实现啦~~~ 再也不用在页面里点来点去 填写一大堆数据然后满怀期待的点击 "提交" 了。。。
对接口撰写测试用例也是常见的事,我们可以在Tests栏目里写些 希望Status Code = 200 之类,不了解语法也没事,右边的snippets 提供很多常用的语句
下午7.42.57.png
写完Tests 之后当然就是跑这些case了,我们可以点击左上角的Runner 选择好对应的Collection 和environment 后就可以Run Tests啦 !有没有很兴奋?测试同学再也不用在网页上瞎JB点了
下午7.48.28.png
Collections & Environment
Postman的左边栏可已创建文件夹一样的collection,我们可以根据系统将不同的接口归类。再利用Environment来配置环境变量,比如一个系统可能有local test dev omg exp build 多种环境
理想的工作流
每一个项目的Collection可以在后端 前端 测试之间完美share
Last but not Least
我要说的是Interceptor. 作为插件Postman的插件 =。=可以获取到浏览器的Cookie等认证信息。即,如果你需要测试的接口需要登录,开启Interceptor后你就可以自由使用啦
对对对 还有网盘地址
如果喜欢这篇文章,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
爱前端,在路上,希望结伴而行。
· 6232人关注
前端开发学习、总结
· 3463人关注
想做个『条理清晰的』 前端技术共享
· 1764人关注
如果喜欢这篇文章,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:为了账号安全,请及时绑定邮箱和手机
postman请求一个接口返回数据正常,APP请求接口,返回一个null
postman请求一个接口返回数据正常,APP请求接口,返回一个null,因为之前修改过代码,然后我把代码恢复到上一版本,APP请求接口,就能返回数据了,然后我在再次修改代码,提交上去,APP访问接口也是正常的,问题就是我两次代码修改得都一样啊,为什么会第一次我用 postman请求就有数据,APP请求,就没数据,
不要那么确定地两次修改的一样,既然两次请求数据不一样,说明两次修改的是不一样的,要认真检查,可能是参数传值出错。
你还没有登录,请先登录或注册慕课网帐号
c,javascript,css,php,linu...
这样看来,那自然是你第二次修改的和第一次修改的肯定有出入。
你还没有登录,请先登录或注册慕课网帐号
10010人关注
30282人关注
Copyright (C)
All Rights Reserved | 京ICP备 号-2}

我要回帖

更多关于 postman接口测试 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信