首页 > 其他分享 >【涨薪技术】0到1学会性能测试 —— LR录制回放&事务&检查点

【涨薪技术】0到1学会性能测试 —— LR录制回放&事务&检查点

时间:2023-12-01 15:56:49浏览次数:35  
标签:事务 LoadRunner 录制 涨薪 插入 LR 检查点

前言

上一次推文我们分享了性能测试分类和应用领域,今天带大家学习性能测试工作原理、事务、检查点!后续文章都会系统分享干货,带大家从0到1学会性能测试,另外还有教程等同步资料,文末免费获取~

01、LR工作原理

​通常我们认为LoadRunner是由三部分组成:VuGen、Controller、Analysis

VuGen:录制与增强脚本的地方,即将我们的操作行为变成代码;

Controller:模拟多用户执行脚本,相当于模拟多用户口对服务器进行操作;

Analysis:将运行时的结果保存到EXCEL表中,然后再将数据读取出来,并以视图的方式来显示;

也人会说LoadRunner工作是由4部分组成;

02、录制与回放原理

LoadRunner在录制过程中其实是将所有客户端向服务器发送的请求变成了函数,由函数来代替人向服务器发送请求。

之所以需要在录制时选择协议,是因为LoadRunner一定要能看的懂客户端向服务器所发送的数据内容,如果LoadRunner看不懂客户端向服务器发送的数据,那么LoadRunner就无法生成代码。

而生成的代码所看的内容,其实与抓包所看到的内容是一样的。

所以我们通常说性能测试是基于协议录制,自动化测试是基于对象属性录制。

LoadRunner录制的方式有两种:一是基于HTML录制;二是基于URL录制

HTML模式:基于用户行为录制;

URL录制:将所有的HTTP请求都录制下来; 

03、事务

  • 为什么需要插入事务

正常我们录制好的脚本是不能获取业务的响应时间的,所谓的业务响应简单的来说就是我们一串操作步骤的响应时间。

为了获取这个响应时间我们会在操作前插入开始,操作结束后插入结束事务,通过可以获取业务的响应时间。

  • 如何插入事务

插入事务的方法有两种:

一是:录制过程中插入事务;

二是:录制后插入事务;

一般建议在录制过程中插入事务,因为录制后插入事务,如果对代码不是很熟悉的话,那么很容易把位置插入错了,这样会导到得到的响应时间不对。

插入事务后会生成以下代码:

//开始事务
lr_start_transaction("LOGIN");
.....
//结束事务
lr_end_transaction("LOGIN", LR_AUTO);
当运行开始事务时,loadrunner会计时,运行到结束事务时loadrunner也会计时
将结束事务时的计时减去开始事务的计时,所得到的时间差即为事务的响应时间。
其实就是计算开始事务到结束事务这段请求所消耗的时间
  • 事务的结束状态

事务的结束状态有四种:LR_AUTO、LR_PASS、LR_FAIL、LR_STOP

LR_AUTO:LoadRunner自动判断事务的结束状态

LR_PASS:运行结果为通过状态

LR_FAIL:运行结果为失败状态

LR_STOP:运行结果为停止状态

之所以结束事务有结束状态的要求,是因为通过结束状态可以来确定事务是否成功,即业务是否成功。最后可以计算出业务成功率。

那么如何确定事务的结束状态呢?正常应该是先做检查点,通过检查点的结果来判断业务是否成功。

04、检查点

  • 如何插入检查点

插入检查点的步骤如下:

1.将代码切换为tree模式,在tree模式下,显示请求的信息有两种方式:

一是:html viewer;

二是:httpviewer

2.找到需要验证的页面

3.选择我们需要检查的内容,单击右键,选择“add text check”

4.在弹出的find text对话框中,输入相关信息

  • 如何通过检查点判断事务的结束状态

通过检查来判断被检查的对象出现的次数,如果出的次数大于说明,至少找到一次,则说明业务是成功的,否则业务为失败。

if(atoi(lr_eval_string("{num}")) > 0)
{
lr_end_transaction("LOGIN", LR_PASS);
}
else
{
lr_end_transaction("LOGIN", LR_FAIL);
}
  • 检查点函数
检查点函数语法:
int web_reg_find( const char *attribute_list, LAST );
参数说明:
Text:表示需要查找的内容;
Search:表示所查找的内容所出现的位置,在哪个部分去查找我们要的内容。有三个选项:Body、
Headers、All,一般情况都是在Body,默认选项为Body。
SaveCount:将匹配到的次数保存在这个变量中。

最后如果你想学习软件测试和需要软件测试资料,欢迎加入笔者的交流群:320231853,里面可以免费领取软件测试+自动化测试资料+软件测试面试宝典+简历模版+实战项目+面试刷题工具和大佬答疑解惑,我们一起交流一起学习!

搜索

复制

标签:事务,LoadRunner,录制,涨薪,插入,LR,检查点
From: https://www.cnblogs.com/nhb1234/p/17869885.html

相关文章

  • 通过.NET Core+Vue3 实现SignalR即时通讯功能
    .NETCore和Vue3结合使用SignalR可以实现强大的实时通讯功能,允许实时双向通信。在这个示例中,我们将详细说明如何创建一个简单的聊天应用程序,演示如何使用.NETCoreSignalR后端和Vue3前端来实现实时通讯功能。步骤1:准备工作确保你已经安装了以下工具和环境:.NETCore......
  • XmlRPC入门_组合类型操作
    1、数组操作#include<iostream>#include<winsock2.h>#include<windows.h>#include<xmlrpc-c/base.hpp>#include<xmlrpc-c/registry.hpp>#include<xmlrpc-c/server_abyss.hpp>#include<direct.h>#include<stdio.h&......
  • XmlRPC入门_基本类型操作
    #include<iostream>#include<winsock2.h>#include<windows.h>#include<xmlrpc-c/base.hpp>#include<xmlrpc-c/registry.hpp>#include<xmlrpc-c/server_abyss.hpp>#include<direct.h>#include<stdio.h>#inc......
  • XmlRPC入门_形参定义
    形参类型的定义略Thestringlookssomethinglikethisexample:i:iii,s:.Itisalistofsignaturestrings,separatedbycommas.Intheexample,therearetwosignatures:i:iiis:Eachsignaturestringdescribesoneformofcallingthemethod.Asignatures......
  • 用C#实现的几种常用数据校验方法整理(CRC校验;LRC校验;BCC校验;累加和校验)
    CRC即循环冗余校验码(CyclicRedundancyCheck):是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完......
  • Requirement already satisfied解决办法
    python正常安装其他库后。pipinstallxlwings提示以下信息。Requirementalreadysatisfied:xlwingsinc:\users\zheng\appdata\local\programs\python\python38\lib\site-packages(0.30.12)Requirementalreadysatisfied:pywin32>=224inc:\users\zheng\appdat......
  • idea报错:XXX already exist in project. Please, specify another name.
    问题:idea报错:XXXalreadyexistinproject.Please,specifyanothername.并且左侧目录中并没有看见同名存在文件解决方法:1.打开File->ProjectStructure2.点击Modules->找到报错说存在的模块->点击减号删除->Apply->OK反思问题为什么存在应该是我在系统文件夹中之......
  • Walrus 0.4发布:单一配置、多态运行,体验下一代应用交付模型
    今天,我们高兴地宣布云原生统一应用平台Walrus0.4正式发布,这是一个里程碑式的版本更新。新版本采用了全新的应用模型——仅需进行单一配置,即可在多种模态的基础设施及环境中运行包括应用服务及周边依赖资源在内的完整应用系统。“Youbuildit,yourunit”在这一版本中成为现......
  • LR分析表语法分析
     一、实验目的1、掌握LR法进行语法分析的原理2、掌握语法分析器的设计与调试二、实验原理与要求1、原理:LR分析表分析是一种自底向上的语法分析。LR分析表内包含几种操作:①跳转;②归约;③接受。通过构造项目集簇的状态转换表实现不同状态的跳转或归约,最后归约为文法的开始符号,......
  • Walrus 入门教程:如何创建模板以沉淀可复用的团队最佳实践
    模板是Walrus的核心功能之一,模板创建完成后用户可以重复使用,并在使用过程中逐渐沉淀研发和运维团队的最佳实践,进一步简化服务及资源的部署。用户可以使用HCL语言自定义创建模板,也可以一键复用Terraform社区中上万个成熟的Module。在本文中,我们将以阿里云EC2为例,介绍如何......