jMeter - 测试计划元素

JMeter测试计划包含下面讨论的测试元素.测试计划包括至少一个线程组.在每个线程组中,我们可以放置一个或多个其他元素和减号的组合;采样器,逻辑控制器,配置元件,监听器和定时器.每个采样器前面可以有一个或多个预处理器元素,后跟后处理器元素和/或断言元素.让我们详细看看每个元素 :

线程组

线程组元素是测试计划的起点.顾名思义,线程组元素控制JMeter在测试期间将使用的线程数.我们还可以通过Thread Group : 来控制以下内容;

  • 设置线程数

  • 设置加速时间

  • 设置测试迭代次数

线程组控制面板看起来像这样 :

线程组

线程组面板包含以下组件 :

  • 采样器错误后采取的措施 : 如果在测试执行期间发生任何错误,您可以让测试为 :

    • 继续到测试中的下一个元素

    • 停止线程以停止当前线程.

    • 完全停止测试,以防你想在错误继续运行之前检查错误.

  • 线程数 : 模拟服务器应用程序的用户数或连接数.

  • 加速期定义JMeter获取的时间长度所有线程都在运行.

  • 循环计数 : 定义执行测试的次数.

  • 计划程序复选框 : 选择后,"计划程序配置"部分将显示在控制面板的底部.

  • 计划程序配置 : 您可以配置运行测试的开始和结束时间.

控制器

JMeter有两种类型的控制器和减号; 采样器逻辑控制器.

采样器

采样器允许JMeter发送特定类型的请求到服务器.它们模拟来自目标服务器的页面的用户请求.例如,如果需要在HTTP服务上执行POST,GET或DELETE,则可以添加HTTP请求采样器.

一些有用的采样器是 :

  • HTTP请求

  • FTP请求

  • JDBC请求

  • Java请求

  • SOAP/XML请求

  • RPC请求

以下屏幕截图显示了HTTP请求采样器控制面板 :

采样器控制面板

逻辑控制器

使用逻辑控制器可以控制线程中采样器的处理顺序.逻辑控制器可以更改来自其任何子元素的请求的顺序.一些例子是 :  ForEach Controller,While Controller,Loop Controller,IF Controller,Run Time Controller,Interleave Controller,Throughput Controller和Run Once Controller.

以下屏幕截图显示了一个Loop Controller Control Panel :

逻辑控制器面板

以下列表包含所有逻辑控制器JMeter提供 : 去;

  • 简单控制器

  • 循环控制器

  • 只有一个控制器

  • 交错控制器

  • 随机控制器

  • 随机订单控制器

  • 吞吐量控制器

  • 运行时控制器

  • 如果控制器

  • 而控制器

  • 开关控制器

  • ForEach控制器

  • 模块控制器

  • 包含控制器

  • 交易控制器

  • 录制控制器

测试片段

测试片段是一种特殊类型的元素,与线程组元素位于同一级别.它与线程组的区别在于它不会被执行,除非它被模块控制器或Include_Controller引用.此元素纯粹用于在测试计划中重复使用代码.

监听器

监听器允许您以表格的形式查看采样器的结果,某些日志文件中的图形,树或简单文本.当JMeter的采样器组件被执行时,它们提供对JMeter收集的关于测试用例的数据的可视访问.

可以在测试的任何地方添加监听器,包括直接在测试计划下.他们只会从等级或低于其等级的元素收集数据.以下列表包括JMeter提供和减去的所有监听器;

  • 示例结果保存配置

  • 图表完整结果

  • 图表结果

  • 样条曲线可视化器

  • 断言结果

  • 查看结果树

  • 汇总报告

  • 查看表格中的结果

  • 简单数据编写器

  • 监控结果

  • 分布图(alpha)

  • 汇总图

  • Mailer Visualizer

  • BeanShell监听器

  • 摘要报告

计时器

默认情况下,JMeter线程发送请求而不会在每个采样器之间暂停.这可能不是你想要的.您可以添加一个计时器元素,该元素允许您定义在每个请求之间等待的句点.

以下列表显示JMeter提供的所有计时器 :

  • 常量计时器

  • 高斯随机计时器

  • 统一随机计时器

  • 恒定吞吐量计时器

  • 同步计时器

  • JSR223时间

  • BeanShell时间

  • BSF时间

  • Poisson随机时间

以下屏幕截图显示了一个常数定时器控制面板 : 号;

常量定时器面板

断言

断言允许您对使用采样器发出的请求的响应包含一些验证测试.使用断言可以证明您的应用程序正在返回正确的数据. JMeter会在断言失败时突出显示.

以下列表包含JMeter提供的所有断言 :

  • Beanshell Assertion

  • BSF断言

  • 比较断言

  • JSR223断言

  • 响应断言

  • 持续时间断言

  • 大小断言

  • XML断言

  • BeanShell断言

  • MD5Hex断言

  • HTML断言

  • XPath断言

  • XML Schema断言

以下屏幕截图显示了响应断言控制面板 :

响应断言面板

配置元素

配置元素允许您创建采样器使用的默认值和变量.它们用于添加或修改采样器发出的请求.

它们在它们所属范围的开始处执行,位于同一范围内的任何采样器之前.因此,只能从放置它的分支内部访问配置元素.

以下列表包含JMeter提供的所有配置元素 :

  • 计数器

  • CSV数据集配置

  • FTP请求默认值

  • HTTP授权管理器

  • HTTP缓存管理器

  • HTTP Cookie管理器

  • HTTP代理服务器

  • HTTP请求默认值

  • HTTP标头管理器

  • Java请求默认值

  • 密钥库配置

  • JDBC连接配置

  • 登录配置元素

  • LDAP请求默认值

  • LDAP扩展请求默认值

  • TCP采样器配置

  • 用户定义变量

  • 简单配置元素

  • 随机变量

预处理器元素

预处理器元素是运行ju的东西在采样器执行之前的st.它们通常用于在运行之前修改样本请求的设置,或更新未从响应文本中提取的变量.

以下列表包含所有预处理器JMeter提供和减去的元素;

  • HTML链接解析器

  • HTTP URL重写修饰符

  • HTTP用户参数修饰符

  • 用户参数

  • JDBC PreProcessor

  • JSR223 PreProcessor

  • RegEx用户参数

  • BeanShell PreProcessor

  • BSF PreProcessor

后处理器元素

后处理器在采样器完成执行后执行.此元素通常用于处理响应数据,例如,检索特定值以供以后使用.

以下列表包含JMeter提供的所有后处理器元素 :

  • 正则表达式提取器

  • XPath Extractor

  • 结果状态操作处理程序

  • JSR223 PostProcessor

  • JDBC PostProcessor

  • BSF PostProcessor

  • CSS/JQuery Extractor

  • BeanShell PostProcessor

  • Debug PostProcessor

测试元素的执行顺序

以下是测试计划元素的执行顺序 :

  • 配置元素

  • 预处理器

  • 计时器

  • 采样器

  • 后处理器(除非SampleResult为空)

  • 断言(除非SampleResult为空)

  • 监听器(除非SampleResult为nul) l)