LoadRunner学习:RuntimeSetting、参数化、关联、(unfinished

2024-03-12 09:44

本文主要是介绍LoadRunner学习:RuntimeSetting、参数化、关联、(unfinished,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

LoadRunner RuntimeSetting

运行时设置
在Vuser中设置Run-time Settings
在这里插入图片描述

  • RunLogic:运行逻辑,决定了脚本真正执行逻辑, Init和End部分代码只能执行一次。决定脚本真正执行逻辑的意思是,在Run中的代码和Number of Iteration决定了真正运行的代码和迭代次数。在properities中可以选择Run中Action是顺序执行还是随机执行(如果随机执行可以自行配置每个Action中的概率。
    在这里插入图片描述
    讲讲insert block 块技术,可以单独控制每个块的迭代次数。下述示例图中即为Block1中Action1执行2次,Block0中Action2执行1次,整个Run再执行2次
    在这里插入图片描述
  • Pacing(步长):迭代间规则
    默认:as soon as…: 每次迭代无间隔时间
    After…:上次迭代结束后,再下次迭代开始之前,会有个等待时间
    at…从上次迭代开始到本次迭代开始的时间

为什么需要设置pacing?⭐️

评价一个系统的性能,需要从两个视角去看待:客户端视角和服务器视角即用户视角和系统视角。
有下述性能需求:“要去系统的事务处理能力达到100个/秒”
当LoadRunner模拟客户端向服务器发出请求,必须等待服务器对这个请求做出响应,并且收到响应之后,才会重新发出新的请求,而服务器对请求的处理是需要一个时间的,
即对每个虚拟用户来说,它对服务器发出请求的频率将依赖于服务器对这个请求的处理时间,而处理时间是不可控的。如果我们想要在测试过程中维持一个稳定的每秒请求数RPS,只有一个方法,就是通过增加并发用户数的数量来达到这个目的。

而在测试中,通常会对场景设置一个持续运行时间(多次迭代),通过多个事务的取样平均值来保证测试结果的准确性,即测试场景是以迭代的方式进行的。

如果不设置pacing,那么对于每个虚拟用户来说,每一个发到服务器的请求得到响应之后,就马上发送下一次请求。而LR中当客户将请求发出去之后,就开始计算响应时间,一直到收到响应。
这时,如果服务器处于忙碌状态,那么心情求就会驻留在服务器的线程中,并没有对服务器端产生真正的负载,这样这个计时就会变长,失去真正意义。

为了解决这个问题,我们可以在每两个请求之间插入一个间隔时间,降低单个用户启动请求的速度。间歇会减少请求在线程中驻留的时间,从而提供更符合现实的响应时间。

虽然性能测试通常从客户端活动的角度定义,但是应该以服务器为中心的视角看待。因此需要强调做性能测试的时候要保证一个独立、干净的测试环境,以及一个稳定的网络。要评价软件系统真正的性能,所以必须排除其他一切因素对系统性能造成的影响。

  • think time:思考时间,模拟用户的等待时间

在这里插入图片描述
假设每个做完整个操作需要5s,做完之后停顿5s,思考如果要达到每分钟有6000个在线用户,共10台服务器,需要多少个虚拟用户?
-----> 一个用户操作加等待需要10s,即一个用户一分钟可以迭代6次,一次迭代对应两次web_url()请求,即一分钟12次请求
那么6000/12 = 500; 500/10 = 50个用户。

  • 日志
  • 附加参数:自定义一些参数,再在脚本中传值
    如下为设置和使用示例:
    在这里插入图片描述

在这里插入图片描述

  • 线程模式/进程模式
  • 模拟网速

参数化与其他脚本增强技术

  • 参数化:实现不同用户的不同请求,逻辑相同,数据不同的操作。
  • 关联:用来解决请求之间的依赖
  • 事务:用来度量操作的响应时间以及最终TPS
  • 检查点:用来判断脚本是否成功
  • 思考时间:模拟用户延迟,调节负载压力
  • 集合点:模拟用户并发,是用来实现严格的并发

select next row:

  • 顺序取值
  • 随机取值
  • 唯一取值

update:

  • 每次迭代:
  • 每次出现:
  • 仅一次:

在这里插入图片描述

关联技术

解决请求之间的依赖。
在测试工具中,关联就是把某些写死的数据编程来自服务器的、动态的、每次不一样的数据 动态保存下来,然后在调用的地方调用即可
需要做关联处理的特征:

  • 关联数据一定是来源于服务器的响应
  • 关联数据一定要在后面的请求中被用到
  • 关联数据一定是动态变化的

在LR中,关联的方式分为自动和手动两种

  • 自动:
    • 录制关联(没用
    • 回放管理:理论上同样是对比法(慎用 成功率低
  • 手动:根据关联产生的原因,关联数据特征,以及业务熟悉程度来完成先存侯勇的操作
    • 对比法
    • 追溯法:依据关联的特征、数据特征逆向完成

手动关联的步骤:
1 找出出错的请求:
2 设置关联

todotodo


手动编写脚本 占坑
场景与结果分析 占坑

jmeter复习 占坑

这篇关于LoadRunner学习:RuntimeSetting、参数化、关联、(unfinished的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/800864

相关文章

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

SQL表间关联查询实例详解

《SQL表间关联查询实例详解》本文主要讲解SQL语句中常用的表间关联查询方式,包括:左连接(leftjoin)、右连接(rightjoin)、全连接(fulljoin)、内连接(innerjoin)、... 目录简介样例准备左外连接右外连接全外连接内连接交叉连接自然连接简介本文主要讲解SQL语句中常用的表

SpringMVC获取请求参数的方法

《SpringMVC获取请求参数的方法》:本文主要介绍SpringMVC获取请求参数的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下... 目录1、通过ServletAPI获取2、通过控制器方法的形参获取请求参数3、@RequestParam4、@

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元

SpringBoot利用@Validated注解优雅实现参数校验

《SpringBoot利用@Validated注解优雅实现参数校验》在开发Web应用时,用户输入的合法性校验是保障系统稳定性的基础,​SpringBoot的@Validated注解提供了一种更优雅的解... 目录​一、为什么需要参数校验二、Validated 的核心用法​1. 基础校验2. php分组校验3

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

基于@RequestParam注解之Spring MVC参数绑定的利器

《基于@RequestParam注解之SpringMVC参数绑定的利器》:本文主要介绍基于@RequestParam注解之SpringMVC参数绑定的利器,具有很好的参考价值,希望对大家有所帮助... 目录@RequestParam注解:Spring MVC参数绑定的利器什么是@RequestParam?@

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

mysql关联查询速度慢的问题及解决

《mysql关联查询速度慢的问题及解决》:本文主要介绍mysql关联查询速度慢的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql关联查询速度慢1. 记录原因1.1 在一次线上的服务中1.2 最终发现2. 解决方案3. 具体操作总结mysql