一:接口测试介绍

  接口测试:就是针对软件对外提供服务的接口输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能和接口描述文档的一致性。

  接口测试好处:接口测试通常能对系统测试的更为彻底,更高的保障产品质量,同时越早的发现底层问题,修改和维护的代价也越小。

  怎样做接口测试:接口测试时主要通过工具或代码模拟http请求的发送与接收。工具如:postman、jemter、java+httpclient等。也可以用接口自动化来实现,就是用代码实现,框架和UI自动化差不多,发送请求用断言来判断。

  接口测试流程:1.获取接口信息:通过接口文档和抓包来获取接口的基本调用方式和返回;2.接口测试用例设计:根据获取到的接口信息,按照接口测试用例设计方法设计参数和预期返回结果;3.接口发包:用工具或者编程向接口传递参数;4:返回信息验证:获取接口返回的结果,进行解析和验证。

  接口测试请求信息4大关注点:1.请求URL地址;2.Method方法;3.请求头域(Request Headers);4.请求参数(抓取信息中Query String Parameters对应Postman中Request Body)。

  

二:Postman get接口测试流程(以百度ip接口为例)

  1.抓取百度ip接口信息,复制url地址等。

   

  2.打开Postman,新建一个request(两种方式,刚开始打开的时候直接选择Requset或者打开Postman后直接选择+号),选择get方法,填写url(复制url后发现会自动填充url栏下面的Params参数项)等,发送请求,查看结果,经过多次测试发现ip接口中两个参数(query、resource_id)必备,其余参数可有可无。

  

  3.对于百度ip接口,多试几条测试用例,与预期的结果做对比,发现两个必备的参数少了一个,会报参数错误,在ip前面多加一个.依然正确。

  

  4.测试结束后可以保存到创建的测试集中,也可以将结果导出,导出的格式是json格式,可以将文件分享给同事朋友让他们使用Postman也进行文件导入。

  

  

三:Postman get接口头域操作

  上面百度ip接口,发现不需要Headers信息,填了Referer也不会报错,但是有些接口缺少头域信息就会报错,得不到预期结果。在这里举例腾讯课堂评论接口,由于没有相关接口文档,就参考别的讲师测试的最后结果。

  Referer介绍:正确英语拼法是referrer。由于早期HTTP规范的拼写错误,为了保持向后兼容就将错就错了。Referer  是 HTTP  请求header的一部分,当浏览器(或者模拟浏览器行为)向web服务器发送请求的时候,头信息里有包含 Referer。

  Referer的作用:1.防止盗链;2.防止恶意请求。

  

四:Postman请求面板详解

  1.Postman Request四大要素

  

  

  对于Request Body选项解释如下:

  form-data:对应于Content-type的multipart/form-data类型,即可以发送键值对也可以进行文件参数传递,对于文件传递每次发送请求需要重新传入不保存文件信息,键值对不写入url,而是直接提交。

  x-www-from-urlencoded:对应于抓包信息中Content-type头域为x-www-form-urlencoded的类型,是以键值对的形式发送的表单参数,同时参数会携带在url中。

  raw:选中对可以使用请求体原始格式编辑各Content-type类型对应的参数格式,直接按请求体的格式来进行内容发送。

  binary:可以上传二进制文件内容。一次只能上传一个文件,也不能保存文件。

  2.Postman Response相应信息

  

Postman系列二:Postman中get接口实战讲解(接口测试介绍,接口测试流程,头域操作)的更多相关文章

  1. Postman系列三:Postman中post接口实战(上传文件、json请求)

    一:接口测试过程中GET请求与POST请求的主要区别 从开发角度我们看get与post的主要区别是:1.Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据:2.Get安全性比Post低 ...

  2. ETL利器Kettle实战应用解析系列二 【应用场景和实战DEMO下载】

    本文主要阅读目录如下: 1.应用场景 2.DEMO实战 3.DEMO下载 1.应用场景 这里简单概括一下几种具体的应用场景,按网络环境划分主要包括: 表视图模式:这种情况我们经常遇到,就是在同一网络环 ...

  3. java中多线程中Runnable接口和Thread类介绍

    java中的线程时通过调用操作系统底层的线程来实现线程的功能的. 先看如下代码,并写出输出结果. // 请问输出结果是什么? public static void main(String[] args ...

  4. javaScript系列:js中获取时间new Date()详细介绍

    var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1970-????)m ...

  5. Postman系列五:Postman中电商网站cookie、token检验与参数传递实战

    一:Postman中电商网站cookie实战 Postman接口请求使用cookie两种方式: 1.直接在header(头域)中添加cookie,适用于已知请求cookie头域的情况 2.使用Post ...

  6. ETL利器Kettle实战应用解析系列二

    本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析系列二 [应用场景和实战DEMO下载] 三.ETL利器Kettle ...

  7. Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件

    一:Postman中接口请求设置环境变量和全局变量 全局变量和环境变量可以通过Pre-request Script和Tests设置,会在下面测试沙箱和测试断言中讲到. 全局变量的设置:官网参考http ...

  8. 「软件测试实战教程系列(三)」弃繁就简,接口测试神器Postman|收藏版

    软件测试实战教程系列(三)弃繁就简,接口测试神器Postman|收藏版 Postman主要帮我们干了三件事: 1.把相关集合放到一个集合当中方便管理. 2.对指定接口发送请求. 3.断言 下面我们使用 ...

  9. postman系列之批量执行接口测试用例

    postman如何批量执行接口测试用例~其实很简单,但是会给我们的工作带来很多方便~ 比如我们写了几十个测试用例,请求都是同一个服务器IP,一旦服务器IP地址从测试环境搬到线上环境,需要修改所有的服务 ...

随机推荐

  1. c++快速排序算法

    c++快速排序算法 题目描述 利用快速排序算法将读入的NN个数从小到大排序后输出. 快速排序是信息学竞赛的必备算法之一.对于快速排序不是很了解的同学可以自行上网查询相关资料,掌握后独立完成.(C++选 ...

  2. App强更逻辑实现以及版本号如何判断大小

    //在开发中,经常会遇到有些需求需要app强更,思路大概:所有请求都要带上版本号和渠道(android或ios),然后网关对这些版本号判断,如果发现这些版本号是很旧的,就返回错误码或者标志符告诉app ...

  3. ~~函数基础(一):函数&参数~~

    进击のpython 函数基础(一):参数 ==说明一点奥,如果你前置文章没有看懂,那么不建议你直接看这个== ==因为看了也是浪费时间,没有意义== 好,接下来就是Python的灵魂部分了--函数 在 ...

  4. 20141111-WCF获得Web路径

    在WCF中调用Server.MapPath 获取服务发布目录路径 在WCF中调用Server.MapPath 获取服务发布目录路径 在WCF中想使用Server.Map获取当前服务发布目录的绝对路径. ...

  5. app组件跳转到页面

    这段时间根据项目需求,开发一个app的一个页面,这里用到了从组件跳转到index文件下的.vue页面.第一次接触,参考了同事的文档,写出来了,这里记录一下. 文档链接: https://www.yuq ...

  6. InstantiationException:mybatis.spring.transaction.SpringManagedTransactionFactory

    问题表现 Error creating bean with name 'sqlSessionFactory' Invocation of init method failed; nested exce ...

  7. c语言进阶3-有参函数

    一.       有参函数的定义 有参函数的定义格式如下: 类型标识符  函数名(形式参数表列) { 语句: } 如 void fun(int a,int b) { printf(“a+b=%d”,a ...

  8. .net持续集成sonarqube篇之sonarqube基本操作(一)

    系列目录 Sonarqube Web管理界面虽然设计的简洁大方,也非常直观,但是由于功能繁多,这对快速入手以及快速定位到想要的功能都是一个挑战,在以后的几个小节里我们简要介绍. OwerView(概览 ...

  9. Appium+python自动化(二十三)- 真假美猴王Monkeyrunner与Monkey傻傻的分不清楚(超详解)

    简介 看<西游记>第五十七回,说是“六耳猕猴”化作孙悟空的摸样,伤了唐僧,后又和孙悟空大打出手…… 这位假孙悟空,实力不用多说了吧,和真孙悟空一般无二,大战孙悟空,闹到上天入地下海. 在唐 ...

  10. python基础-python解释器多版本共存-变量-常量

    一.编程语言的发展史 机器语言-->汇编语言-->高级语言,学习难度及执行效率由高到低,开发效率由低到高 机器语言:二进制编程,0101 汇编语言:用英文字符来代替0101编程 高级语言: ...