热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

工具的使用_JMeter测试工具的使用

本文由编程笔记#小编为大家整理,主要介绍了JMeter测试工具的使用相关的知识,希望对你有一定的参考价值。一:JMeter介绍:
本文由编程笔记#小编为大家整理,主要介绍了JMeter测试工具的使用相关的知识,希望对你有一定的参考价值。


一:JMeter介绍:

      Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

二:元件的作用域与执行顺序:

     1:元件的作用域: JMeter中共有8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(config elements 、timers 、post-processors、                                                    assertions、listeners、)需要与取样器(sampler)等元件交互。

          配置元件(config elements  :元件会影响其作用范围内的所有元件。

          前置处理程序(Per-processors):元件在其作用范围内的每一个sampler元件之前执行。

          定时器(timers ):元件对其作用范围内的每一个sampler 有效

          后置处理程序(Post-processors):元件在其作用范围内的每一个sampler元件之后执行。

          断言(Assertions):元件对其作用范围内的每一个sampler 元件执行后的结果执行校验。

         监听器(Listeners):元件收集其作用范围的每一个sampler元件的信息并呈现。

         在jmeter中,元件的作用域是靠测试计划的的树型结构中元件的父子关系来确定的,作用域的原则是:



  •  取样器(sampler)元件不和其它元件相互作用,因此不存在作用域的问题。

  •  逻辑控制器(Logic Controller)元件只对其子节点中的取样器 和 逻辑控制器作用。

  •  除取样器 和逻辑控制器 元件外,其他6类元件,如果是某个sampler的子节点,则该元件公对其父子节点起作用。

  •  除取样器和逻辑控制器元件外的其他6类元件,如果其父节点不是sampler ,则其作用域是该元件父节点下的其他所有后代节点(包括子节点,子节点的子节点等)。

     2.元件的执行顺序

           了解了元件有作用域之后,来看看元件的执行顺序,元件执行顺序的规则很简单,在同一作用域名范围内,测试计划中的元件按照如下顺序执行。

       (1)配置元件(config elements )

       (2)前置处理程序(Per-processors)

      (3)定时器(timers )

      (4)取样器(Sampler)

      (5)后置处理程序(Post-processors) (除非Sampler 得到的返回结果为空)。

      (6)断言(Assertions)(除非Sampler 得到的返回结果为空)。

      (7)监听器(Listeners)(除非Sampler 得到的返回结果为空)。

       关于执行顺序,有三点需要注意:

            *  前置处理器、后置处理器和断言等元件只能对 取样器作用,因此,如果在它们的作用域内没有任何取样器,则不会被执行。

            *  如果在同一作用域范围内有多个同一类型的元件,则这些元件按照它们在测试计划中的上下顺序一次执行。

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

三:具体使用

技术分享图片

 

 技术分享图片

若参数是json格式,一定要加HTTP信息头管理器 Content-Type    "application/json"

技术分享图片

如果参数非常长,选择post请求

技术分享图片

若参数需要处理后重新作为参数(当前请求)========前置处理器---BeanShell  PreProcessor

 技术分享图片

若是想让上一个请求的返回直接作为下一个请求的参数=====  若需要上一个请求的多个返回值,就设置多个正则表达式提取器

技术分享图片下一个请求的参数设置中,取值

 

技术分享图片

 

 技术分享图片

若是想让上一个请求的返回直处理过后再接作为下一个请求的参数=====再上面的基础上加上后置处理器-----BeanShellPostProcessor

技术分享图片

脚本里面:String jsOnContent=prev.getResponseDataAsString();  //获取当前请求的返回值  ,不需要其他的jar包

技术分享图片给下一个请求赋值。

技术分享图片下一个请求取值

 

 在BeanShellPostProcessor写脚本的注意点:

 1:当是自己写的java类,类里面需要的jar包和导出的java类的jar包都要放在:D:apache-jmeter-3.3libext文件夹下面 ,并点击测试计划,导入包。

 2:运行脚本在没有语法出错的情况下报错,多半是引包的问题


推荐阅读
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
  • 本文详细介绍了如何在Linux系统(以CentOS为例)上彻底卸载Zimbra邮件系统,包括停止服务、删除文件和用户等步骤。 ... [详细]
  • Spring Boot 中配置全局文件上传路径并实现文件上传功能
    本文介绍如何在 Spring Boot 项目中配置全局文件上传路径,并通过读取配置项实现文件上传功能。通过这种方式,可以更好地管理和维护文件路径。 ... [详细]
  • Linux CentOS 7 安装PostgreSQL 9.5.17 (源码编译)
    近日需要将PostgreSQL数据库从Windows中迁移到Linux中,LinuxCentOS7安装PostgreSQL9.5.17安装过程特此记录。安装环境&#x ... [详细]
  • Ext JS MVC系列一:环境搭建与框架概览
    本文主要介绍了如何在项目中使用Ext JS 4作为前端框架,并详细讲解了Ext JS 4的MVC开发模式。文章将从项目目录结构、相关CSS和JS文件的引用以及MVC框架的整体认识三个方面进行总结。 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • CentOS 7 中 iptables 过滤表实例与 NAT 表应用详解
    在 CentOS 7 系统中,iptables 的过滤表和 NAT 表具有重要的应用价值。本文通过具体实例详细介绍了如何配置 iptables 的过滤表,包括编写脚本文件 `/usr/local/sbin/iptables.sh`,并使用 `iptables -F` 清空现有规则。此外,还深入探讨了 NAT 表的配置方法,帮助读者更好地理解和应用这些网络防火墙技术。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
author-avatar
mobiledu2502921883
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有