【接口测试】1_接口测试基础 _概述

一、接口

接口:系统之间数据交互的通道。

接口测试,测试的对象是服务器。

接口测试中,接口的本质是:函数、方法。

在这里插入图片描述

1.1 接口的分类

  • 硬件接口 ----- 锁孔、以太网卡、USB 接口、电源接口·····
  • 软件接口 ----- 就是前后端共同遵守的一套数据交互的规范(架构师制定接口)

1.2 接口的类型

1、接口测试分类有许多种,按照范围划分:系统之间的接口和程序内部的接口。

  • 系统之间的接口:多个内部系统之间的交互,内部系统与外部系统之间的交互。
  • 程序内部的接口:方法与方法之间,模块与模块之间的交互。
    在这里插入图片描述
# 程序接口函数
def eat(something):
    print(f'小鸟在吃{something}')

# 使用接口,传递数据
def bird():
    eat('苹果')

bird()

2、按协议划分:http、tcp、IP

3、按语言划分:C++、java、php 。。。

1.3 接口的优点和缺点

高效、灵活(灵活的意思就是:_ 扩展性强 _提高内聚性降低了耦合性)(记住)

1、使用接口的优点

  • 统一设计标准;
  • 前后端开发相对独立;
  • 扩展性灵活;
  • 前后端都可以使用自己熟悉的技术;

2、不使用接口的缺点

  • 研发标准不统一,团队磨合难度高
  • 研发周期长
  • 可扩展性差

1.4 接口制定

1、接口规范是架构师制定的

2、前端和后端开发时共同参考的依据

二、接口测试

2.1 接口测试原理(重点)

模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收响应数据后并进行判断的一个过程(判断是否符合预期)。

  • 请求:是否正确,默认请求成功是200(GET),如果请求错误也能返回404、 500等。
  • 检查:返回数据的正确性与完整性。
  • 安全性:接口一般不会暴露在网上任意被调用,需要做一些限制,比如次数限制。
    在这里插入图片描述
1、怎么测?
模拟客户端,向服务器发送请求。

2、用什么测?
- 工具:Jmeter、Postman、fiddler
- 代码:python + pyTest框架 + Requests框架

3、测什么?
测试服务器针对客户端请求,回发的响应数据是否与预期结果一致!
- 人眼对比
- 断言

2.2 接口测试实现流程

模拟客户向服务器发送数据,然后查看响应。

要素1: 定位服务器资源(通过 URL 实现: http://www.baidu.com | http://127.0.0.1:8000/资源路径)

要素2: 模拟用户提交数据。

要素3:查看响应的结果是否符合预期。

2.3 接口测试分类

  • 类型1:web接口测试(BS 架构)
  • 类型2:模块接口测试 (CS 架构)

2.3.1 web接口测试

1、服务器接口测试:是测试浏览器与服务器的接口。

2、外部接口测试

  • 就是第三方接口测试
  • 举例:比如学校网页添加天气预报和支付功能,把其他公司集成到学校网页。支付接口测试/天气预报接口测试

2.3.2 模块接口测试

越来越少了,因为现在都是把应用部署在云上。

2.4 接口测试的特点

  • 测试可以提前介入,提早发现Bug,符合质量控制前移的理念
  • 可以发现一些页面操作发现不了的问题。(因为:接口测试 绕过前端界面
  • 接口测试低成本高效益(底层的一个Bug能够引发上层8个左右Bug,接口测试可以实现自动化)
  • 不同于传统的单元测试,接口测试是从用户的角度对系统进行全面的检测

2.5 接口测试的实现方式

1、使用接口测试工具来实现:

  • Postman:使用简单、功能较少。
  • JMeter:功能完善,上手难度大。

2、通过编写代码来实现:

  • Python + Requests框架 + pyTest框架
  • Java+HttpClient库

三、自动化接口测试

自动化测试:是把以人为驱动的测试行为转化为机器执行的一种过程。

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

接口自动化测试:是让程序或工具代替人工自动的完成对接口进行测试的一种过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少云清

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值