为什么要进行接口测试?

1,什么是接口?
可以简单理解成用来连接而开放的入口,比如前端和后端的连续需要用接口,移动端和后台的链接也需要用到接口。连接前端后端和移动端。

2,接口都有哪些类型?
接口一般分为两种:
(1)程序内部的接口
(2)系统对外的接口
系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。
程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。

3,接口的分类
1.webservice接口
2.http api接口
webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。
http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。
json是一种通用的数据类型,所有的语言都认识它

4,什么是接口测试?
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。重点测试的是数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等等,这要求对业务逻辑有一定程度上的理解,对数据流向有较好的定位。

接口测试是一种完整的测试体系,分为接口功能测试、接口性能测试、接口稳定性测试、接口安全性测试。类比功能测试,有个通俗的解释:接口测试就是通过测试不同情况下的入参与之相应的出参信息,来判断接口是否符合或满足相应的功能性、安全性要求。

5,接口测试的意义
接口又称为API,是软件系统不同组成部分衔接的约定,比如模块与模块之间的接口,前端与后端之间的接口。
从系统架构上来看,接口常常是由后端人员开发,影响范围广,所以接口出现问题后,常常会影响研发的进展。

接口就是每个模块的边界,在接口上投入测试力度,更能发现重要的BUG。因为边界是最容易出现问题的地方。无论是模块的边界,还是人员边界。

6,接口测试的时机
研发一般是后端和前端分开研发,当后端研发完毕后,接口便已提测,这个时候前端一般还没有进入到研发。
在这个时候,我们进行接口测试,能提前发现重要问题,确保前端提测前,后端重要问题已经解决。

7,常用的接口测试工具:
1、WebService接口:是用soap协议包装后用http运输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有SoapUI、Jmeter、Loadrunner等。
2、Http api接口:直接用http协议运输,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。可以使用的工具有Postman、RESTClient、Jmeter、Loadrunner等。

8,接口测试的投入和收益

投入成本:接口手动测试的技能要求不高,掌握HTTP协议即可;工具一般用fiddler,postman,学习成本较低;不过接口测试对开发文档的要求比较高,如果开发给的不正确,调试起来耗费的时间会比较长。

收益:相对于UI层面,接口的测试的收益也是巨大的,能在最短的时间发现重要的问题。

9,接口测试的重要性
在软件开发生命周期中发现缺陷越早,那么修正缺陷的代价就越小,所以应更早的介入测试,而接口测试就是一种及早介入的方式。
  接口测试的重要性:
  ①、不依赖前端页面,可以发现很多在页面上操作发现不了的bug
  ②、 检查系统的异常处理能力
  ③、检查系统的安全性、稳定性
  ④、前端随便变,接口测好了,后端不用变
  ⑤、一般能集成自动化,能提高测试效率,用于冒烟测试和回归测试
  当然由于接口测试的特殊性,需要依赖一些测试工具或代码模拟http请求的发送和接收,对测试人员的要求更高。
10,接口自动化测试适用场景:

(1)开发自测,冒烟测试:
一个新的自动化接口测试案例开发完成后,直接发给接口对应的开发,安排在开发本地环境执行,一旦开发确认完成接口开发,就开始执行接口测试案例,基本上可以实时拿到测试结果,方便开发快速做出判断。
  (2)回归测试:
开发本地测试通过后,或整个需求手工测试通过后,把自动化的接口测试案例做分类整理,挑选出需要纳入到回归测试中的案例,提高测试效率。

11,前端和后端
前端和后端如果说成客户端与服务端比较好理解,在浏览器上打开一个网页,打开一个管理系统,在一个APP上操作,这些都属于前端,他的作用就是显示页面,操作页面,而处理这些业务逻辑功能比如说页面上的非空校验,业务逻辑功能能都是通过后端来实现的,而前端和后端的交互正是通过接口来交互的。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值