首页 > 其他分享 >一、接口测试基础

一、接口测试基础

时间:2024-06-21 21:54:04浏览次数:22  
标签:HTTP 请求 GET 基础 接口 测试 POST 方法

1. 接口的概念及本质:

  接口:实现前端和后端之间数据通信的桥梁,本质就是数据的输入与输出的过程。

  接口测试:接口的提供方、接口的调用方之间的交互、逻辑处理。

  接口测试的整个实现过程基于通信协议(HTTP),通过该协议发送请求(Request)给服务器,服务器处理并返回相应结果(Response),然后对响应的数据进行分析,判定数据结果是否与预期一致

 

2.接口类型:

  (1)按结构划分:系统内部之间的接口(系统与子系统之间)、模块与模块之间的接口、系统与第三方接口(如支付接口、身份校验接口)

  (2)按协议划分:

    HTTP类型接口:采用 HTTP 协议(应用层)进行通信,在发送请求时仅会响应一次,响应的数据格式通常是键值对格式,即 JSON 格式数据。

    Web Service类型接口:采用 SOAP(应用层)进行通信,SOAP协议实际就是基于 HTTP 协议进行封装,其发送请求和响应请求的数据格式都是 XML 格式。

    Windows Sockets类型接口:该接口类型是基于传输层进行封装所得到的 Socket 抽象层,客户端与服务器建立连接后,就可以发送请求和响应,大部分应用为 C/S 架构的软件。

 

3. 接口测试常用工具:

  Jmeter:一款免费、开源的性能测试工具

  Postman:工具简单、界面简介

  SoapUI:一款免费、开源的测试工具,主要实现 Web Service 类型的接口测试,可以完成 Web Service 的功能、负载、性能等测试。

 

4.接口测试用例编写要点:

  (1)参数类型是否合法(注意 null 类型)

  (2)参数取值范围是否合法(使用边界值取值)

  (3)参数为空

  (4)请求具有先后顺序的情况考虑调换顺序

  (5)用例设计一般考虑参数的组合、极值、是否必填、参数类型

 

6.接口测试流程:

  (1)获取需求文档和接口文档

  (2)通过需求文档分析接口的业务逻辑要求以及业务边界

  (3)通过接口文档分析出接口的技术指标(接口地址、请求方式、入参、出参)

  (4)接口测试用例设计(着重于接口测试数据准备)

  (5)使用接口测试工具进行接口测试

  (6)接口缺陷管理和跟踪

  (7)接口自动化持续集成

 

7. GET/POST/PUT/DELETE 等类型请求详解:

HTTP报文主要有两种类型:请求报文和响应报文

(1)HTTP请求报文:

  HTTP请求报文由三部分构成:请求行、请求头、请求体

  请求行构成:请求方法、URL、请求协议版本

(2)不同的请求方法:

  GET方法:GET方法要求服务器将 URL 定位的资源存储在响应报文中的数据部分,然后将其返回给客户端。请求参数和对应的值拼接在 URL 后面,使用问号 ? 代表 URL 的结尾与请求参数的开始,参数之间使用 & 连接。不同浏览器地址栏存储的字符长度限制是不同的,一般最多只能识别 1024 个字符,所以传送大量数据不适合使用 GET 方法。

  POST方法:在 HTTP 请求数据中封装请求参数,并以键值对的形式存在,可以传输大容量的数据。POST方法对传送的数据大小没有限制,而且不会显示在 URL 中。

  PUT方法:PUT请求主要是改变服务器数据,对数据进行修改操作,POST方法是对数据进行增加操作。

  DELETE方法:用来删除服务器的数据。

  GET方法和POST方法的本质区别:

    1.GET方法请求参数直接显示在 URL 中,POST方法请求参数显示在请求体中,所以 POST 方法比 GET 方法更安全;

    2.浏览器中地址栏的 URL 地址是有长度限制的,POST 方法携带的参数擦灰姑娘度范围可以大于 GET 方法;

    3. GET 方法用于获取数据,POST 方法用于提交数据;

(3)请求头:通知服务器关于客户端请求的信息,由键值对组成

  Accept:表示客户端允许进行解析的数据文本类型,*/* 表示允许接收解析所有文本数据类型;

  Accept-Encoding:表示客户端期望接收到的响应体(body)的压缩编码类型;

  Accept-Language:表示客户端允许接收的语言,默认是 zh_cn;

  Authorization:

  Connection:表示客户端与服务器的连接类型,keep-alive:表示长连接,客户端可以继续向服务器发送请求,且保持当前状态;close:表示会话结束。

  Content-Length:表示请求体的文本长度

  Content-Type:表示请求或响应实体主体的媒体类型,text/html:html类型,application/json:请求或返回 json 格式数据类型

  Cookie:浏览器 cookie

  

  

  

  

 

  

   

 

HTTP授权的授权证书

标签:HTTP,请求,GET,基础,接口,测试,POST,方法
From: https://www.cnblogs.com/xianyumaixianyu/p/18261575

相关文章

  • 0基础学C++ | 第03天 | 基础知识 |算术运算符 | 赋值运算符 | 比较运算符 | 逻辑运算
    前言前面已经讲了,数据类型以及求数据类型所占的空间0基础学C++|第02天|基础知识|sizeof关键字|浮点型|字符型|转义字符|字符串|布尔类型|数据的输入-CSDN博客,现在讲运算符算术运算符 作用:用于处理四则运算#include<iostream>usingnamespacestd;in......
  • nodejs从基础到实战学习笔记-模块化、包
    二、模块化2.1什么是模块化模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。2.1.1把代码进行模块化拆分的好处提高了代码的复用性提高了代码的可维护性可以实现按需加载•如果程序设计的规......
  • 零基础学习python-1.安装python
    1.安装python众所周知,若想学习python就得有一台电脑,如果手机端的同学也想玩python编程的话,那我建议你安装一个QPython玩玩就可以,若是想跟深度学习,那请各位少爷小姐们,一同跟随我,一步步教会你安装python及其编译器第一步.找python官网注意:请识别官网,python是免费的,别选错了......
  • 通义千问| 测试点分析
    通义千问|测试点分析问》》》软件测试工程师面对需求,进行需求分析并XMind测试点分析?请举例说明具体分析。增强模式完成全网搜索,参考27个信源并总结 回答》》 软件测试工程师需求分析与XMind测试点分析需求分析的重要性软件测试工程师在面对需求时,首要......
  • Python基础教程(二十四):日期和时间
    ......
  • 测试:设计测试用例
    文章目录概念设计正交法判定表法本篇总结的是测试用例的概念和设计方法概念测试用例是为了实施测试而向被测试的系统提供的一组集合,这个集合中包含的内容有测试环境,操作步骤,测试数据,预期结果等要素在测试用例的设计中,一个原则是,测试用例要对于预期的结果做出定义,......
  • 游戏AI的创造思路-技术基础-机器学习(2)
    本篇存在大量的公式,数学不好的孩子们要开始恶补数学了,尤其是统计学和回归方程类的内容。小伙伴们量力而行~~~~~游戏呢,其实最早就是数学家、元祖程序员编写的数学游戏,一脉相承传承至今,囊括了更多的设计师、美术家、音乐家、作家、导演、演员等等,发展形成了今天大家看到的繁花......
  • Java基础:throw和throws的详解
    总结来说,throw是用来抛出一个具体的异常实例,而throws是用来声明方法可能会抛出哪些类型的异常,是对调用者的一种通知和要求。1.throw作用:throw关键字用于在方法体内实际抛出一个异常实例。当程序运行到throw语句时,指定的异常会被创建并抛出,立即终止当前方法的执行,并将控制权......
  • allure测试报告使用
    1.生成allure数据结果文件1.1在pytest.ini中配置allure报告的存储路径,这里用来存储allure报错的原始数据[pytest]addopts=--alluredir=./allure-results1.2使用pytest命令生成allure结果文件   pytest--alluredir=./allure-results 2.查看allure报告2.1启动一个W......
  • 双绞线(网线)的制作与测试
    实验目的1、熟悉常用双绞线(网线)及其制作工具的使用;2、掌握非屏蔽双绞线的直通线、交叉线的制作及连接方法;3、掌握双绞线连通性的测试。设备要求:RJ45压线钳,RJ45水晶头,UTP线缆(每条2m,若干条),测线仪,PC(2台以上,装有操作系统,有网卡),集线器。双绞线简介双绞线可按其是否外加金属......