logo资料库

jmeter-由浅入深学性能.pdf

第1页 / 共119页
第2页 / 共119页
第3页 / 共119页
第4页 / 共119页
第5页 / 共119页
第6页 / 共119页
第7页 / 共119页
第8页 / 共119页
资料共119页,剩余部分请下载后查看
接口测试
接口定义
什么是接口
常见的接口类型
前端和后端
接口测试
接口测试定义
接口测试意义
接口测试的价值
接口测试常见请求
接口测试常见问题
接口测试场景设计
接口测试要点
接口测试流程
接口响应状态码
接口用例设计
针对输入设计
数值型
数组或链表类型
针对逻辑设计
约束条件
针对输出设计
输出结果
常见问题和风险
针对接口超时设计
针对废弃接口设计
针对接口合理性设计
接口自动化
1:环境部署
2:目录及面板介绍
核心配置
面板
3:核心组件
3.1:线程组与压力测试
1:基础线程组
2:阶梯加压线程组(Stepping Thread Group)
3:Arrivals Thread Group(目标线程组)
3.2:七种基础Sampler
1:Debug Sampler
2:HTTP请求
四种请求方法
不同类型的入参
3:JDBC Request
4:Dummy Sampler(模拟请求)
5:Java请求
6:FTP请求
7:SSH Command(远程ssh连接)
3.5:三种表达式和提取器
1:JSON 提取
2:XPath提取
3:正则表达式提取
3.4:八个基础配置元件
1:CSV Data Set Config
2:HTTP请求默认值
3:JDBC Connection Configuration
4:Random Variable
5:用户定义的变量
6:计数器
7:插件管理器
8:定时器
3.6:五种常见断言
1:查看结果树
2:Bean Shell断言
3:响应断言
4:断言持续时间
5:JSON Assertion(json断言)
6:断言结果
4:接口自动化关联
关联的意义
传递token获取登录口令
实现增删改查接口闭环
JDBC关联
1:JDBC Connection的配置
2:JDBC请求的发送
3:JDBC请求关联
4:JDBC传递多个参数
性能测试
初识性能测试
性能测试概念
性能测试意义
性能测试思路
性能测试关注点
性能测试评估
性能测试需求
性能测试用例
性能测试类型
基准测试
负载测试
压力测试
阶梯式压力测试
稳定性压力测试(可靠测试)
破坏性压力测试
Spike测试
并发测试
性能指标剖析
响应时间
并发
吞吐量
CPU使用率
内存使用率
I/O
资源监控与分析
前端性能数据监听
常用监听器
监听器图形设置
监听器数据分析
Linux性能监听
性能测试常见问题
附录
Mock接口
Docker基础命令
版本变更记录
完整版目录
接口自动化章节
性能测试章节
QQ 群 901813303 获取完整版 jmeter-由浅入深学性能(试读版) 接口测试.............................................................................................................................4 接口定义.....................................................................................................................4 什么是接口.........................................................................................................4 常见的接口类型.................................................................................................5 前端和后端.........................................................................................................5 接口测试.....................................................................................................................5 接口测试定义.....................................................................................................5 接口测试意义.....................................................................................................6 接口测试的价值.................................................................................................6 接口测试常见请求.............................................................................................7 接口测试常见问题.............................................................................................7 接口测试场景设计.............................................................................................7 接口测试要点.....................................................................................................8 接口测试流程.....................................................................................................9 接口响应状态码.................................................................................................9 接口用例设计.......................................................................................................... 11 针对输入设计.................................................................................................. 11 针对逻辑设计.................................................................................................. 13 针对输出设计.................................................................................................. 14 针对接口超时设计.......................................................................................... 14 针对废弃接口设计.......................................................................................... 15 https://www.cnblogs.com/Zfc-Cjk/
QQ 群 901813303 获取完整版 针对接口合理性设计...................................................................................... 15 接口自动化...................................................................................................................... 15 1:环境部署............................................................................................................ 15 2:目录及面板介绍................................................................................................ 15 核心配置.......................................................................................................... 17 面板.................................................................................................................. 18 3:核心组件............................................................................................................ 19 3.1:线程组与压力测试................................................................................. 19 3.2:七种基础 Sampler................................................................................... 24 3.5:三种表达式和提取器............................................................................. 37 3.4:八个基础配置元件................................................................................. 52 3.6:五种常见断言......................................................................................... 66 4:接口自动化关联................................................................................................ 76 关联的意义...................................................................................................... 76 传递 token 获取登录口令............................................................................... 76 实现增删改查接口闭环.................................................................................. 80 JDBC 关联......................................................................................................... 82 性能测试.......................................................................................................................... 87 初识性能测试.......................................................................................................... 87 性能测试概念.................................................................................................. 87 性能测试意义.................................................................................................. 88 性能测试思路.................................................................................................. 88 性能测试关注点.............................................................................................. 88 性能测试评估.................................................................................................. 89 性能测试需求.................................................................................................. 90 性能测试用例.................................................................................................. 92 性能测试类型.......................................................................................................... 94 基准测试.......................................................................................................... 94 负载测试.......................................................................................................... 94 压力测试.......................................................................................................... 95 性能指标剖析.......................................................................................................... 96 资源监控与分析.................................................................................................... 101 前端性能数据监听........................................................................................ 101 Linux 性能监听...............................................................................................109 性能测试常见问题................................................................................................ 113 附录................................................................................................................................ 115 Mock 接口.............................................................................................................. 115 https://www.cnblogs.com/Zfc-Cjk/
QQ 群 901813303 获取完整版 Docker 基础命令.................................................................................................... 115 版本变更记录........................................................................................................ 116 完整版目录............................................................................................................ 117 接口自动化章节............................................................................................ 117 性能测试章节................................................................................................ 118 https://www.cnblogs.com/Zfc-Cjk/
关注公众号--测试驿栈 接口测试 接口定义 什么是接口 一般来说接口有两种,一种是程序内部的接口,一种是系统对外的接口。 广义来说,客户端与后台服务间的协议;插件间通信的接口;模块间的接口;再小到一个 类提供的方法;都可以理解为接口 系统对外的接口 如果我们要从网站或服务器上获取资源或信息,网站肯定不会把数据库共享给你, 它只会给你提供一个写好的方法来获取数据,我们通过引用它提供的接口就能获取数据 程序内部的接口 方法与方法之间,模块与模块之间的交互,程序内部抛出的接口。比如一个 web 项目,有登录、新增,修改,删除等等,想要增删改查就必须登录,那么这几个模块会 有交互,会抛出一个接口,供内部系统进行调用 接口的组成 一个完整的接口应该包含以下内容: 1. 接口说明 2. 调用 url 3. 请求方法(get\post) 4. 请求参数、参数类型、请求参数说明 5. 返回参数说明 接口至少应有请求地址、请求方法、请求参数(入参和出参),部分接口有请求头 header header 是服务器以 HTTP 协议传 HTML 资料到浏览器前所送出的字串,一般存放 cookie、token 等信息 header 和入参是有区别的。header 一般存放的是一些校验信息比如 cookie,它是为 了校验这个请求是否有权限请求服务器。如果有权限它才能请求服务器,然后把请求地 址连同入参一起发送到服务器,然后服务器会根据地址和入参来返回出参。也就是说, 博客地址:https://testerhome.com/topics/21318
关注公众号--测试驿栈 服务器是先接受 header 信息进行判断该请求是否有权限请求,判断有权限后,才会接 受请求地址和入参 常见的接口类型 webService 接口 它使用 soap 协议并通过 http 传输,请求报文和返回报文都是 xml 格式的,我们在 测试的时候通过工具才能进行调用。可以使用的工具有 SoapUI、jmeter http-api 接口 它使用 http 协议,通过路径来区分调用的方法,请求报文都是 key-value 形式的, 返回报文一般都是 json 串,有 get 和 post 等方法,这也是最常用的两种请求方式。可以 使用的工具有 postman、jmeter 等 前端和后端 前端 咱们使用的网页,打开的网站,都是前端。包括 Web 页面的结构、Web 的外观视 觉表现以及 Web 层面的交互实现; 后端 我们在页面上进行操作的时候,这些业务逻辑、功能,比如说新增,修改,删除这 些功能是由后端来实现的。后端更多的是与数据库进行交互去处理相应的业务逻辑。需 要考虑的是如何实现功能、数据的存取、平台的稳定性与性能等 前端和后端通过接口进行交互。前端页面通过调用后端接口来实现功能、 数据的存取,将数据展现在用户面前 接口测试 接口测试定义 1) 接口测试是测试系统组件之间接口的一种测试方法 博客地址:https://testerhome.com/topics/21318
关注公众号--测试驿栈 2) 它用于检测外部系统与系统之间以及系统内部各个子系统之间的交互 3) 重点是要检查数据的交换,以及系统间的相互逻辑依赖关系等 4) 接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符 合或满足相应的功能性、安全性要求 接口测试意义 1.系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,所 以要做接口测试 2.接口测试相对容易实现。且接口自动化相对 UI 自动化也较稳定。减少人工回归 测试人力成本与时间,缩短测试周期,支持快速迭代。 3.由于很多系统前后端是分离的,所以从安全层面来说,只依赖前端进行限制已 经完全不能满足系统的安全要求(绕过前端很容易),需要后端也进行校验,在这种情 况下就需要从接口层面进行验证。前后端传输、日志打印等信息是否加密传输也是需要 验证的,特别是涉及到用户的隐私信息,如钱,身份信息等。 接口测试的价值 1. 更早发现问题 测试应该更早的介入到项目开发中,因为越早的发现 bug,修复的成本越低。然而 功能测试必须要等到系统提供可测试的界面才能对系统进行测试。而接口测试可以功能 界面开发出来之前对系统进行测试。系统接口是上层功能的基础,接口测试可以更早更 低成本的发现和解决问题。然而,在实际的开发过程中,开发人员并没有充足的时间去 编写单元测试,并且他们往往对自己编写的代码迷之自信,不愿意花时间在编写单元测 试上。这个时候接口测试的作用就会变得更加重要。 2.缩短产品研发周期 对于产品研发周期来说,如果将所有测试工作都集中在功能测试阶段。那么测试的 问题和修复周期就会变长。因为测试可以更早的介入产品开发中,所以,可以有效的控 制功能阶段 bug 的数量;从而有效的缩短产品开发周期。 3.发现更底层的问题 系统的有些底层逻辑是在 UI 功能测试中不太容易触发的,那么这些逻辑可能会存 在问题。接口测试可以更容易更全面的测试到这些底层的逻辑。 4.检查服务器的异常处理能力 博客地址:https://testerhome.com/topics/21318
关注公众号--测试驿栈 通常把前端的验证称为弱验证,因为它很容易被绕过,这个时候如果只站在功能的 层面进行测试, 就很难发现一些安全的问题。不以功能为入口的接口测试就会很容易 的验证这些异常情况。 接口测试常见请求 GET 和 POST 请求 如果是 get 请求的话,直接在浏览器里输入就可以,只要在浏览器里面直接能 请求到的,都是 get 请求,如果是 post 的请求的话就得借助工具来发送。 GET 请求和 POST 的区别 1、GET 使用 URL 或 Cookie 传参。而 POST 将数据放在 BODY 中。 2、GET 的 URL 会有长度上的限制,则 POST 的数据则可以非常大。 3、POST 比 GET 安全,因为数据在地址栏上不可见。 4、一般 get 请求用来获取数据,post 请求用来发送数据。 接口测试常见问题 (1)传入参数处理不当,导致程序异常; (2)类型溢出,导致数据读出和写入不一致; (3)因对象权限未进行校验,可以访问其他用户敏感信息; (4)状态处理不当,导致逻辑出现错乱; (5)逻辑校验不完善,可利用漏洞获取非正当利益等 接口测试场景设计 1. 接口文档的规范性检查 2. 接口前置的检查 3. 接口逻辑实现功能的检查 4. 请求参数合法性的检查 5. 请求参数属性的检查 6. 请求参数异常处理的检查 7. 响应体的结构性检查 8. 响应数据的正确性检查 9. 异常响应的检查 10. 响应图片的检查 11. 对旧版本的兼容性检查 博客地址:https://testerhome.com/topics/21318
关注公众号--测试驿栈 12. 业务逻辑中的角色权限检查 13. 业务逻辑中的参数依赖性检查 接口测试要点 下图列出了接口测试的一些关键点 博客地址:https://testerhome.com/topics/21318
分享到:
收藏