什么是接口?为什么要做接口测试?

1.什么是接口?

  接口是 外部系统与内部系统 或者 内部系统各子系统之间的交互点;这些交互点通过特定的协议进行数据交互。

2.接口都有哪些类型?

  接口一般分为两类:

    程序内部接口:方法与方法之间、模块与模块之间的交互,程序内部抛出的接口,如bbs系统有登陆模块、发帖模块等等,如果你要发帖就必须先登陆,那么这两个模块就得有交互,它会抛出一个接口,供内部系统进行调用。

    系统对外接口:如果想要到其他公司的服务器上获取信息和资源,别人肯定不会把数据库共享给你,他们只能给你提供一个他们写好的接口让你来获取数据,以达到共享的目的;比如查询天气

  接口的分类:

    1、webservice 接口

      webservice 接口走的是soap协议,通过HTTP协议传输,请求报文和返回报文都是xml格式的,我们在测试的时候都可以铜鼓哦工具进行调试、测试等。

    2、http API

      Http API接口走的是http协议,通过路径区分调用的方法,请求报文都是key-value形式,返回报文一般都是json串,有get和post方法,这也是最常用的两种请求。

3.接口的本质是什么?

  接口本质就是数据交互,通过资源位置符url来获取接口地址,通过get或者post方法向服务器发送数据请求,得到响应。

4.什么是接口测试?

  接口测试是测试系统组件间接口数据交互的一种测试。主要校验接口之间的数据交互是否符合协议规则。测试的重点是要检查数据的交换、传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

5.为什么要做接口测试?

  •   今早进行系统集成测试,暴露bug
  •   结局系统测试复杂度
  •   屏蔽UI层的不稳定性
  •   价差系统安全性、稳定性
  •   接口经过测试稳定了,前端页面可以随便改,减少bug产生

6.接口测试的原理?

  •   原理:模拟客户端向服务器发送请求报文,服务器接收报文后对响应的报文做处理并向客户端返回响应,客户端再接收响应的一个过程。
  •   接口测试属于黑盒测试。作为黑盒测试,基本的测试思路是通过输入和输出判断被测试系统或者对象的逻辑

7.接口测试点关注点?

  •   注重系统架构的额业务逻辑层,不注重UI操作或者用户感官
  •   检查数据的交换,传递和控制管理过程
  •   注重系统间的相互逻辑关系调用

8.接口测试的范围?

  按照测试类型分:功能测试、性能测试、和安全

  按照数据的输入输出分:

    1、进入系统的接口

    2、流出系统的接口

9、接口测试和UI测试的异同点

  •   UI的操作实际上就是用另一种方式调用接口,那么接口有多少种参数组合就要用UI构造多少种操作进行调用。
  •   UI操作所需要的数据可以用接口来生成
  •   接口测试可以保证数据和逻辑的准确性,UI测试要考虑交互和界面展示的逻辑正确性
  •   UI测试需要重视接口调用不成功或者接口异常情况下UI的呈现方式和用户体验
  •   UI中可能会有一些状态的缓存信息(这样就不需要每次频繁的调用接口获取了)比如鉴权信息等,需要重点关注这些缓存的更新策略

10、接口测试的三种形式

  • 手动测试:辅助工具、Fiddler、Postman、HttpWath。。。
  • 自动化测试:自己开发的工具、SoapUI、RobotFramework。。。
  • 性能测试:自己开发的工具、Jmeter、LoadRunner。。。

11、如何开展接口测试

  • 找开发或者开发主管索要接口说明文档(API文档)。作用:是开发测试脚本的依据
  • 熟悉业务,设计测试用例,准备测试数据
  • 根据接口说明文档开发接口测试脚本,执行脚本
  • API文档
  • 测试文档接口说明,参数,返回值,是否齐全
  • 熟悉业务
  • 设计测试用例,准备测试数据
  • 开发接口测试脚本
  • 执行脚本,调入数据
  • 提交BUG
  • 写报告

一份好的接口说明文档是什么样的?
在项目中,一份完整的接口文档应该包含以下的内容:

  • 接口说明
  • 请求方式(get\post)
  • 请求地址
  • 请求参数、参数类型、请求参数说明
  • 返回参数说明
  • 返回示例

 

 

 

参考文章链接:

https://www.sohu.com/a/254976978_100194747

https://www.cnblogs.com/duxf100/p/12196866.html

posted @ 2021-08-03 17:44  GalaxyStar  阅读(423)  评论(0编辑  收藏  举报