鼠年全马铁人挑战 WEEK 30:负载性能测试 - JMeter (下)

           Photo on Hashedin by Sripathi Krishnan


前言

上週简单的介绍了如何快速的使用 JMeter
简单分成三个部分,分别是:安装、使用与报告
如果还没看过的大哥大姐们 小弟非常建议来看看
鼠年全马铁人挑战 WEEK 29:负载性能测试 - JMeter (上)

而这週小弟想要延续上週的内容
藉由上週的 JMeter 来更深入的介绍 JMeter 的各种功能

分享重点

JMeter - OptionsJMeter - Tools (import from cURL)setUp Thread GrouptearDown Thread GroupPreProcessorToggle

JMeter - Options

JMeter 的 Options 标籤中有许多的设定选项
每一个的设定选项都可以让使用上更为顺畅
小弟觉得最有感的设定有三个,分别是:

Look and Feel:设定 JMeter GUI 的系统主题Log Viewer:开启或关闭执行 log Choose Language:设定 JMeter GUI 的系统语系
         (并非完全翻译 建议还是学点英文XD)

JMeter - Tools

JMeter 的 Tools 标籤中有一个功能小弟不得不介绍
那就是 import from cURL (实在是太方便 太好用拉)
import from cURL 的方式有两种

在上方的编辑器内 直接输入 cURL 内容点击浏览(Browse...) 选择 cURL 的执行档

额外补充:
如果不确定 cURL 是否正确的话
可以先使用 Insomnia 设定
完成后再透过 Insomnia 功能来产生 cURL
如果还不知道怎么使用 Insomnia 的大哥大姐们
欢迎点击下方连结 进来看看
鼠年全马铁人挑战 WEEK 11:API 测试工具 - Insomnia

新增 setUp Thread Group

setUp Thread Group 的使用方式与 Thread Group 几乎相同
差别在于 setUp Thread Group 是在执行 Sampler 请求之前的前置作业
换句话说,也就是非主要的测试内容
但是又必须在负载测试执行之前完成的操作

setUp Thread Group

对左侧预设的 Test Plan 按右键 接着依序选择
Add > Threads(Users) > setUp Thread Group

新增 tearDown Thread Group

tearDown Thread Group 的使用方式与 Thread Group 也几乎相同
差别在于 tearDown Thread Group 是在执行完所有 Sampler 请求之后的还原作业
换句话说,也就是非主要的测试内容
但是又必须在负载测试执行之后完成的操作

tearDown Thread Group

对左侧预设的 Test Plan 按右键 接着依序选择
Add > Threads(Users) > tearDown Thread Group

PreProcessor

PreProcessor 的概念与 setUP Thread Group 相似
目的都是为了在执行 Sampler 的请求前完成一些操作
差别在于 PreProcessor 是为单一 Sampler 请求提前执行的操作

BeanShell PreProcessor

新增 BeanShell PreProcessor

在 Sampler 请求中添加 BeanShell PreProcessor:
对左侧预设的 Sampler(HTTP Request) 按右键 接着依序选择
Add > Pre Processors > BeanShell PreProcessor

编辑 BeanShell PreProcessor

Name:BeanShell PreProcessor 的名称
Reset Interpreter:在每次执行前重置内容并清除内存 (预设为 False)
Parameters:设定参数,透过空格来设定多参数,并以 bsh.args[num] 使用
File Name:执行外部 BeanShell 脚本的路径位置

BeanShell 是一种轻量级脚本,语法与 Java 相似

JSR223 PreProcessor

新增 JSR223 PreProcessor

在 Sampler 请求中添加 JSR223 PreProcessor
对左侧预设的 Sampler(HTTP Request) 按右键 接着依序选择
Add > Pre Processors > JSR223 PreProcessor

编辑 JSR223 PreProcessor

Name:JSR223 PreProcessor 的名称
Language:撰写 PreProcessor 脚本的程式语言
(beanshell, bsh, ecmascript, groovy, java, javascript, jexl, jexl2)
Parameters:设定参数,透过空格来设定多参数,并以 bsh.args[num] 使用
File Name:执行外部 BeanShell 脚本的路径位置

小弟这边用的是 JavaScript 的语法,虽然範例没有写 function

除此之外,JMeter 还有提供很多种的 PreProcessor

HTML Link ParserHTTP URL Re-writing ModifierJDBC PreProcessorRegEx User ParametersSample TimeoutUser Parameters

但是相较之下没有前两个所介绍的 PreProcessor 流行
换句话说 透过前两种 PreProcessor
就可以解决绝大部分甚至是所有的问题
因次这边小弟就不再赘述

Toggle (Enable/Disable)

Toggle 的功能主要是用来 启用或是禁用 Thread Group/Sampler
就跟写 script 将 function 注解的概念一样
使用方式有两种

第一种
如果状态为 Enable 可以选择 Disable 或是 Toggle 来禁用
如果状态为 Disable 可以选择 Enable 或是 Toggle 来启用

对左侧的 Thread Group/Sampler(HTTP Request) 按右键
选择 Enable/Disable 或是 Toggle

第二种
如果想要更快速的话 也可以透过快捷键达到同样的效果
对左侧的 Thread Group/Sampler(HTTP Request) 按左键
直接使用快捷键 command+t


结尾

因为小弟也是新手使用的分享文
所以介绍的内容可能有遗漏或是错误,还请各位大哥大姐提点。
小弟将继续往下週迈进。 ─=≡Σ((( つ•̀ω•́)つ


参考文献

相关文章

A Quick Guide to JMeter PreProcessors | BlazeMeter鼠年全马铁人挑战 WEEK 11:API 测试工具 - Insomnia鼠年全马铁人挑战 WEEK 29:负载性能测试 - JMeter (上)

相关影片

Jmeter Tutorial 18 - Jmeter BeanShell Scripting Part 1

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章