接口测试定义

接口是前后端沟通的桥梁,是数据传输的通道,包括外部接口、内部接口。内部接口又包括:上层服
务与下层服务接口,同级接口

生活中常见接口:电脑上的键盘、USB接口,电梯按钮,KFC下单

接口测试:是对系统或组件之间的接口进行测试,主要校验数据的交换、传递和控制管理过程,以及
相互逻辑依赖关系

接口自动化测试:让程序代替人为对接口项目进行自动化验证测试的过程

接口测试意义

接口测试使"测试更早投入"这句话变成现实

接口测试可以测试一些界面测试非常难以实现或无法测试的范围

从对项目的影响,接口测试直接测试后端服务,更加接近服务器上运行代码,也更能发现影响范围广泛的bug

接口测试更容易和自动化测试系统相结合

总结:熟练接口测试,能够独立搭建接口测试框架是测试工程师能力分水岭的体现

接口测试的实现

  • 实现方式:

1.使用接口测试工具来实现,比如jmetey,postman
2.通过编写代码来实现,比如python+requests

  • 两者比较

1.接口工具:更容易上手;测试数据不好控制;不方便测试加密接口;扩展能力不足
2. 代码实现:比较难;测试数据容易控制;可以使用加密函数对接口加密;容易扩展

接口测试的原理

接口测试是基于协议进行测试的,实际上是黑盒测试,基本的测试思路是通过输入和输出来判断
被测系统或对象的逻辑是否符合用户需求。

 
接口测试

HTTP协议

http (Hypertext Transfer Protocol) :超文本传输协议,一个简单的请求响应协议

https:是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密(SSL)和身份认证保证了传输过程的安全性。

FTP(File Transfer Protocol):文件传输协议,在网络上传输大的文件时,一般也采用该协议。

HTTP组成

http消息是服务器和客户端之间交互数据的方式。有两种类型的消息:

1.请求:由客户端发送,用来触发一个服务器上的动作

请求由三个部分组成:请求行、请求头、请求体

2.响应:来自服务器的应答

响应也由三个部分组成:状态行、响应头、响应正文

http有哪些请求方式:

GET:向特定资源发送请求
Post:向指定的资源,提交数据进行处理请求
HEAD DELETE TRACE CONNECT OPTINONS PUT

 
接口测试

接口测试的流程

接口测试也是属于功能测试,所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:

1.分析测试接口文档
2.根据接口文档编写测试用例
3.准备接口测试脚本,一般是用工具来完成的
4.执行接口测试活动
5.得出接口测试报告

 
接口测试
 
接口测试
 
软件测试全栈学习路线.jpg

接口测试原理及Postman详解的更多相关文章

  1. Go语言备忘录:反射的原理与使用详解

    目录: 预备知识 reflect.Typeof.reflect.ValueOf Value.Type 动态调用 通过反射可以修改原对象 实现类似“泛型”的功能   1.预备知识: Go的变量都是静态类 ...

  2. 基础 | batchnorm原理及代码详解

    https://blog.csdn.net/qq_25737169/article/details/79048516 https://www.cnblogs.com/bonelee/p/8528722 ...

  3. Oracle中的SQL分页查询原理和方法详解

    Oracle中的SQL分页查询原理和方法详解 分析得不错! http://blog.csdn.net/anxpp/article/details/51534006

  4. Spring学习 6- Spring MVC (Spring MVC原理及配置详解)

    百度的面试官问:Web容器,Servlet容器,SpringMVC容器的区别: 我还写了个文章,说明web容器与servlet容器的联系,参考:servlet单实例多线程模式 这个文章有web容器与s ...

  5. Go语言备忘录(2):反射的原理与使用详解

    本文内容是本人对Go语言的反射原理与使用的备忘录,记录了关键的相关知识点,以供翻查. 文中如有错误的地方请大家指出,以免误导!转摘本文也请注明出处:Go语言备忘录(2):反射的原理与使用详解,多谢! ...

  6. DeepLearning tutorial(3)MLP多层感知机原理简介+代码详解

    本文介绍多层感知机算法,特别是详细解读其代码实现,基于python theano,代码来自:Multilayer Perceptron,如果你想详细了解多层感知机算法,可以参考:UFLDL教程,或者参 ...

  7. 机器学习——KMeans聚类,KMeans原理,参数详解

    0.聚类 聚类就是对大量的未知标注的数据集,按数据的内在相似性将数据集划分为多个类别,使类别内的数据相似度较大而类别间的数据相似度较小,聚类属于无监督的学习方法. 1.内在相似性的度量 聚类是根据数据 ...

  8. Spark RDD、DataFrame原理及操作详解

    RDD是什么? RDD (resilientdistributed dataset),指的是一个只读的,可分区的分布式数据集,这个数据集的全部或部分可以缓存在内存中,在多次计算间重用. RDD内部可以 ...

  9. 非极大值抑制(NMS,Non-Maximum Suppression)的原理与代码详解

    1.NMS的原理 NMS(Non-Maximum Suppression)算法本质是搜索局部极大值,抑制非极大值元素.NMS就是需要根据score矩阵和region的坐标信息,从中找到置信度比较高的b ...

随机推荐

  1. Codeforces Round #574 (Div. 2) D1. Submarine in the Rybinsk Sea (easy edition) 【计算贡献】

    一.题目 D1. Submarine in the Rybinsk Sea (easy edition) 二.分析 简单版本的话,因为给定的a的长度都是定的,那么我们就无需去考虑其他的,只用计算ai的 ...

  2. 你真的懂 i++ 和 ++i 吗?

    对于 ++i 和 i++,许多人可能都知道,不就是先加1再取值,和先取值再加1嘛.然而,真的是这样吗?请先看以下4道题,能全部答对可以忽略这篇文章. 题目 // 示例1 int i = 1; i = ...

  3. JVM笔记 -- 来,教你类加载子系统

    类加载子系统 类文件首先需要经过类加载子系统,进行加载,进类信息等加载到运行时数据区,生成Klass的实例. 在类加载子系统中有以下3个阶段操作(广义上的加载): 加载阶段 Bootstrap Cla ...

  4. C# AppDomain.CurrentDomain.BaseDirectory

    AppDomain.CurrentDomain.BaseDirectory   是获取基目录,它由程序集冲突解决程序用来探测程序集.由显示的路径可以看出,它代表的是程序集所在的目录,它具有读取和写入的 ...

  5. TCP/IP协议的经典面试知识点总结

    前言 大家好啊,我是汤小圆. 今天给大家推荐的是,TCP/IP协议的经典面试知识点总结,希望对大家有帮助,谢谢. 简介 我们平时经常听到的TCP/IP协议,其实是一个协议族: 只不过因为TCP.IP是 ...

  6. day03---Vue(04)

    一.组件 组件(Component)是 Vue.js 最强大的功能之一. 组件可以扩展 HTML 元素,封装可重用的代码. 组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界 ...

  7. vue自定义插件封装,实现简易的elementUi的Message和MessageBox

    vue自定义插件封装示例 1.实现message插件封装(类似简易版的elementUi的message) message组件 <template>     <transition  ...

  8. SpingCloud Alibaba实战(1:微服务与SpringCloud Alibaba)

    1.什么是微服务? 微服务可谓是这几年比较热门的技术,从2017开始逐渐爆火,逐渐大大小小的公司纷纷将微服务技术引入并在实际业务中落地. 微服务的概念最早是在2014年由Martin Fowler和J ...

  9. 三分钟玩转微软AI量化投资开源库QLib

    更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流. 微软QLib简介 微软亚洲研究院发布了 AI 量化投资开源平台"微矿 Qlib".Q ...

  10. [Azure Devops] 获取单元测试的代码覆盖率

    1. 获取代码覆盖率 上一篇文章里,我们在 Pipeline 中插入一个单元测试并把所有单元测试都通过作为 Pipeline 通过的硬性要求.除此以外,我们还可以获取单元测试的代码覆盖率,用作衡量代码 ...