Jmeter - 从入门到精通 - 创建测试计划(Test Plan)详细教程

Posted 软件测试自动化测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter - 从入门到精通 - 创建测试计划(Test Plan)详细教程相关的知识,希望对你有一定的参考价值。

目录

1.简介

2.创建一个测试计划(Test Plan)

3.小结


1.简介

上一篇中宏哥已经教你把JMeter的测试环境搭建起来了,那么这一篇我们就将JMeter启动起来,一睹其芳容,首先宏哥给大家介绍一下如何来创建一个测试计划(Test Plan)。

2.创建一个测试计划(Test Plan)

测试计划(Test Plan)描述了一系列Jmeter运行时将要执行的一系列步骤。完整的测试计划包含一个或者多个线程组,逻辑控制器,取样发生控制,监听器,定时器,断言和配置元件组成。

2.1添加和删除元件

  可以通过右键单击树中的元素,然后从“ 添加 ”列表中选择一个新元件来将元件添加到测试计划中。或者,可以通过选择“ merge ”或“ open ”选项从文件中加载和添加元素。

  要删除元件,请确保已选择该元件,右键单击该元件,然后选择“ 删除 ”选项。

2.2 加载和保存元件

要从文件中加载元件,请右键单击要向其中添加已加载元件的现有树元素,然后选择“ 合并 ”选项。选择保存元素的文件。JMeter将元素合并到树中。

  要保存树元素,请右键单击元素,然后选择“ 将选择另存为... ”选项。JMeter将保存选定的元素及其下的所有子元素。这样,您可以保存测试树片段和单个元素以供以后使用。

注意:敲黑板,敲脑壳啦!!!工作台不会自动保存测试计划,但是它可以同上被单独保存的。

2.3 配置树元件

在测试树中的任何元件都在JMeter的右侧框架显示配置。那些配置允许你配置测试元件的细节行为,对于一个元件什么能被配置依赖于它是一个什么类型的元件。测试树中的任何元素都将在JMeter的右侧框中显示控件。这些控件使您可以配置特定测试元素的行为。元素可配置的内容取决于元素的类型。

注意:敲黑板,敲脑壳啦!!!可以通过拖拉测试树周围的元件操作测试树。

2.4 保存测试计划

尽管不是必需的,但我们建议您在运行测试计划之前将其保存到文件中。要保存测试计划,请从“文件”菜单中选择“ 保存 ”或“ 将测试计划另存为... ”(对于最新版本,不再需要先选择“测试计划”元素)。

注意:敲黑板,敲脑壳啦!!!JMeter允许您保存整个测试计划树或仅保存其中的一部分。要仅保存位于“测试计划”树的特定“分支”中的元素,请在树中选择要从其开始“分支”的“测试计划”元素,然后单击鼠标右键以访问“ 另存为... ” 。 ”菜单项。或者,选择适当的测试计划元素,然后从“编辑”菜单中选择“ 将选择另存为... ”。

2.5 运行一个测试计划

要运行测试计划,请从“ 运行 ”菜单项中选择“ 开始 ”(Control + r)。当JMeter运行时,它在菜单栏下方部分的右端显示一个小绿色框。您也可以检查“ 运行 ”菜单。如果禁用了“ 开始 ”,并且启用了“ 停止 ”,则JMeter正在运行您的测试计划(或者至少认为它是这样)。

绿色框左侧的数字是活动线程数/线程总数。这些仅适用于本地运行的测试;使用客户端-服务器模式时,它们不包括在远程系统上启动的任何线程。

注意:敲黑板,敲脑壳啦!!!仅在调试测试计划时,才应使用此处所述的GUI模式。要运行实际负载测试,请使用CLI模式。

2.6停止测试

菜单中有两种类型的停止命令:

  • 停止(Control + .)-如果可能,立即停止线程。许多采样器都是可中断的,这意味着可以提前终止活动采样。stop命令将检查所有线程是否已在默认超时(5000 ms = 5秒)内停止。[这可以使用JMeter属性jmeterengine.threadstop.wait进行更改]如果线程尚未停止,则会显示一条消息。可以重试Stop命令,但是如果失败,则必须退出JMeter进行清理。
  • 关机(Control + ,)-请求线程在任何当前工作结束时停止。不会中断任何活动样本。模态关闭对话框将保持活动状态,直到所有线程停止。

如果关机时间太长。关闭“关机”对话框,然后选择“运行/停止”,或仅按Control+.

在CLI模式下运行JMeter时,没有菜单,并且JMeter不会对诸如Control + . 之类的组合键作出反应。。因此,JMeter CLI模式将监听特定端口上的命令(默认为4445,请参见JMeter属性jmeterengine.nongui.port)。如果使用默认端口(例如,另一个JMeter实例),JMeter支持自动选择备用端口。在这种情况下,JMeter将尝试下一个更高的端口,直到到达JMeter属性jmeterengine.nongui.maxport)为止,该属性默认为4455。如果maxport小于或等于port,那么将不会进行端口扫描。 所选端口显示在控制台窗口中。 当前支持的命令是:

  • Shutdown -正常关机
  • StopTestNow-立即关闭

可以分别使用shutdown [.cmd|.sh]stoptest [.cmd|.sh]脚本发送这些命令。这些脚本可以在JMeter bin目录中找到。仅当脚本从同一主机运行时,才会接受命令。

2.7 作用域规则

JMeter测试树包含元件总是分等级和顺序的。在测试树中的一些元件是严格分级(监听器,配置元件,后置处理器,前置处理器,断言,定时器),一 些主要是有序的(控制器,取样器)。当你创建测试计划时,你将创建一个有序的取样请求(通过取样器)列表,那些请求描述了一组步骤的执行。那些请求常组织 在也有序的控制器中。给出如下测试树:

测试树例子

请求的顺序是 One,Two,Three,Four。

一些控制器影响它的子元件的顺序,你可以在组件参考读到特定的控制器。

其他元素是分等级的。例如,一个断言在测试树中是分等级的。如果它的父元件是请求,它就被应用于那个请求。如果它的父元件是控制器,它就影响所有那个控制器下的所有请求。如下测试树:

分级例子

Assertion #1 仅被应用于请求 One, Assertion #2 仅被应用于 请求 Two 和 Three。

另一个例子,这次使用定时器:

复杂的例子

在这个例子里,请求的命名表现它们被执行的顺序。Timer #1 应用于 请求 Two, Three, 和 Four (注意对于分等级的元件怎样的顺序是不相关的)。Assertion #1 应用于请求Three。Timer #2 对所有请求有效。

希望那些例子使你弄清了配置(分等级的)元件如何被应用。如果你想每个请求都被树分叉拒绝,到它的父元件,到它的父元件的父元件,等等,每次收集所有它的父元件的配置元件,你将看到它如何工作的。

元件首部管理器, Cookie 管理器和授权管理器的配置和默认元件的配置被视为是不同的.默认元件配置的设置被并入取样器可以到达的一组值里了。然而来自管理器的设置没有并入。如果多于一个管理器在一个取样器范围中,仅仅一个被使用,但是现在没有办法指定那个被使用。

2.8 错误报告

JMeter将警告和错误报告给jmeter.log文件,以及有关测试运行本身的一些信息。JMeter 在其窗口右端的警告图标(三角形)旁边显示jmeter.log文件中找到的警告/错误数量。单击警告图标以在JMeter窗口的底部显示jmeter.log文件。偶尔可能会有一些错误,JMeter无法捕获和记录;这些将显示在命令控制台上。如果测试不符合您的预期,请检查日志文件,以防报告任何错误(例如,函数调用中的语法错误)。

通常不会在日志文件中报告采样错误(例如HTTP 404-未找到文件)。而是将它们存储为样本结果的属性。样本结果的状态可以在各种不同的监听器中看到。

3.小结

3.1GUI与CLI的区别

GUI(图形用户界面) Graphical User Interface(图形用户接口) 用图形的方式,来显示计算机操作的界面,这样方便更直观。 CLI Command line User Interface(命令行用户接口) 最常见的DOS命令操作。 需要记忆一些常用的命令,操作不直观。

 时光荏苒,说再见的时刻又到了 当然除了干货,我也为大家争取到了福利! 

以上是关于Jmeter - 从入门到精通 - 创建测试计划(Test Plan)详细教程的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter - 从入门到精通 - 创建网络测试计划(详解教程)

Jmeter - 从入门到精通 - 创建网络测试计划(详解教程)

Jmeter - 从入门到精通 - 创建网络测试计划(详解教程)某大厂高级测开

Jmeter - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)

Jmeter - 从入门到精通 - 建立数据库测试计划(详解教程)

Jmeter - 从入门到精通 - 建立数据库测试计划实战<MySQL数据库>(详解教程)高级测开