首页 > 其他分享 >接口测试详解

接口测试详解

时间:2023-12-12 18:32:54浏览次数:32  
标签:请求 系统 接口 详解 测试 服务器 客户端

大多数人对于接口测试都觉得是一种高大上的测试,觉得学会接口测试就可以从小白测试员,变成了高级测试员,但其实接口测试只是测试的基础内容。

什么是接口

接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其交互的方式。

人类与电脑等信息机器或人类与程序之间的接口称为用户界面。电脑等信息机器硬件组件间的接口叫硬件接口。电脑等信息机器软件组件间的接口叫软件接口。

在计算机中,接口是计算机系统中两个独立的部件进行信息交换的共享边界。这种交换可以发生在计算机软、硬件,外部设备或进行操作的人之间,也可以是它们的结合。

接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。

你要买一俩车,你不用知道车在工厂里面需要什么原理,怎么构造模型,怎么制作,你只要到能找到窗口,给出你要买车的信号,窗口返回给你一个车的相关信息的信号。接口也是这样,你不用理解程序内部是怎么样的,你只要理解你给出请求从而得到的请求是正确的,即你发出A的数据,必须得到B的返回,而不是C。

为什么要做接口测试

在了解为什么要接口测试之前,我们需要了解以下几点:1.越底层,越稳定。2.越底层,越高效。3.越底层,越低成本。4.越底层,越难实施。

接口测试测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。就如同之前的买车时,我们需要确定你给出的是买车信号,返回的是相关车辆信息,而不是买房信息。

接口测试详解_数据

请求协议:

http — 普通的http请求,默认端口为80

https — 加密的http请求,传输数据更加安全,默认端口为443

ftp — 文件传输协议,主要用来传输文件,默认端口为21

请求IP:就是指提供接口的系统所部署的服务器地址,可以是直接的IP地址,也可以是域名


请求端口:如果不填端口,都是默认端口,否则需要填写端口号


接口路径:指系统提供的接口在什么位置


接口参数:参数在接口路径后,用“?”来表示路径地址完了,剩下的都是参数了,用“&”来区分参数个数,


http中的常用请求方式

这个请求方式,作为一位测试人员,不需要担心不知道该项目请求方式是什么,一般情况是在开发文档中有具体的说明请求方式是什么,不过我们有时候需要有自我的判断这个地方用什么接口合适,比如输入密码的地方一定要用post方法,绝对不能用get的方法。

 1 GET 请求指定的页面信息,并返回实体主体。

2 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头

3 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。

4 PUT 从客户端向服务器传送的数据取代指定的文档的内容。

5 DELETE 请求服务器删除指定的页面。

6 CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

7 OPTIONS 允许客户端查看服务器的性能。

8 TRACE 回显服务器收到的请求,主要用于测试或诊断。

9 PATCH 实体中包含一个表,表中说明与该URI所表示的原内容的区别。

10 MOVE 请求服务器将指定的页面移至另一个网络地址。

11 COPY 请求服务器将指定的页面拷贝至另一个网络地址。

12 LINK 请求服务器建立链接关系。

13 UNLINK 断开链接关系。

14 WRAPPED 允许客户端发送经过封装的请求。

15 Extension-mothed 在不改动协议的前提下,可增加另外的方法。

接口测试的重点

目的:测试接口的正确性和稳定性;

原理:模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的过程;

重点:检查数据的交换,传递和控制管理过程,还包括处理的次数;

核心:持续集成是接口测试的核心;

优点:为高复杂性的平台带来高效的缺陷监测和质量监督能力,平台越复杂,系统越庞大,接口测试的效果越明显(提高测试效率,提升用户体验,降低研发成本);

用例设计重点:通常情况下主要测试最外层的两类接口:数据进入系统接口(调用外部系统的参数为本系统使用)和数据流出系统接口(验证系统处理后的数据是否正常);

接口测试质量评估标准

业务功能覆盖是否完整

业务规则覆盖是否完整

参数验证是否达到要求(边界、业务规则)

接口异常场景覆盖是否完整

接口覆盖率是否达到要求

代码覆盖率是否达到要求

性能指标是否满足要求

安全指标是否满足要求

接口模拟测试

1、输入相应的数据

接口测试详解_接口测试_02

2、获取的数据进行分析

这一块是表头,一般情况不需要特别记住,只要了解就可以了,注意返回的状态码是否是正确的,有一些时候需要注意加载的时间

接口测试详解_接口测试_03

这一块内容为表主体,也就是我们查看返回的数据是否正确。

接口测试详解_服务器_04

标签:请求,系统,接口,详解,测试,服务器,客户端
From: https://blog.51cto.com/u_12101239/8790015

相关文章

  • 测试用例设计方法六脉神剑——第三剑:倚天屠龙,正交试验冲锋
    1引言上篇讲了因果图和判定表法,而这两种方法在变量值很多、排列组合数量极大的场景下,会生成非常庞大且冗余的测试用例,此时我们很难对所有组合场景进行全量测试用例覆盖,基于此短板,正交试验法应运而生。2概念及原理2.1定义正交试验法是研究多因素、多水平的一种试验法,它是利......
  • pytest 如何测试函数中抛出的异常
    一般Python中异常可以用raise来抛出,此时单测中想要测试错误用例是否触发异常了,可以用pytest中的 withpytest.raises(xxx)如下:importpytestimportunittestclassInfo(object):"""infoclass"""def__init__(self,name):"""......
  • 国产服务器网卡和进口芯片服务器网卡性能测试
    服务器网卡的主要功能是管理和处理网络流量,要求数据传输稳定、可靠,性能卓越。受前两年缺芯浪潮影响,国产芯片急流勇进,不断取得新突破和新进展,成为工业以太网控制器领域冉冉升起的新星,为用户提供更多选择。部分用户在选购网卡时,在国产产品和进口产品之间犹豫,甚至倾向于购买进口产品......
  • [-007-]-Python3+Unittest+Selenium Web UI自动化测试之@property装饰器默认值设置
    看示例:#!/usr/bin/python3#coding:utf-8__author__='csjin'#定义@property装饰器classPPTListModels(object):def__init__(self):self._tab_name="PPT模板"@propertydefhandle(self):returnself.__handle......
  • RabbitMQ-3.12:安装教程详解
    安装环境: centOS7操作系统1.1什么是MQMQ即消息队列(MessageQueue),是一种用于进行异步通信的技术。它允许应用程序异步地向队列中发送消息,而不需要立即等待接收方处理完毕。MQ将消息缓存在队列中,等待消费者进行处理1.2什么是RabbitMQRabbitMQ是一个开源的消息队列中间件,它实......
  • 软件测试探秘:从各类软件测试入门,领略测试的奥秘
    前言在软件开发的世界中,软件测试是不可或缺的一部分。它是确保软件质量、功能完整性和用户满意度的关键环节。本文小编将为大家介绍各类软件测试的奥秘,并提供入门级的指导和见解。本文内容概要:软件测试是什么?黑盒测试vs白盒测试自动化测试vs手工测试功能测试方法论非功能测试方法论......
  • 软件测试报告是什么?
    我最近看到有很多朋友问软件测试报告到底是干嘛的,是什么,今天给大家拆一下,其实很简单,测试报告是一份描述软件的测试过程、测试环境、测试范围、测试结果的文档,用来分析总结系统存在的风险以及测试结论。具体来说就是:(1)测试过程测试过程需要对测试人员、测试时间、测试地点、测试版本......
  • 硬件开发笔记(十六):RK3568底板电路mipi摄像头接口原理图分析、mipi摄像头详解
    前言  本篇继续分析底板原理图mipi电路原理图、mipi摄像头输入硬件接口详解。<br>RK3568芯片摄像头接口  查看RK3568的芯片手册,摄像头接口并不支持直接sensor模拟信号输入,只能接收mipi信号,RK3568的摄像头接口引脚如下:    只支持mipi的数字信号摄像头。  本来计划......
  • 硬件开发笔记(十六):RK3568底板电路mipi摄像头接口原理图分析、mipi摄像头详解
    前言  本篇继续分析底板原理图mipi电路原理图、mipi摄像头输入硬件接口详解。 RK3568芯片摄像头接口  查看RK3568的芯片手册,摄像头接口并不支持直接sensor模拟信号输入,只能接收mipi信号,RK3568的摄像头接口引脚如下:    只支持mipi的数字信号摄像头。  本......
  • 持续测试性能的方法
    持续测试是指在软件开发生命周期中的不同阶段纳入自动反馈的过程,其中包括探索性测试等自动化测试外的活动。持续测试是CI/CD流程取得成效的关键因素,通过提高代码质量来避免付出多余的人力、物力和财力,从而加快DevOps流程。在DanAshby创建的DevOps持续测试模型图(如图1)中,他表明我们......