什么是接口?   ------   某个对象和外界交互的部分

消息交互接口:基于soap的web service  ---- http协议

web api   ------- http协议

diameter、radius  ------ socket协议

编程接口:各种语言的开发包

其他接口:数据服务产品:sql语言操作接口

对账系统:FTP文件接口

web服务接口:互联网产品对外提供的服务接口,我们通常称之为web服务接口、web service接口、REST接口

我们经常说的'接口测试'、‘API测试’,就是对web服务接口的测试。 包括APP服务端接口。

主要包括两种类型:① 基于SOAP的web service接口

② REST接口

HTTP协议:超文本传输协议

就是浏览器与服务器之间进行‘沟通’的一种规范。

HTTP协议属于应用层的协议。

HTTP版本:在0.9  1.0  1.1(最广泛)  2

要想知道http协议,就要清楚它的请求和响应,当然还有请求方式、状态码、URL地址等。

http请求:一个完整的http请求,包含一个请求行,若干个请求头、空行、消息体

请求行:描述客户端的请求方法(如get、post等)、请求资源的名称、http协议的版本号

请求头:包含客户机请求的服务器主机名,客户机的环境信息等

(换行)

消息体:指浏览器端通过http协议发送给服务器的实体数据(有三种数据格式:json、xml、www-form-urlencoded)

HTTP请求方法最常用的有哪些:get 、post、head、put、delete

http响应:一个http响应代表服务器端向客户端回送的数据,它包括:一个状态行、若干个消息头、空行、以及实体内容(响应体)

响应头:包含 状态码、服务器类型、服务器的数据压缩格式、传送数据的编码格式等

状态行:如HTTP/1.1 200 OK  (协议的版本号是1.1,响应状态码为200  响应结果为OK)

实体内容:包含浏览器能够解析的静态内容,例如 html、纯文本、图片等等信息

HTTP和HTML的区别?

HTTP是一种用来定义网页的文本语言  标记语言

HTTP是网络上传输信息的协议

接口测试的流程:- 阅读API接口文档

- 编写测试用例

- 根据测试用例进行API的手工测试

① 开发API工具

② 使用工具进行测试

------------------------------------------------------------------------------------------------------------------------------------------------------------

 postman工具的使用:是最广泛的rest api测试工具。

postman提供了一个多窗口和多标签的界面。

侧边栏分为两个主要标签History和Collections。我们填过的请求都会自动的保存到history中;Collections可以把我们的API请求分类,实现目录式管理。

右边区域是我们操作的核心区域。用来填写API请求的具体内容:包括http请求的url、请求头、请求体,点击发送后,查看响应信息是什么都在这里。

   构建http请求   ---- 包括URL、请求方法、请求头、消息体

URL的构建:协议类型 如http可以省略不写,如果是https,则需要写上。 如 www.baidu.com

有时候,url请求中是有参数的,如 https://baike.baidu.com/item/Selenium/18266?fr=aladdin 问号后面的部分fr=aladdin就叫做查询字符串

也可以有n多个参数,用符号&隔开  如?fr=aladdin&pagenum=1

请求头的构建:要在HTTP头部中添加字段,可在Headers标签中添加

添加好后,点击send,发送出去的http请求中就会携带这些添加的头部。

请求体的构建:最常见的就是post 、put请求,有时delete也有消息体

不是所有的http请求都是有消息体的,这是由系统的设计者决定的。

我们在body中添加参数,并指定是什么类型的消息体。换句话说就是将参数存放的位置从url移到了body

消息体的类型都是通过headers中的content-type参数来表明的。如 Content-Type:application/x-www-form-urlencoded

消息体类型除了application/x-www-form-urlencoded外,比较常见的还有application/json、application/xml,分别对应json格式的文本和xml格式的文本

还有multipart/form-data

json介绍:是一种编程语言对象的字符串表示法,是一种数据保存和传输的序列化格式。

在接口测试中,我们需要传递数据对象给另外的程序,比如一个字典的内容。那我们传输就必须要序列化,xml可以用程序进行序列化,但效率不高,最后json解决了这一麻烦。

json好处:易读、易编写、易解析、易生成。

如果数据格式是json或xml,这种情况下来构造消息体,需要选择类型为raw,并且在右边的text下拉框中选择相应的类型,并在body编辑框中输入相应格式的文本。

选择不同的类型,postman会自动添加对应的header

raw并不是一种http body的类型,而是postman用来表示 可直接填写消息内容的方法。

Collection和Folder:

在postman中,我们可以用Collection和Folder对API进行分类存放和管理。collection可以理解为顶级目录 像C盘一样;Folder可以理解为C盘下的一个个目录。

通常一个产品的API接口测试,我们可以创建一个Collection和其对应。根据各个API的功能,分成不同的Test Suite,对应到不同的Folder中。

导入和导出:

导入和导出最大的作用就是方便共享。比如 同事之间也要执行,就可以把这些文件导出给到他,他再导入,仍可以继续执行。import是导入   export是导出。

          

创建postman账户:

postman有比较高级的同步功能,只要有账户,不管在哪台机器登录,都可以使用该账户,获取其保存的API信息。

WebAPI测试概念及postman初识的更多相关文章

  1. CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 转载

    CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 2016年09月01日 13:56:30 疯子19911109 阅读数:4823 标签:  ...

  2. 原码,补码,反码的概念及Java中使用那种存储方式

    原码,补码,反码的概念及Java中使用那种存储方式: 原码:原码表示法是机器数的一种简单的表示法.其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示 补码:机器数的补码可由原码得到.如果机器 ...

  3. 转 RabbitMQ 基础概念及 Spring 的配置和使用 推荐好文 举例讲解

    从不知道到了解—RabbitMQ 基础概念及 Spring 的配置和使用 原理同上 请求地址:http://localhost:8080/home?type=3&routing_key=myO ...

  4. 后端程序员之路 30、webapi测试工具的一点想法

    有了webapi,对应的,也就要有各种语言的sdk,有时候,还要有一个好用的api测试工具.sdk和api测试工具在功能上有一些异同,有时候测试工具会直接基于sdk来制作. 它们通常包含: 1.htt ...

  5. 如何在ASP.NET Core Web API测试中使用Postman

    使用Postman进行手动测试 如果您是开发人员,测试人员或管理人员,则在构建和使用应用程序时,有时了解各种API方法可能是一个挑战. 使用带有.NET Core的Postman为您的Web API生 ...

  6. API测试工具SoapUI & Postman对比分析

    本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 最近公司要引入API测试工具,经过调查和了解,最终决定在SoapUI ...

  7. 测试那些事儿—postman进阶使用与实战

    1.postman进阶使用 1)环境与变量: 备注:全局 和 局部 变量不会影响到变量的调用,区别在于局部变量对于非当前环境不能使用而已. a.当测试存在多个环境时,可以先设置一个环境,然后在此环境下 ...

  8. 测试那些事儿—postman入门介绍

    1.postman入门介绍 一款功能强大的网页调试与发送网页HTTP请求的工具. 1)模拟各种HTTP请求,如get,post,put,delete 2)测试集合Collection    Colle ...

  9. ASP.NET WebAPI 测试文档 (Swagger)

    ASP.NET WebAPI使用Swagger生成测试文档 SwaggerUI是一个简单的Restful API测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON配置显示API .项目 ...

随机推荐

  1. Resources for embedded SQL engine

    1. Official Website for SQLite: http://www.sqlite.org/ 2. .Net Wrapper for SQLite (System.Data.SQLit ...

  2. 【持续更新】【pat】pat刷题技巧记录

    修改code completion快捷键位CTRL+ENTER,帮助提示函数名称 修改命令行提示符的属性,开启快速编辑模式,方便调试 添加c++11语言标准支持 开启代码调试功能 对输入的字符串进行切 ...

  3. GitHub和Git

    GitHub托管项目代码 首先一些基本概念: repository(仓库) 用来存放项目代码,每个项目代表一个仓库,开一个项目就意味着你有一个仓库. star(收藏) 收藏方便下次查找. fork(复 ...

  4. (二)初识NumPy库(数组的操作和运算)

    本章主要介绍的是ndarray数组的操作和运算! 一. ndarray数组的操作: 操作是指对数组的索引和切片.索引是指获取数组中特定位置元素的过程:切片是指获取数组中元素子集的过程. 1.一维数组的 ...

  5. 【Java】final修饰符的使用

    final修饰符的使用 1.修饰类: final修饰的类不能被继承,final修饰的类里面的方法都是(隐式)final方法 2.修饰方法: final修饰的方法不能被重写 3.修饰变量(被修饰的变量一 ...

  6. Easy 2048 Again(状压dp)

    题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3802 题意: 从数列A中, 删除若干个数(可以0个), 是删除 ...

  7. windows下安装Apache、php、mysql集成环境

    一.准备工作 本次安装的版本分别为:apache2.4  .php5.6 . mysql5.7 下载地址为:http://pan.baidu.com/s/1boQNIOn 密码:zarx 二.安装步骤 ...

  8. Extjs导入Excel文件之后grid自动刷新显示刚插入的数据

    var winUpload = new Ext.Window({ title: '导入excel文件', width: 400, height:200, listeners: { close: fun ...

  9. spring、mybatis、事务项目整合,附完整代码和数据库文件

    配置依赖项 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/ ...

  10. flex一些属性

    // 改变主轴的方向 flex-direction: column; // display:flex的子元素无法设置宽度 // 子元素有个flex-shrink属性,表示在父元素宽度不够的情况下是否自 ...