jmeter负载测试教程_JMeter负载测试教程– ULTIMATE指南(PDF下载)

jmeter负载测试教程

本教程是关于JMeter的。
这些是我们要介绍的要点:

  • 我们将解释JMeter的用途。
  • JMeter如何实施以及设计了哪些技术。
  • 如何正确安装和配置它。
  • 我们将解释其用户界面的基本功能。
  • 我们将详细说明如何配置不同的测试计划。
  • 展示如何分析其结果。
  • 最后,我们将介绍一些重要的最佳做法。

所有示例都使用Java 8更新0.20,Eclipse Luna 4.4,JMeter 2.11和MySQL Community Server 5.6.21进行了配置和实现。

目录

1.简介
2.使用的技术
3.这篇文章是关于什么的?
4.安装
5. GUI概述
6.可用请求
7.测试计划和组成
7.1。 一个小节
7.2。 取样器
7.3。 逻辑控制器
7.4。 听众
7.5。 计时器
7.6。 断言
7.7。 配置节点
7.8。 预处理器
7.9。 后处理器
8.测试计划元素的执行顺序
9.运行/停止测试计划
10. Web(HTTP)测试计划
11.数据库测试计划教程
12. Junit测试计划
13.记录HTTP测试
14. JMeter插件
15. JMeter最佳做法
16.总结
17.下载
18.资源

1.简介

JMeter是一种应用程序,它提供了多种可能性,可以使用不同的技术和协议来配置和执行负载,性能和压力测试。

它允许针对所有类型的数据库,FTP,HTTP,HTTPS或其他类型的服务器模拟不同类型的请求。

简要解释所有这些概念的含义可能是好的:

  • 负载测试:这种测试将经过测试的系统或应用程序达到设计和要求的极限。 它们用于测量极端条件下的系统和应用程序行为。
  • 性能测试:这些测试用于检查系统在性能方面的行为,即系统如何响应以及特定工作负载的稳定性。
  • 压力测试:这些测试试图通过加载更多资源并使模块超出设计限制来破坏或破坏系统。

JMeter最初旨在测试Web应用程序,但其功能已得到扩展,如今,它可以针对几乎任何类型的程序进行测试,并可用于在您的应用程序中执行功能测试。

2.使用的技术

JMeter是Java桌面应用程序。 它的UI使用Swing Java API实现。 由于这两点,JMeter是多平台的,可以在装有Java虚拟机的任何类型的计算机上运行:Windows,Linux,Mac。

它的框架允许并发和执行多个线程和线程组。 在尝试配置负载和压力测试时,这非常有用。

它是可扩展的,并且有大量可用的插件。

JMeter是Apache软件基金会的一部分,并且是完全免费和开放源代码( http://www.apache.org/licenses/ )。

3.这篇文章是关于什么的?

本文是有关如何对没有JMeter经验的开发人员和软件工程师使用JMeter的教程。

它还提供了有关不同可能配置和测试计划的示例以及操作方法。 在下一章中,我们将了解如何安装JMeter以及如何配置,运行,存储和分析不同类型的测试计划的结果。

4.安装

您需要执行以下步骤才能在计算机上安装并运行JMeter:

  • 首先,您必须安装Java。 您的计算机中需要安装JRE 1.6或更高版本。 为此,只需访问Oracle下载站点并安装适合您的系统的软件包: http : //www.oracle.com/technetwork/java/javase/downloads/index.html 。
  • JAVA_HOME环境变量设置为指向计算机上安装Java的基本目录位置。 对于Windows用户:
 JAVA_HOME=C:\Program Files\Java\jdk1.8.0_20 

或任何Java版本。

  • 将Java编译器位置附加到系统路径。 对于Windows用户:
 C:\Program Files\Java\jdk1.7.0_25\bin 

到系统变量Path的末尾。

  • 通过转到命令行并键入来检查计算机中是否已安装Java。
 java -version 

应该出现以下内容:

 java version "1.8.0_20"  Java(TM) SE Runtime Environment (build 1.8.0_20-b26)  Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode) 
  • 从http://jmeter.apache.org/download_jmeter.cgi下载最新版本的JMeter
  • 例如,将其解压缩到文件夹C:\>JMeter (在Windows中)。
  • 该文件夹的结构应类似于:
 apache-jmeter-2.9  apache-jmeter-2.9\bin  apache-jmeter-2.9\docs  apache-jmeter-2.9\extras  apache-jmeter-2.9\lib\  apache-jmeter-2.9\lib\ext  apache-jmeter-2.9\lib\junit  apache-jmeter-2.9\printable_docs 
  • 然后,可以通过转到文件夹C:\jmeter\apache-jmeter-2.11\bin (Windows用户)并启动程序jmeter.bat启动jmeter.bat
  • 您应该看到JMeter GUI的开始屏幕:

JMeter主画面

5. GUI概述

JMeter GUI非常直观且易于使用,提供了用于文件处理的常用菜单,如新建,打开,保存,另存为等,以及用于启动和停止测试计划以及配置它们的特定菜单。 通过单击鼠标右键,每个测试计划,线程组和测试计划节点(我们将在下一章中详细介绍)将提供不同的上下文菜单选项。

也可以更改UI的语言,并且可以使用多种语言。

正如我们所说,GUI非常直观,易于使用,并且为每个菜单和操作提供了非常易懂的工具提示。 这是JMeter如此广泛使用的原因,除了其质量以外,因为它真的很容易理解和学习如何使用它。

6.可用请求

JMeter为几乎所有类型的系统提供测试配置,但通常开箱即用地涵盖以下协议:

  • Web:HTTP,HTTPS网站“ Web 1.0” Web 2.0(ajax,flex和flex-ws-amf):之后我们将看到如何测试潜在的网页及其行为。
  • Web服务:SOAP / XML-RPC。
  • 通过JDBC驱动程序的数据库。 几乎支持任何种类的数据库,您只需要一个合适的驱动程序,并将其打包在JMeter安装目录中的合适文件夹中即可。 之后,我们将举一个MySQL数据库测试的例子。
  • 目录:LDAP。
  • 通过JMS的面向消息的服务
  • 使用POP3,IMAP,SMTP的邮件服务。
  • FTP服务。
  • 使用JUnit和Java应用程序进行功能测试。

7.测试计划和组成

基本上,使用JMeter包括测试计划的创建,配置和执行以及结果的分析。 测试计划是针对本地或远程服务器(或客户端)的请求集,这些服务器被配置为按照特定说明运行。

在测试计划的配置中,您可以指定几个输入和输出参数,并且可以配置应满足的基本条件,以便测试计划成功与否。

JMeter测试计划由不同的组件组成。 这是最重要的列表,其中包含有关如何使用JMeter UI添加它们以及它们的目的的说明:

7.1线程组

线程组基本上是不同测试计划元素的组合。 它是测试计划的基础,它控制基本的中心参数。

为了创建测试计划,您可能必须首先创建一个线程组并配置其线程数,加速周期,循环计数以及万一出现错误的行为:

  • 线程数:将用于执行测试计划的线程数,对于配置负载和压力测试非常重要。
  • 加速期: JMeter需要启动所有线程的时间。
  • 循环计数:迭代次数,即测试将要执行的次数。
  • 错误行为:出现错误时该怎么办:停止当前线程,停止整个测试,继续…

线程组还具有开始和结束时间配置选项。 通过单击复选框“ Scheduler”,将出现一个带有计划参数的新部分,您可以配置测试的开始和结束时间。

配置完成后,您可以开始将其他测试计划元素(例如采样器,侦听器和计时器)添加到线程组。 我们将在下一章中解释所有这些。

7.2采样器

采样器用于将请求发送到不同类型的服务器。 它们是每个测试计划的基本元素,所有工作都围绕着它们进行:它们执行请求(基于提供的配置),这些请求产生一个或多个响应,然后进行分析。
这是JMeter中可用的采样器的列表(我们将在本教程中看到其中的一些采样器):

  • 访问日志采样器
  • AJP采样器
  • 豆壳采样器
  • BSF采样器
  • 调试采样器
  • FTP采样器
  • HTTP采样器
  • Java采样器
  • JDBC采样器
  • JMS(几个)采样器
  • JSR223采样器
  • JUnit采样器
  • LDAP(几个)采样器
  • 邮件阅读器
  • MongoDB采样器
  • 操作系统进程采样器
  • SMTP取样器
  • 肥皂
  • TCP采样器
  • 测试动作

正如我们在上面的列表中看到的,有很多不同类型的采样器。 该列表不完整,因为在不同的JMeter插件中实现了多个采样器。 每个采样器的配置取决于它执行的请求,这意味着某些采样器具有共同点,但其他采样器由于其请求的性质而完全不同。

7.3逻辑控制器

逻辑控制器是允许您配置线程组中不同采样器的执行顺序的元素。 此列表包含JMeter中所有可用的逻辑控制器:

  • 简单控制器
  • 回路控制器
  • 一次性控制器
  • 交错控制器
  • 随机控制器
  • 随机顺序控制器
  • 吞吐量控制器
  • 运行时控制器
  • 如果控制器
  • 当控制器
  • 开关控制器
  • 每个控制器
  • 模块控制器
  • 包含控制器
  • 交易控制器
  • 录音控制器

7.4听众

侦听器提供了不同的方式来查看采样器请求所产生的结果。 侦听器以表,树或纯日志文件的形式解析结果。

可以将它们添加到测试计划中的任何位置,但它们只会解析和收集采样器级别或以下级别的结果数据。

这些是JMeter中可用的侦听器:

  • 样本结果保存配置
  • 图形完整结果
  • 图形结果
  • 样条可视化器
  • 断言结果
  • 查看结果树
  • 汇总报告
  • 查看表中的结果
  • 简单数据写入器
  • 监控结果
  • 分布图(alpha)
  • 聚合图
  • Mailer Visualizer
  • BeanShell侦听器
  • 总结报告

7.5计时器

您可以使用计时器定义两次请求之间要等待的时间。 如果您未指定任何请求,JMeter将在当前请求完成后立即执行下一个请求,而不会等待任何时间。

JMeter中提供以下计时器:

  • 恒定计时器
  • 高斯随机计时器
  • 统一随机计时器
  • 恒定吞吐量计时器
  • 同步计时器
  • JSR223时间
  • BeanShell时间
  • BSF时间
  • 泊松随机时间

7.6断言

断言通过验证Sampler请求产生的响应来确认测试计划的有效性。 断言基本上与单元测试断言相似,并检查已测试的应用程序响应的质量。 您可以为每种测试计划配置哪种断言处于活动状态。

这是JMeter中可用断言的列表:

  • 豆壳断言
  • BSF断言
  • 比较断言
  • JSR223断言
  • 回应断言
  • 持续时间断言
  • 大小断言
  • XML断言
  • BeanShell断言
  • MD5Hex断言
  • HTML断言
  • XPath断言
  • XML模式声明

7.7配置节点

您可以使用配置元素将不同的参数传递给采样器请求。 它们提供了一种创建变量的方法(不同的和动态的),以后可以由采样器使用。 它们在执行采样器之前在其所属节点的开头执行,这就是为什么采样器可以依赖这些变量的原因。

这是可以在JMeter中使用的所有配置节点的列表:

  • 计数器
  • CSV数据集配置
  • FTP请求默认值
  • HTTP授权管理器
  • HTTP缓存管理器
  • HTTP Cookie管理器
  • HTTP代理服务器
  • HTTP请求默认值
  • HTTP标头管理器
  • Java请求默认值
  • 密钥库配置
  • JDBC连接配置
  • 登录配置元素
  • LDAP请求默认值
  • LDAP扩展请求默认值
  • TCP采样器配置
  • 用户定义的变量
  • 简单的配置元素
  • 随机变量

7.8预处理器

预处理器是在执行采样器之前将要发生的元素(动作,声明或基本上任何东西)。 它们可用于从响应中提取变量,然后可通过配置元素在采样器中使用。

这些是可用作预处理器的元素:

  • HTML链接解析器
  • HTTP URL重写修饰符
  • HTTP用户参数修改器
  • 用户参数
  • JDBC预处理器
  • JSR223预处理器
  • RegEx用户参数
  • BeanShell预处理器
  • BSF预处理器

7.9后处理器

基本上是在采样器执行完成之后执行的元素。 它可用于解析响应数据并提取以后可使用的值。

这些元素可以用作后处理器:

  • 正则表达式提取器
  • XPath提取器
  • 结果状态动作处理程序
  • JSR223后处理器
  • JDBC后处理器
  • BSF后处理器
  • CSS / JQuery提取器
  • BeanShell后处理器
  • 调试后处理器

8.测试计划元素的执行顺序

始终以以下方式对测试计划元素进行排序和执行:

1 –配置节点
2 –预处理器
3 –计时器 4 –采样器 5 –后处理器(仅在有可用结果时执行) 6 –断言(仅在有结果可用时执行) 7 –侦听器(仅在有结果可用时执行)

值得一提的是,一个测试计划可以在其中包含一个或多个测试计划,这是按功能或技术逻辑将测试分组在一起的一种常见做法。

9.运行/停止测试计划

要运行测试计划,您只需单击"Play"按钮:

JMeter开始

通过单击"Play no pauses"按钮,可以开始测试并忽略所有"Play no pauses"

JMeter不会暂停

您可以通过单击"Stop"按钮来停止测试:

JMeter停止

也可以禁用执行测试计划。 为此,您只需要“调整”测试计划的状态即可:

JMeter启用禁用测试计划
从上面的屏幕截图中可以看到,禁用的计划以灰色呈现,无法执行,但可以对其进行修改或重新配置。

10. Web(HTTP)测试计划

在本章中,我们将了解如何创建计划以通过HTTP测试特定的网页。 为此,我将使用http://www.wikipedia.org网站。

足够多的理论,现在我们将了解如何配置HTTP请求测试计划。

  • 将测试计划重命名为您喜欢的名称

在此步骤中,可以以一般术语配置影响线程行为的测试计划,并且可以添加应使用的外部库。 在此示例中,我们将不这样做。

JMeter主要测试计划

  • 添加线程组

在此步骤中,您需要创建一个线程组,负责执行测试的所有组件并配置其主要属性:线程数,以秒为单位的加速周期以及迭代次数。

测试计划上的上下文菜单->添加->线程->线程组

JMeter主要http测试计划

您还可以指定发生错误时要执行的操作(继续,停止,停止当前线程…)

  • 添加采样器HTTP请求

在这一步中,我们向采样器添加要测试的HTTP请求的信息:

添加采样器-> HTTP请求

我们需要为这种类型的请求设置不同的属性:

将服务器名称设置为我们要测试的服务器的名称:在这种情况下,www.wikipedia.org(无http或https协议)。 如果需要,您应该修改端口,协议,要在服务器中执行的方法等的连接值(如果不需要)。 还有多个参数可用于配置代理,超时和不同的标头信息,但在我们的情况下,我们将所有内容保留为默认值

JMeter HTTP配置采样器

  • 添加结果监听器

为了以后可以看到结果,这是必需的。 如本教程之前所见,有几种可能性,对于我们的HTTP请求测试计划,我们将使用“查看结果树”:

添加侦听器->查看结果树

对于我们的示例,我们不会在此进行任何更改,而将所有配置属性保留为默认值。

JMeter http结果为空

  • 保存测试计划并运行

File-> Save (或单击“ Control + s”)

运行->开始 (或按前面所述点击播放)

  • 在侦听器中检查结果

JMeter http结果很好

我们可以看到所有请求均已按预期完成,并且所有请求都提供了有意义的响应,因此似乎我们正在测试的网页可以正常工作(如果这是预期的行为)。 我们可以处理结果并检查所有返回的数据。

我们已经配置了一个测试计划,该计划将一堆或多个请求发送到给定的服务器并解析响应。 现在,我们将看到如何使用其他类型的测试组件,例如计时器和断言。

  • 添加计时器

为了添加一个计时器,我们只需右键单击测试计划并添加一个计时器:

添加计时器->恒定计时器

并且我们将其配置为500毫秒。 最后一个请求完成后,每个请求将等待500毫秒。

JMeter计时器

  • 添加持续时间断言

在测试计划上,右键单击并添加持续时间断言,如果响应时间超过100毫秒,我们将其配置为断言false,并且仅将其配置为用于主样本:

添加断言->持续时间断言

JMeter持续时间断言100

如果重新运行测试计划(保存后),我们将发现此断言存在一些问题:

JMeter http结果错误声明持续时间

发生这种情况的原因很明显,因为我们将持续时间断言仅配置为100毫秒,如果将此数字更改为2000毫秒,则几乎所有请求都将按时得到服务。

  • 添加大小断言

添加断言->大小断言

并且我们确保响应的大小大于5000字节:

JMeter大小声明5000

如果运行测试,我们将看到响应总是大于该响应,如果发生错误响应,则大小可能会更小,并且我们的断言将失败。

11.数据库测试计划教程

现在,我们将了解如何配置,运行和分析针对MySQL数据库的测试结果。 这个例子是关于MySQL的,但是可以使用任何其他类型的DB(例如Oracle,MongoDB或其他)来完成。

  • 安装MySQL

如果您的计算机中未安装MySQL,则可以从http://dev.mysql.com/downloads/下载并安装MySQL服务器,这非常容易。

  • 下载MySQL驱动程序

下载mysql连接器( mysql-connector-java-5.1.6 )并将其复制到jmeter C:\jmeter\apache-jmeter-2.11\lib的lib目录中。

  • 启动MySQL

启动数据库服务器,以便您可以对其进行查询。

  • 建立资料库

您可以根据需要创建数据库,这只是一个非常简单的示例:

 create database jmeter;  use jmeter;  create table jmeter_stuff( id int, name varchar(50), description varchar(50));  insert into jmeter_stuff( id , name, description)VALUES(1, "dani" , "the boss" );  insert into jmeter_stuff( id , name, description)VALUES(2, "topo" , "the worker" );  insert into jmeter_stuff( id , name, description)VALUES(3, "tupac" , "the other" "tupac" "the other" ); 
  • 创建测试计划

执行与上一章相同的操作,以使用新的线程组,JDBC配置类型的新配置元素和JDBC类型的新请求(采样器)创建测试计划,还添加一个侦听器以解析和查看结果与前面示例中的结果相同。
唯一的区别是采样器的类型,在本例中为JDBC采样器。

  • JDBC采样器

给变量绑定池赋予一个有意义的名称,并编写一些SQL语句:

 * from jmeter_stuff; select * from jmeter_stuff; 

JMeter db请求配置

  • JDBC连接配置

将新的JDBC连接配置添加到采样器。

右键单击JDBC采样器->添加连接配置

如下更改参数:

 Variable Bound to Pool= same name as in the sampler  Database URl=jdbc:mysql: //localhost :3306 /jmeter  JDBC Driver class=com.mysql.jdbc.Driver  username=  password=  set username and password to your MySql credentials. set username and password to your MySql credentials. 

JMeter数据库连接配置

  • 保存计划并执行。
  • 使用之前配置的侦听器查看结果。

您可以按照与HTTP请求测试计划相同的方式来验证和检查输出,还可以添加预处理器,后处理器,断言或您可能需要的任何其他类型的元素。


JMeter db结果响应数据

在这种情况下,输出是select语句的结果。

您也可以通过更改采样器配置中SQL语句,使用这种采样器来更新数据。

以下屏幕截图是有关请求响应结果的基本信息:

JMeter db结果响应

12. Junit测试计划

在本章中,我们将解释如何将JMeter与JUnit结合使用。 从负载和性能的角度来看,这为执行功能测试提供了非常强大的机制。

  • 首先,您需要创建一个Junit测试,如下所示:
 public class JMeterTest  { 
     public JMeterTest() 
     { 
         // just for testing purposes 
         System.out.println( "calling the constructor" ); 
     } 
     @Before 
     public void setUp() throws Exception 
     { 
         // just for testing purposes 
         System.out.println( "calling setup" ); 
     } 
     @After 
     public void tearDown() throws Exception 
     { 
         // just for testing purposes 
         System.out.println( "calling tearDown" ); 
     } 
     @Test 
     public void testMe() 
     { 
         for ( int i = 0 ; i < 30 ; i++ ) 
         { 
             // just asserting randomly in order to check what happens in each case 
             int randomNumber = ( int )( Math.random() * 100 ); 
             System.out.println( randomNumber ); 
             assertEquals( 0 , randomNumber % 2 ); 
         } 
     }  } 

该测试主要包含几个断言,以检查JMeter如何使用它们,而本教程的目的不是详细解释单元测试或JUnit。

  • 将测试添加到JUnit目录

将单元测试打包到jar文件中,然后将其复制到目录jmeter/lib/junit 确保jar文件包含要让JMeter执行的测试的.class字节码。 在本文的最后,您可以找到一个带有pom.xml的Java项目,您可以将其直接用于生成JMeter可以使用的jar文件。 您只需要编译代码:

 mvn compile 

或者,您可以直接在Eclipse或您喜欢的IDE中将项目导出为JAR文件,包括字节码和生成的文件。

  • 添加一个JUnit采样器请求

JMeter Junit采样器请求

如我们之前所见,创建一个测试计划并添加一个JUnit请求类型的采样器: Add Sampler-> Junit Request并对其进行配置,以执行您刚刚从上面创建的测试中想要的方法。

在我们的例子中,我们将执行基于JUnit 4的方法,但是您也可以通过选择用于此目的的复选框,使用JUnit 3来执行此操作。

Junit采样器请求配置

  • 像上一章一样添加一个侦听器以查看结果
  • 运行测试计划
  • 查看结果

在这里,我们可以看到刚刚创建的JUnit测试的结果:

JMeter查看结果

正如我们在上面的屏幕截图中看到的,我们所有的测试(1个测试,10个循环)都失败了。 这是预期的行为,因为我们希望测试失败。 实际上,我们刚刚编写的单元测试没有功能性意义,并且没有用。 它的目的只是演示如何配置JMeter以使用此类单元测试。

本章介绍的内容可能对使用JMeter来测试应用程序的功能和业务逻辑非常有用,并且具有该应用程序提供的所有好处,这也非常有趣,因为它可以将Java语言的所有优点与Java的多用途功能结合起来。 JMeter。

13.记录HTTP测试

现在我们将解释如何配置JMeter来记录HTTP请求。 为了做到这一点,我们需要在计算机上安装Firefox,我使用的是版本32。

  • 获取Firefox以使用JMeter代理

转到Firefox网络设置,然后选择手动代理选项,并将其设置为服务器localhost和端口8080(实际上,这会在您的JMeter配置上加深)。 之后,检查选项“将此代理服务器用于所有协议”。

JMeter firefox配置

  • 首先,我们像以前一样创建一个测试计划。

我们添加一个新的线程组,并为其命名。 我们将线程组配置为具有50个线程,启动周期和循环数等于1时为10秒。

JMeter记录线程组配置

  • 添加HTTP请求默认值。

在我们刚创建的线程组上,添加一个新的Config元素,然后选择“ HTTP Request Defaults”。

JMeter记录HTTP请求默认值

您应在此处输入要测试的服务器名称。

  • 添加录音控制器

现在,我们向工作台添加了一个记录控制器。

选择工作台而不是测试计划,然后添加“测试脚本记录器”类型的“非测试元素”。

JMeter记录工作台测试记录仪

现在,您应该独立于测试计划来独立存储工作台。 保存测试计划不会保存工作台。

如下配置记录器:

JMeter记录工作台测试记录器配置

  • 添加计时器

如果您希望可以在记录器中添加一个计时器(常数),则记录的每个HTTP请求都将使用此计时器。

  • 开始录音

通过单击记录器的启动按钮,您将启动JMeter代理服务器。

JMeter记录开始记录

  • 记录应出现

如果您访问网页以发出示例HTTP请求,例如使用Firefox 访问http://www.oviedin.com (按照本章第一步的说明进行配置后),您将看到不同的内容。条目将显示在测试计划中的“记录控制器”下。

JMeter记录控制器

这些记录实际上是在查询前面提到的网页时完成的HTTP请求。 仅存储在“记录的测试脚本”中配置的过滤器中包含的记录。 它们可以在您的测试计划中重新配置和使用。

14. JMeter插件

高级用户和用例可以使用不同的插件,其中有些需要额外的安装,而有些则不需要。

有很多非常有用的插件,它们允许使用高级选项来解析结果,并使用诸如http://jmeter-plugins.org/wiki/GraphsGeneratorListener/的图表来分析结果。

为了使JMeter与您的持续集成工具连接并直接从CI软件(如Jenkins的“ https://wiki.jenkins-ci.org/display/JENKINS/Performance+Plugin ”)中运行JMeter测试计划,还提供了可用的插件。

正如我所说的那样,插件的数量有所增加,不可能一一列举,因此在尝试自己实现一个插件之前,最好先检查一下互联网上是否有可用的插件。

您也可以为JMeter创建自己的插件,但这超出了本文的范围。

15. JMeter最佳做法

在本文结束之前,我们将写下一些非常有用的技巧和最佳实践:

  • 尽管JMeter UI是用于配置和创建不同测试计划的非常有用且直观的工具,但是经验丰富的用户还是希望使用非GUI模式来执行它们并存储其结果。

您可以通过键入以下内容来执行此操作:

jmeter -n -t test.jmx -l test.jtl.

假设测试是您要执行的测试。 您必须提供存储测试的完整路径。

  • 侦听器可以很好地解析结果,但是它们也会占用大量资源,并且会占用大量内存,因此最好在配置中使用尽可能少的侦听器。 标志-l全部删除它们,建议在不需要侦听器时使用。
  • 在结果树视图中选中“仅查看错误”标志,可能您只对检查测试期间发生的错误感兴趣。
  • 在同一采样器中使用变量和循环,而不是配置仅由它们使用的变量和参数来区分的多个相似样本。
  • 创建Junit测试计划时,建议提供有意义的错误和断言消息,以使JMeter输出尽可能地易于理解,这是在这种情况下完全适用的单元测试的一般建议。
  • 使用Stop (Control + '.') 如果可能,这将立即停止线程。
  • 使用关机(Control + ',') 这要求线程在任何当前工作结束时停止。 其他工具提示可从https://wiki.apache.org/jmeter/JMeterShortcuts获得 。

16.总结

这就是全部。
我们了解了如何安装JMeter以及如何配置它以执行各种类型的测试,例如HTTP请求,针对数据库的测试以及针对Junit的功能测试。 JMeter提供了许多其他类型的测试和功能,但本教程未涵盖。 本教程的目的是对应用程序进行完整描述,并说明如何配置您的第一个测试计划。
我们还解释了JMeter UI的主要部分以及如何使用它,以及JMeter随附的测试计划元素。 在上一章中,我们提到了使用不同的插件扩展JMeter的可能性。 对于有高级需求的经验用户来说,这是非常有趣的一点。

17.下载

可以在以下链接中下载本文中使用的所有JMeter模板,SQL脚本和Java代码: JMeter_Tutorial

18.资源

  • http://jmeter.apache.org/
  • http://jmeter-plugins.org/
  • href =“” http://en.wikipedia.org/wiki/Software_performance_testing
  • http://www.tutorialspoint.com/jmeter/
  • http://jmeter.apache.org/usermanual/get-started.html(第2.4.3节“非指导模式”)
  • https://wiki.apache.org/jmeter/FrontPage

翻译自: https://www.javacodegeeks.com/2014/11/jmeter-tutorial-load-testing.html

jmeter负载测试教程

你可能感兴趣的:(数据库,大数据,python,linux,mysql)