当前位置: 首页 > news >正文

深入了解接口测试:揭秘网络分层和数据处理!

网络分层和数据

上一小节中介绍了接口测试中一些必要重要的定义,这一节我们来讨论一下在学习接口测试过程中我们要关注的最重要的东西:网络分层和数据。

首先,我们来尝试理解一下,为什么网络是要分层的呢?

我们可以想象一个整个互联网,有无数的终端,很多很多协议,无数的交换机和路由器。随着时代不断发展,这张网络越来越大,甚至你家的冰箱可能都能上网。

为了描述这样的超级复杂的系统,计算机网络采用了分层的方法,来描述这种复杂性。

我们在日常生活中的一个类似的例子是:乘飞机旅行

这里,我们把在机场乘坐飞机旅行的过程按照分层的模型划分成5个层次。

对其中任意一个层次来说,它都和它下面的层次一起提供了某种功能,比如:

1. 在票务层及以下层次,提供了一个人和他的行李从一个机场柜台到另一个机场柜台的转移。

2. 在行李层及以下层次,提供了一个人和他的行李从一个机场的行李托运处到另一个机场的行李托运处的转移。

3. 在登机口层及以下层次,提供了一个人和他的行李从一个机场的登机口到另一个机场的登机口的转移。

4.在起飞着陆层及以下层次,提供了一个人和他的行李从一个机场的跑道到另一个机场的跑道的转移。

上述四点也就是各层向它上面的层次提供的服务。比如:

这里值得注意的是,每一层本身都有一定的功能,比如登机口层提供了登机和离机功能。

同时,每一层都使用它以下的所有层次提供的服务,比如登机口层的功能是建立在起飞着陆层和飞行层提供的把人和行李从一个机场的跑道转移到另一个机场的跑道的服务之上的。

计算机网络也使用类似的分层方式来描述,我们只需要关注各层次本身的功能和向上提供的服务,就可以理解计算机网络这个复杂的系统。

以下是两种网络分层方法:

这里,大家可以从左边的5层因特网协议栈开始学习。右边的7层 ISO标准的OSI参考模型是国际标准化组织试图对网络协议栈进行标准化的时候搞出来的一套东西。我们大概知道他每一层对应原来的5层协议栈中的哪一层就好,有兴趣的话可以通过搜索去获取更多学习资料。搜索关键字: OSI 7层模型

这里的5个层次,下一小节会简单给大家介绍下,开始介绍之前,先说一下分层和接口测试的关系吧。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:310357728【暗号:csdn888】

前面也说了,在分层模型描述下的复杂系统,它的每一个层次都会具备自己的功能,以及向更上方的层次提供服务。服务就是 service,而接口测试有的时候又叫服务测试。比如 web service测试—— 网络服务测试。换言之,我们做接口测试,其实测试的就是待测软件提供的服务。而现在大多数待测软件是网络程序,它使用了互联网各个层次的服务,又在其上附加了自己的功能,并提供给用户用。

因此,我们可以这样来理解接口测试:

这里,一个待测软件,提供给用户用的很多很多接口就是我们接口测试要测试的服务。

同样的,一个复杂的待测软件内部也可以有很多接口,也可以分层次,比如是这样:

像这样,一个待测软件里也分了很多层次,这个图上是一个超级简单的3层结构。那么这里数据库层提供了数据存储的服务,service层和它以下的层次一起提供了各种业务逻辑处理功能,而UI层和它以下的层次一起提供了基于界面的业务逻辑处理功能。

到这里为止,我们知道了更广义的接口测试,在系统的各个层次上提供的服务,都可以做接口测试。

下一节我们接着介绍网络的5个层次的作用,这关系到我们接口测试的实现方式。

http://www.lryc.cn/news/250639.html

相关文章:

  • Java并发编程
  • vue+echarts实现依赖关系无向网络拓扑结图节点折叠展开策略
  • Unity3d 灯光阴影开启,法线贴图出现BUG
  • c语言:模拟实现atoi函数
  • Docker 使用心得
  • Nacos 架构原理
  • 尝试修改vim光标的思路
  • SpringBoot整合Activiti7——消息事件(十)
  • 高翔:《自动驾驶与机器人中的SLAM技术 》-Slam_in_autonomous_driving 编译过程中遇到的问题
  • org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder 实现密码加密 验证 代码示例
  • 《微信小程序开发从入门到实战》学习三十八
  • 云服务器哪家便宜?亚马逊AWS等免费云服务器推荐
  • Linux删除了大文件为什么磁盘空间没有释放?
  • 编写bat脚本执行msyql建库sql
  • 【JavaSE学习专栏】第04篇 Java面向对象
  • sCrypt 在英国伦敦 Exeter 大学讲学
  • 人工智能基础创新的第二增长曲线
  • 华为OD机试真题-分割均衡字符串-2023年OD统一考试(C卷)
  • 基于SpringBoot的图书推荐系统的
  • 02_学习使用javax_ws_rs_下载文件
  • js校验多个时间段的时间是否有交叉
  • Python Spyder开发的应用项目
  • ES6知识点
  • 数据结构详解各种算法
  • Qt实现右键菜单
  • MySQL基础篇一
  • 深入了解Java8新特性-日期时间API:OffsetDateTime类
  • 企业微信http协议接口开发,发送位置消息
  • CSS——基础选择器、文字控制属性
  • 08-中介者模式-C语言实现