zoukankan      html  css  js  c++  java
  • Jmeter学习笔记

    Jmeter学习笔记

    线程组

    线程组的作用

    线程组的作用模拟多个访问对象,对系统可以进行压力测试,

    线程组里的几个参数

    • 线程组名称:可以随意取,我们保持创建是自动分配的名称
    • 线程组注释:随意。
    • 在取样器错误后要执行的动作:我们选择继续,错误之后依然继续执行,继续执行测试计划。
    • 线程组的线程数:一般我们用来表示多少个用户,即我们测试时的用户数量。
    • Ramp-up Period(in Seconds):表示每个用户启动的延迟时间,设为1秒,表示系统将在1秒结束前启动我设置的1000个用户,如果设置为1000秒,那么系统将会在1000秒结束前启动这1000个用户,开始用户的延迟为1秒, 如果我设置为0秒,则表示立即启动所有用户。
    • 循环次数:如果你要限定循环次数为10次的话,可以取消永远的那个勾,然后在后面的文本框里面填写10;在这里我们勾上永远,表示如果不停止或者限定时间将会一直执行下去, 是为了方便调度器的调用。
    • 调度器的配置:我们勾选调度器时,将会出现这个面板
    • 启动时间:表示我们脚本开始启动的时间,当你不想立即启动脚本测试,但是启动脚本的时间不会再电脑旁的时候,你可以设定一个启动的时间,然后再运行那里点击启动,系统将不会立即运行,而是会等到你填写的时间才开始运行。
    • 结束时间:与启动时间对应,表示脚本结束运行的时间。
    • 持续时间:表示脚本持续运行的时间,以秒为单位,比如如果你要让用户持续不断登录1个小时,你可以在文本框中填写3600。如果在1小时以内,结束时间已经到达,它将会覆盖结束时间,继续执行。
    • 启动延迟:表示脚本延迟启动的时间,在点击启动后,如果启动时间已经到达,但是还没有到启动延迟的时间,那么,启动延迟将会覆盖启动时间,等到启动延迟的时间到达后,再运行系统。

    HTTP请求的默认设置

    • 这项功能就是设置http请求时的一些默认参数,比如请求域名或IP,端口号,页面请求路径等公共参数参数。

    HTTP请求

    几个重要参数

    • HTTP请求的名称:可以随意取,我们可以根据录制脚本的路径来命名
    • HTTP请求的注释:可以对该界面做一个简单介绍
    • HTTP请求的服务器名称或IP:即我们的服务器或者IP的地址,我因为是在本机上的项目,故填写localhost,可以填写127.0.0.1。
    • HTTP请求的端口号:我用的是tomcat,自己设置的端口号为8086(tomcat默认为8080)
    • 后面的超时定义可以不用填写。
    • Implementation:这里我们录制时默认填写为JAVA
    • 协议填写为:http
    • 方法为:GET
    • Content encoding:编码可以不用填写
    • 路径:即页面的路径;下面的重定向等选择可以根据需要勾选,这里我们保持录制不修改。
    • Parameters参数:即跟着路径一起发送的参数及文件

    断言验证

    几个重要参数

    • 断言名称:随意
    • 断言注释:随意
    • Apply to:选择默认值
    • 要测试的响应字段:这里我们选择响应的文本,即返回的页面信息
    • 模式匹配规则:这里我们选择包括,即响应的文本是否包括我们验证的信息
    • 要测试的模式:开发者名称,即我们需要验证,开发者名称是否在响应文本中存在,也可以添加更多的字段来验证。

    聚合报告

    参数含义

    字段 含义
    Label 每一个JMeter的element都有一个Name属性,这里显示的就是element属性的值。
    Samples 表示这次测试中一共发送了多少个请求,
    Average 平均相应时间
    Median 中位数,也就是说50%用户的响应时间。
    90%Line 90%用户的响应时间,
    Min 最小响应时间
    Max 最大响应时间
    Error% 本次测试中出现错误请求的数量
    Throughput 吞吐量,默认情况下表示美妙完成的请求数,
    KB/sec 每秒从服务器端收到的数据量,

    几个注意点

    • 测试计划下的多个线程组是并发执行的。
    • 一个采集器(sampler),通常进行以下三部分:1,向服务器发送请求。2,记录服务器的响应时间。3,j记录相应的时间信息。
    • QPS : Query Per Second 每秒查询率。是一台查询服务器每秒能够处理的查询次数。在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。

    元件的作用域与执行顺序

    元件作用域

    配置元件(config elements )

    元件会影响其作用范围内的所有元件。
    

    前置处理程序(Per-processors)

    元件在其作用范围内的每一个sampler元件之前执行。
    

    定时器(timers )

    元件对其作用范围内的每一个sampler 有效
    

    后置处理程序(Post-processors)

    元件在其作用范围内的每一个sampler元件之后执行。
    

    断言(Assertions)

    元件对其作用范围内的每一个sampler 元件执行后的结果执行校验。
    

    监听器(Listeners)

    元件收集其作用范围的每一个sampler元件的信息并呈现。
    
    • 总而言之就是在Jmeter中存在父子节点关系的就是作用域的关系,就是说父节点的作用域包括子节点。
    根据作用域原则,这些元件的作用域分别为:
    • HTTP请求 、FTP请求 、TCP取样器、 JDBC Request 元件没有作用域名概念

    • 循环控制器 的作用域为 FTP请求 、TCP取样器和 随即控制器

    • 固定定时器作用于 HTTP请求 , Uniform Random Timer 作用于所有取样器

    • 响应断言作用于JDBC Request , XML断言作用于FTP请求 、TCP取样和JDBC Request 。

    • 图形结果作用于FTP请求 、TCP取样和JDBC Request ,聚合报告作用于作用于所有取样器。

    元件执行顺序

    在同一作用域名范围内,测试计划中的元件按照如下顺序执行。

    • 配置元件(config elements )

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

    • 定时器(timers )

    • 取样器(Sampler)

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

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

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

  • 相关阅读:
    request Dispatch
    xmlHTTPRequest
    java 文件上传
    文件上传(2)
    文件上传
    Tomcat 加入windows 服务自启动设置
    windows下配置两个或多个Tomcat启动的方法
    HibernateProxy异常处理 java.lang.UnsupportedOperationException: Attempted to serialize java.lang.Class: org.hibernate.proxy.HibernateProxy. Forgot to register a type adapter?
    checkbox遍历操作, 提交所有选中项的值
    tomcat结合nginx使用 基础教程
  • 原文地址:https://www.cnblogs.com/haifeiWu/p/9079595.html
Copyright © 2011-2022 走看看