如何 使用 postman 测试 接口 ie测试webservice接口

第一部分 接口测试概要
接口测试概要
接口测试对象理解接口测试到底是什么,做什么。避免与其他行业和技术的接口概念混淆。
技术关系模型通过技术关系了解接口测试在性能测试和安全测试中的应用及重要程度。
互联网应用测试点分析介绍互联网程序构成,理解client->server->database架构模型,分析测试点,便于体系化学习和归类。
接口测试认知发现身边无数的接口,为什么要做接口测试,为什么需要自动化。
第二部分 接口测试入门
接口测试入门
网页接口实现理解网页形成过程,与服务器交互过程原理,实现技术解析,以及浏览器插件的应用。
(html/js/css/document/http/Jquery)
接口测试思路学习接口测试的思路和重点,以及与传统测试思路上的改变。
接口测试错误分析从最简单的接口开始起步,进行接口测试实战,分析错误原因。
接口测试用例从用例角度分析,对比与传统需求概念测试思路,学习设计编写接口测试用例。
第三部分 协议构造分析
协议构造分析
协议基础通过学习协议的基础,理解http协议工作原理,以及在实际程序中的作用。
请求格式(Request)请求数据中的详细内容介绍。
响应格式(Response)响应数据中的详细内容介绍。
http状态响应信息中http状态的含义与误区,如何正确看待状态码。
常规Header请求与响应各自常规使用的Header以及其作用和用法,cookie与session的详细区别。
参数测试切入点从开发实现角度,深度认知接口中的测试点。
协议优缺点http协议的优缺点及架构影响。
第四部分 接口测试分析
接口测试分析
FiddlerFiddler监控原理,如何抓包(任意程序、手机)、修改数据、找到想要的信息,并模拟发送数据,并发行为,网速控制,接口耗时细节分析等。
关联性接口测试学会对于多步骤(登录、认证、验证码)或带有cookie、session、token的接口如何测试。
缺陷定位思路明确错误范围,分离客户端服务器,结合数据定位问题所在。
缺陷描述方法避免从表面描述问题,减少操作流程模式和不可重现错误的情况。
Mock的应用Mock测试在接口测试中的使用,介绍其实现方法和原理。
第五部分 接口测试实现
接口测试实现
浏览器接口测试插件浏览器接口插件工具的使用以及优势,poster、HttpRequester,PostMan等。
接口测试工具JmeterJmeter常见功能的使用,多重逻辑、参数化、关联、数据驱动,断言等。
接口测试工具soapuiwebservice介绍,了解WSDL、SOAP,如何通过soapui测试webservice接口。
工具通用性讲解LoadRunner在接口测试中的应用,http、webservice。
java4httpjava代码基础以及http开发实例介绍。Jsoup、httpclient、httpconnect
第六部分 抓包专题
miniSniffer便捷型快速抓包工具。
WsExplorer进程级抓包工具。
Wireshark各种系统和环境下数据包分析。
Fiddler二次开发Fiddler脚本开发、插件开发。
第七部分 接口测试扩展
接口测试扩展
网络测试定位方法准确测试定位网络问题,认知TCP\UDP,不再只会ping。
http传输特性SSL、TLS、GZIP、DEFLATE、Chunked。
缓存认知与分辨缓存的作用,服务器缓存、HTTP缓存、文件缓存、数据库缓存、第三方缓存,redis、memcached。
字符串数据格式json、xml、urlencode、base64、MD5、jsString
正则表达式正则表达式 regex,接口测试中如何应用正则表达式抓取动态数据。
字节与编码认知字节码,浅谈存储数据与网络数据的传输原理。
传输编码与乱码常见编码GB2312、UTF8、ANSI,乱码的产生、辨别与解决方法。
接口安全测试实例讲解跨站脚本、sql注入等安全问题的测试以及预防。
第八部分 协议扩展
网络协议关系认知socket、tcp、udp、http、rest、webservice、soap、hessian、rpc
RestRest与http的关系和区别。
RPCRPC、Remoting等类似协议的实现方法,数据报文形式。
Socket开发与测试Socket原理介绍,WebSocket的应用与测试方案。
第九部分 接口自动化
接口自动化
接口实现回顾使用 jsoup、httpclient进行 http协议测试,结合Testng使用。
数据驱动Testng的数据驱动体系,数据库驱动。
验证与断言Testng Testng assert断言体系,断言原理。
日志与测试报告日志与报告解决方案。
多线程Testng多线程体系的使用方法。
接口框架自定义框架实现与封装思路。
持续集成持续集成解决方案。
第十部分 接口测试实战
接口测试实战与应用
加密接口测试理解常规加密、签名做法,如何进行测试。
接口文档认知如何解读接口文档进行接口测试。
自动化爬虫应用利用接口测试技术,实现高速爬虫。
其他应用接口技术在生活中的极致应用。使用Postman玩转接口测试 - CSDN博客
使用Postman玩转接口测试
(一)前言:
之前搞自动化接口测试,由于接口的特性,要验证接口返回xml中的数据,所以没找到合适的轮子,就自己用requests造了个轮子,用着也还行,不过就是case管理有些麻烦,近几天又回头看了看postman也可以玩的很溜,所以和大伙分享下,但是postman也有自己的弱点,还是需要根据自己项目的特点来选择适合的工具。废话少说,开始...
(二)安装和介绍
1、首先安装chrome,然后在chrome的商店里搜postman,&,然后有位同学对整个界面做了介绍,
Collections:在Postman中,Collection类似文件夹,可以把同一个项目的请求放在一个Collection里方便管理和分享,Collection里面也可以再建文件夹。如果做API文档的话,可以每个API对应一条请求,如果要把各种输入都测到的话,就需要每条测试一条请求了。这里我新建了一个example用于介绍整个流程,五个API对应五条请求。这个Collection可以通过/collections/96b64a7ce4ee导入你自己的Postman中。
上面的黑字注册是请求的名字,如果有Request description的话会显示在这下面。下面的蓝字是保存起来的请求结果,点击可以载入某次请求的参数和返回值。我会用这个功能给做客户端的同事展示不同情况下的各种返回值。保存请求的按钮在15.
选择HTTP Method的地方,各种常见的不常见的非常全。
请求URL,两层大括号表示这是一个环境变量,可以在16的位置选择当前的environment,环境变量就会被替换成该environment里variable的值。
点击可以设置URL参数的key和value
点击发送请求
点击保存请求到Collection,如果要另存为的话,可以点击右边的下箭头
设置鉴权参数,可以用OAuth之类的
自定义HTTP Header,有些因为Chrome原因不能自定义的需要另外装一个插件Interceptor,在16上面一行的卫星那里
设置Request body,13那里显示的就是body的内容
在发起请求之前执行的脚本,例如request body里的那两个random变量,就是每次请求之前临时生成的。
在收到response之后执行的测试,测试的结果会显示在17的位置
有四种形式可以选择,form-data主要用于上传文件。x-www-form-urlencoded是表单常用的格式。raw可以用来上传JSON数据
返回数据的格式,Pretty可以看到格式化后的JSON,Raw就是未经处理的数据,Preview可以预览HTML页面
点击这里把请求保存到2的位置
设置environment variables和global variables,点击右边的x可以快速查看当前的变量。
测试执行的结果,一共几个测试,通过几个。
这个界面就是免费版的主要内容,和其他API测试工具相比,已经足够好用。如果要使用自动化测试,需要购买9.99美金的Jetpacks,暂时不想购买的话可以试一下。现在是可以免费试用的,不但拥有Jetpacks的功能,还能与其他账户同步Collection。
(三)实例
这里就以我的一个模块的返回验证来做例子了,两个模块间是http请求,返回的是xml数据,要验证,返回数据的个数,传递的参数
再看验证点Tests:这里的几种snippets很好用,而且这里使用的是js,所以会点js就可以自己写逻辑啦
&点击send之后,可以看到返回的数据
tests的结果:
我要验证的是headinfo里的status=0和returnNum&0,下面是test的结果,说明测试通过,这时再回头看Tests中的内容就会发现,tests['status'] = s.$.status==='0'中tests['status']&被赋成s.$.status==='0',若s.$.status==='0'为true,则case通过,否则fail,就是这么简单,其实主要的关键就是要找到你的验证点,如果只验证返回code,直接用右侧的snipplets中的就可以,tests[&Status
code is 200&] = responseCode.code === 200; snipplets就自己用蹩脚的英语理解下吧,responsebody包含字符串、xml转json、responsebody是一个字符串、json变量校验、response header 校验、返回时间、status code、还有tiny validator,其实在Tests里是支持js的,所以想怎么写就怎么写,前提是得会点js。
在使用js的时候,需要调试变量,或者说怎么知道我要验证的变量取值是什么呢?想到了windows.alert(),可是什么也没出,然后就是console.log(),发现没有地方能出console,然后google了下,发现chrome是支持的,就是使google develop tools 支持postman :
(1)chrome://flags/ ,启用下面这个
&(2)&然后重启chrome和postman,F12打开chrome develop tools ,再点send,就可以log出我们要的东西了
有了上面这些方法,再复杂的接口测试我们都能搞定,然后就是把设计好的case都放在一个collection中,就是类似于testsuite,然后点击左上角的Runner来执行collection
附录:这位同学的例子很好的展示了通过设置环境变量来处理这类请求有先后关系的case,很好的例子,转过来啦
生成一个随机字符串作为用户名和昵称
postman.setEnvironmentVariable(&random_username&, (&0000& + (Math.random()*Math.pow(36,4) && 0).toString(36)).slice(-4));
POST /index.php/users HTTP/1.1
Cache-Control: no-cache
Postman-Token: -aac2-71fb-cad4-3e737f37c4d0
Content-Type: application/x-www-form-urlencoded
运行测试、检查结果
直接用刚才生成的环境变量发起请求
POST /index.php/authentication HTTP/1.1
Cache-Control: no-cache
Postman-Token: aac7d0ac-e0e3-ecf2-39da-b8dca672e3d7
Content-Type: application/x-www-form-urlencoded
运行测试、检查结果,并将返回的token记录下来
3. 添加一张卡
先生成一个卡号和卡名
postman.setEnvironmentVariable(&random_cardno&, Math.round(Math.random()*9999999));
postman.setEnvironmentVariable(&random_cardname&, (&0000& + (Math.random()*Math.pow(36,4) && 0).toString(36)).slice(-4));
然后发起请求,这里调用了刚才获取到的Token,放在header的自定义字段里作为鉴权(SAE不能用Authorization这个字段,不清楚原因)
POST /index.php/cards HTTP/1.1
X-Authorization: d4c4a0b7b36c73e7a13b7e24a596093b
Cache-Control: no-cache
Postman-Token: d44d573f-f17a-366c-2cd7-1d5b8b709233
Content-Type: application/x-www-form-urlencoded
4. 查询刚才生成的卡
发起请求,调用了刚才生成的卡号
GET /index.php/cards/1385526 HTTP/1.1
Cache-Control: no-cache
Postman-Token: 1e5aca57-c3bb--c639cd60b5c8
运行验证,和刚才生成的卡名对比,并记录新卡的ID
5. 充值
发起请求,使用了刚才获得的新卡ID
POST /index.php/deposit HTTP/1.1
X-Authorization: d4c4a0b7b36c73e7a13b7e24a596093b
Cache-Control: no-cache
Postman-Token: 388c95e0-b5ce-9bbf-23384
Content-Type: application/x-www-form-urlencoded
运行验证(由于是新建的用户,没有余额,无法给卡片充值,故返回403 Forbidden)
文章来源:/sparkling-ly/p/5807238.html
本文已收录于以下专栏:
相关文章推荐
1.为什么是Fiddler?
抓包工具有很多,小到最常用的web调试工具firebug,达到通用的强大的抓包工具wireshark.为什么使用fiddler?原因如下:
a.Firebug虽然可以抓包...
POST使用中的一些问题
环境的问题
开发人员开发完的接口文档是的接口URL地址通常是指向本地的localhost环境的,但是提供给其他团队成员的接口通常是需要调用另外一台服务器的,其他成员不得不...
背景今晚上微信群聊到testerhome的认证,接着有人说使用postman可以做的,刚好postman我也使用过,但是当时在用的时候outh2的认证确实把我难倒了,当时也没有去深究这个问题,接着就这...
Postman这款工具可以让你很方便的测试你的Web API,那如果你实在是没办法用Postman,必须手写代码,又或者你有别的需求是Postman没法实现的,你必须写一个特殊的script或App来...
Postman用法简介-Http请求模拟工具
  在我们平时开发中,特别是需要与接口打交道时,无论是写接口还是用接口,拿到接口后肯定都得提前测试一下,这样的话就非常需要有一个比较给力...
我们已经知道如何用Postman组装并发送消息,那我们如何根据需求用Postman来做测试呢?在这开始之前,我们先来看看Postman的左边面板:这里包含了History和Collection,我们可...
最近需要测试产品中的REST API,无意中发现了PostMan这个chrome插件,把玩了一下,发现postman秉承了一贯以来google工具强大,易用的特质。独乐乐不如众乐乐,特此共享出来给大伙...
最近在做Web
API开发,开发完成后,需要对API进行自测,自测通过后才能checkin到代码库。之前进行web接口测试的时候,使用过Chrome浏览器的一个插件——Postman,觉得很好用,方...
可直接通过切换环境来实现多个环境中的参数切换。常用功能:环境地址切换、全局变量使用
环境请求地址切换
在&百度&下,新增”Cnblos随笔“文件夹
开发环境地址
http://www.c...
在开发APP接口的过程中,一般接口写完之后,后端开发都会模拟调用一下请求。在用Postman之前,对于一般的get请求我基本都会用浏览器来简单模拟。而对于post请求,我一般习惯写代码来调用。可以用J...
他的最新文章
讲师:宋宝华
讲师:何宇健
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
就像postman一样可以测试get、post一样
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
postman也可以测试webservice接口啊。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
用抓包吧,charles调试HTTP很合适,应该可以满足你的要求了。
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:

我要回帖

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

 

随机推荐