【测试运维】接口测试各知识md文档学习笔记第1篇(已分享,附代码)

本系列文章md笔记(已分享)主要讨论接口测试相关知识。目标:了解接口测试服务对象,基本作用,接口测试环境插件工具,掌握jmeter的使用,掌握接口测试的测试用例编写。熟悉Jmeter工具组成,参数化、集合点、关联、断言、数据库,属性管理器及逻辑控制器,项目实战(接口功能脚本、自动化脚本、性能脚本)。了解Jmeter安装目录结构,了解Jmeter的应用场景,掌握Jmeter分布式环境部署,学会看项目API文档,学会根据API文档整理出接口清单,掌握自动化脚本设计原则;了解基于Jmeter测试FTP服务器。

全套笔记和代码自取在个人博客: https://www.666mao.com/article?articleId=10

感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~


共 8 章,30 子模块

接口测试

学习目标

  • 了解接口测试服务对象,基本作用

  • 接口测试环境插件工具

  • 掌握jmeter的使用

    • 环境搭建
    • 8大元件的作用和简单的使用
    • 脚本录制
    • 常用函数的使用
    • 功能脚本的编写
    • 自动化脚本的编写
    • 性能脚本的编写
    • 掌握接口测试的接口清单 整理
  • 掌握接口测试的测试用例编写

    • 编号,标题,处理,预期结果

2. 接口测试大纲

序号阶段内容
01第一阶段- 理解接口测试
02第二阶段- 熟悉Jmeter工具组成
03第三阶段(核心)- 参数化、集合点、关联、断言、数据库
04第四阶段- 属性管理器及逻辑控制器
05第五阶段- 项目实战(接口功能脚本、自动化脚本、性能脚本)

3. 接口学完样品

3.1 Jmeter工具元件使用

元件使用

3.2 聚合报告

聚合报告

3.3 用例设计

测试用例

3.4 html性能报告

html测试报告

3.5 Aggregate Graph

3.6 Response Time

响应时间

4. 学完课程,学到什么

1. 熟练使用Jmeter工具;
2. 掌握接口测试规范;
3. 掌握基于Jmeter完成接口测试(功能、自动化、性能)脚本;
4. 掌握基于Jmeter对Web项目性能压测;

5. 参考:

学习目标

1. 理解接口的概念

2.什么是接口测试

3. 接口测试的基本流程

4. 学习掌握接口测试工具RESTClient、Postman的使用

接口与接口测试

学习目标

  • 理解接口的概念
  • 理解接口测试概念
  • 掌握接口测试分类
  • 接口测试的基本流程

演示接口

1. 接口概述(了解)

1.1 什么是接口呢?

接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口; 或者一种是软件接口,一种是硬件接口.

我们常说的接口是应用程序编程接口,也就是Application Programming Interface,简称API.

1.2 常见接口

  1. webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有SoapUI、jmeter、loadrunner等;

  2. http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。可以使用的工具有postman、RESTClient、jmeter、loadrunner等;

1.3 使用接口的优点

  • 项目开发中,使用接口带来的优点
1. 统一设计标准;
2. 前后端开发相对独立;
3. 扩展性灵活;
4. 前后端都可以使用自己熟悉的技术;
  • 项目开发中,未使用接口的缺点
1. 研发标准不统一,团队磨合难度高
2. 研发周期长
3. 可扩展性差

总结:

  • 软件项目开发模式大多数都采用接口了,那我们作为软件测试人员要学接口吗?

复习-接口的组成部分

2. 接口测试

2.1 什么是接口测试

接口测试是测试系统组件间数据交互的一种方式.

接口测试就是通过测试不同情况下的输入参数和与之对应的输出结果来判断接口是否符合或满足相应的功能性、安全性要求.

简单的说,接口测试是就是代替前端或者第三方,来验证后端实现是否符合接口规范.

2.2 接口测试的好处

通过接口测试,测试接口的正确性和稳定性, 能快速定位bug,提高测试效率.

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

2.3 接口测试原理

原理:

模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收响应数据后并进行判断

  • 请求: 是否正确, 默认请求成功是返回200, 假如请求错误返回400, 404, 500等状态码
  • 检查: 返回数据的正确性与完整性
  • 安全性: 接口一般不会暴露在网上任意被调用,需要做一些限制,比如必须登录或者请求次数、频率限制

2.4 基本流程

接口测试流程: 定位服务器接口资源并提交测试数据,然后查看响应结果是否符合预期

  1. 定位接口资源(URL)

  2. 提交测试数据

  3. 检查响应结果

2.5 接口测试分类

  • web接口测试
  • 模块接口测试
(1). web接口测试
  • 服务器接口测试, 是测试浏览器与服务器的接口, 是B/S架构的

  • 外部接口测试, 测试第三方接口,

举例:支付接口测试/天气预报接口测试

(2). 模块接口测试
  • 单元测试的基础,主要测试模块的调用与返回.

3. 如何做好接口测试

接口测试要遵循一些要点:

  1. 接口的功能性实现. 检查接口返回的数据与预期结果的一致性.
  2. 测试接口的容错性, 例如传递的数据类型是错误的能否处理.
  3. 测试接口参数的边界值. 例如传递的数据足够大或者为负数时能否处理
  4. 测试接口性能, 接口处理和响应数据的时间也是测试的一个方面, 这牵扯到代码实现的优化
  5. 测试接口的安全性. 特别是第三方接口,比如登录的用户名密码第三方是否是密文传输的

常用的测试工具

学习目标

  • 熟悉并了解开发常用接口测试插件
  • 快速掌握离线及在线安装插件方式
  • 体验接口测试

常用的接口测试工具

  • **loadrunner:**一款商业性能测试工具,可用来做接口测试、性能测试、压力测试等,很好很强大
  • **jmeter:**一款开源的性能测试工具,操作简单,方便,既有jdbc request操作数据库数据,也有http request和soap request应对测试
  • **postman:**谷歌浏览器的扩展工具,谷歌商店中选中安装,界面同poster差别不大,界面简洁
  • **soapui:**开源测试工具,通过soap/http协议来检查、调用、实现Web Service的功能/负载/符合性测试;
  • RestClient: Firefox上一款用于测试各种Web服务的插件,它可以向服务器发送各种HTTP请求(用户也可以自定义请求方式).

我们主要使用Jmeter, 简单了解Postman、RestClient

1. Postman

是google开发的一款功能强大的网页调试与发送网页HTTP请求,并能运行测试用例的的Chrome插件.

postman

1.1 安装postman
  • 安装chrome浏览器
  • 安装postman插件
  • 安装方式离线式/在线式(比较慢,建议离线)
1.2 Postman安装步骤
  • 1). 安装谷歌浏览器

  • 2). 打开浏览器扩展页面

    • chrome://extensions/
    • 自定义及控制->更多工具->程序扩展
  • 3). 勾选开发者模式

安装postman

  • 4). 加载已解压的扩展程序

安装postman

1.3 Postman演示
  • 请求方法(GET)
  • 请求URL:http://www.sojson.com/open/api/weather/json.shtml?city=北京
1.4 结果
  • 查看响应状态码
  • 查看响应数据

2. RestClient

是Firefox上的插件,这款插件由国人开发,功能上支持于返回的数据高亮显示

restclient

2.1 安装环境
  • 安装火狐浏览器
  • 安装接口插件工具RestClient(RestClient安装包)
  • 安装方式(在线)
2.2 RESTClient安装步骤
  • 1). 安装火狐浏览器

  • 2). 打开浏览器-附加组件

    • about:addons
    • Ctrl+Shift+A
    • 工具菜单->附加组件
  • 3). 搜索RESTClinet 2.0.5

安装restclient

  • 4). 安装

安装restclient

安装restclient

2.3 RESTClient演示
  • 请求方法(GET)
  • 请求URL:http://www.weather.com.cn/data/sk/101010100.html
2.4 结果
  • 查看响应状态码
  • 查看响应数据

3 总结

接口测试常用工具很多,我们讲解的是比较常用的postman、restclient以及后续重点学习的jmeter.

STClient安装步骤**

  • 1). 安装火狐浏览器

  • 2). 打开浏览器-附加组件

    • about:addons
    • Ctrl+Shift+A
    • 工具菜单->附加组件
  • 3). 搜索RESTClinet 2.0.5

[外链图片转存中…(img-ANfMkTu5-1706593926557)]

  • 4). 安装

[外链图片转存中…(img-x3lN6S0c-1706593926557)]

[外链图片转存中…(img-KJ34Kf1E-1706593926557)]

2.3 RESTClient演示
  • 请求方法(GET)
  • 请求URL:http://www.weather.com.cn/data/sk/101010100.html
2.4 结果
  • 查看响应状态码
  • 查看响应数据

3 总结

接口测试常用工具很多,我们讲解的是比较常用的postman、restclient以及后续重点学习的jmeter.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/441288.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据的绘画:数据可视化为我们打开信息的画卷

在迅猛发展的大数据时代,数据可视化成为我们逐步适应信息激增的得力工具。通过直观展示庞大复杂的数据,数据可视化不仅简化了信息的理解,更为我们提供了深入洞察的机会。这一技术的崛起不仅仅是技术的进步,更是对我们信息处理方式…

C++_list

目录 一、模拟实现list 1、list的基本结构 2、迭代器封装 2.1 正向迭代器 2.2 反向迭代器 3、指定位置插入 4、指定位置删除 5、结语 前言: list是STL(标准模板库)中的八大容器之一,而STL属于C标准库的一部分,因此在C中可以直接使用…

04MARL - priori kownledge and challenge

文章目录 一、General Learning Process二、中心化学习与独立学习1.central learning1.1 CQL1.2 局限性 2.Independent Learning2.1 IQL2.2 局限性 三、MARL挑战1.非平稳性1.1单智能体强化学习的非平稳性1.2 MARL非平稳性 2.信用分配问题3.均衡选择4.拓展性 四、协作型MARL的模…

Web实战丨基于Django的简单网页计数器

文章目录 写在前面Django简介主要程序运行结果系列文章写在后面 写在前面 本期内容 基于django的简单网页计数器 所需环境 pythonpycharm或vscodedjango 下载地址 https://download.csdn.net/download/m0_68111267/88795604 Django简介 Django 是一个用 Python 编写的高…

MySQL的原生API实现插入数据后在可视化工具上不显示的问题解决

显示表中有两行数据,该表也设置了主键和唯一索引 点进表里看却没有数据 问题原因出现在这里,虽然很多常用的数据库连接池都会开启自动提交,但ibatis的SqlSession使用sessionFactory.openSession()创建时,默认的自动提交是false&am…

纯静态微信小程序水果商城

首页代码 <view class"container"><!-- 轮播图 --><view class"swiper-container"><swiper class"screen-swiper" indicator-dots"true" circular"true" autoplay"true" interval"300…

数据结构——栈和队列(C语言)

栈种常见的数据结构&#xff0c;它用来解决一些数据类型的问题&#xff0c;那么好&#xff0c;我来带着大家来学习一下栈 文章目录 栈对栈的认识栈的模拟实现栈的练习方法一方法二 栈 对栈的认识 栈&#xff08;stack&#xff09;是限定只能在表的一端进行插入删除操作的线性…

VxTerm:SSH工具中的中文显示和乱码时的相关信息和一些基本的知识

当我们写的程序含有控制台(Console)输出时&#xff0c;如果输入内容包含中文时&#xff0c;我们一般需要知道下面的信息&#xff0c;才能正确的搞清楚怎么处理中文显示的问题&#xff1a; 1、实际程序或文件中的实际编码&#xff1a; Linux下的应用程序和文本文件&#xff0c;…

系统架构设计师-21年-下午题目

系统架构设计师-21年-下午题目 更多软考知识请访问 https://ruankao.blog.csdn.net/ 试题一必答&#xff0c;二、三、四、五题中任选两题作答 试题一 (25分) 说明 某公司拟开发一套机器学习应用开发平台&#xff0c;支持用户使用浏览器在线进行基于机器学习的智能应用开发…

matlab appdesigner系列-仪器仪表3-旋钮

旋钮&#xff0c;同过旋转显示特定的值 示例&#xff1a;模拟收音机调频 操作步骤&#xff1a; 1&#xff09;将旋钮、标签按钮拖拽到画布上&#xff0c;将标签文字修改为&#xff1a;欢迎收听&#xff0c;并将旋钮其数值范围改为90-107 2&#xff09;设置旋钮的回调函数 代…

15EG使用vivado2023.1建立hello world工程

1:打开软件建立工程 2:使用vivado创建设计模块并生成bit文件 3:导出硬件平台&#xff0c;使用vitis建立工程 4:使用vitis创建应用程序项目 5:硬件设置与调试 1:打开软件建立工程 打开VIVADO2023.1 创建一个新的工程 输入项目名称和地址&#xff0c;下面那个选项为是否…

力扣日记1.30【回溯算法篇】78. 子集

力扣日记&#xff1a;【回溯算法篇】78. 子集 日期&#xff1a;2023.1.30 参考&#xff1a;代码随想录、力扣 78. 子集 题目描述 难度&#xff1a;中等 给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 …

CCF-CSP 202312-2 因子化简(Java、C++、Python)

文章目录 因子化简题目背景问题描述输入格式输出格式样例输入样例输出样例解释子任务 满分代码JavaCPython线性筛法 因子化简 题目背景 质数&#xff08;又称“素数”&#xff09;是指在大于 1 的自然数中&#xff0c;除了 1 和它本身以外不再有其他因数的自然数。 问题描述…

现货白银的交易策略包括哪些内容?如何适应策略?

交易策略被投资者视为做现货白银交易通向盈利之路的必备工具&#xff0c;但是投资者却不知道如何建立一个适合自己的交易策略&#xff0c;如果直接拿别人的交易策略过来&#xff0c;就犯了拿来主义的毛病&#xff0c;这样是不行的&#xff0c;下面我们就来简单讨论一下如何建立…

Linux操作系统概述

操作系统&#xff08;Operating System&#xff09;的定义 操作系统&#xff0c;是指直接管理系统硬件和资源&#xff08;如 CPU、内存和存储空间&#xff09;的软件。 操作系统的基本功能 ①统一管理计算机资源&#xff1a;处理器资源&#xff0c;IO设备资源&#xff0c;存储…

使用AXI GPIO IP核点亮led

本例程使用SD卡启动模式 创建工程模板在hello_world中已经介绍过了&#xff0c;这里直接从配置完zynq ip核开始 点击加号&#xff0c;搜索GPIO&#xff0c;双击添加AXI GPIO IP核 双击 GPIO IP 核进行设置&#xff0c;设置为输出模式&#xff0c;位宽为4&#xff0c;设置完成后…

超过1000种工具揭示了单细胞RNA数据分析的趋势

文章&#xff1a;Over 1000 tools reveal trends in the single-cell RNA-seq analysis landscape 杂志&#xff1a;Genome Biology 年份&#xff1a;2021 从 2016 年开始&#xff0c;scRNA-tools 数据库&#xff08;https://www.scrna-tools.org/&#xff09;不断收集单细胞转…

el-input 显示最大长度和已输入内容长度

效果如下图 多行文本框&#xff1a; 单行文本框&#xff1a; 需要设置 maxlength 和 show-word-limit 两个属性&#xff0c;在使用 maxlength 属性限制最大输入长度的同时&#xff0c;可通过设置 show-word-limit 属性来展示字数统计。 <el-inputtype"textarea&quo…

ElasticSearch面试题整理(持续更新)

1. Elasticsearch 中的倒排索引是什么&#xff1f; Elasticsearch 使用一种称为倒排索引的结构&#xff0c;ES中的倒排索引其实就是 lucene 的倒排索引&#xff0c;区别于传统的正向索引&#xff0c;倒排索引会再存储数据时将关键词和数据进行关联&#xff0c;保存到倒排表中&…

医院如何筛选安全合规的内外网文件交换系统?

医院内外网文件交换系统是专为医疗机构设计的&#xff0c;用于在内部网络&#xff08;内网&#xff09;和外部网络&#xff08;外网&#xff09;之间安全、高效地传输敏感医疗数据和文件的解决方案。这种系统对于保护患者隐私、遵守医疗数据保护法规以及确保医疗服务的连续性和…