loadrunner Lr_类函数之 lr_save_searched_string()

lr_save_searched_string()

搜索缓冲区中出现的字符串,并将该字符串后的缓冲区的一部分保存到参数。
int lr_save_searched_string(const char * buffer,long buf_size,unsigned int occurrence,const char *search_string,int offset,unsigned int string_len,const char *parm_name);

参数说明:
buffer:STRING或CARRAY缓冲区,其中的部分内容要保存。
buf_size:缓冲区大小。
occurrence:search_string的出现次数(从0开始计数)。例如,如果search_string发生三次,而您想要第二次发生,则将occurrence设置为1。
search_string:要在缓冲区中搜索的字符串。
offset:在搜索字符串发生结束后要跳过的字符数。
string_len:要保存的字符数。
parm_name:在后续lr语句中用于引用所保存信息的参数名。名称用双引号括起来。



lr_save_searched_string函数在字符串或字符数组缓冲区中搜索字符串search_string,并找到search_string的第n次出现,其中n是出现次数加1.要保存的子字符串在search_string的第n次出现结束后的偏移量开始,有长度string_len
例如:
char cBuff [] =“abc Emma Woodhouse abc Elizabeth Bennet abc William Price”;
lr_save_searched_string(cBuff,strlen(cBuff),
        2,“a​​bc”,//搜索第三次出现的“abc”
        1,//跳过“abc”后的空格
        4,//放下四个字符...
        “Fannys_brother”); // ...在参数Fannys_brother中。
调用后,参数Fannys_brother的内容为“Will”。
search_string不能包含空字符,但缓冲区可以包含空字符。
使用lr_save_string函数从字符数组保存字符串。仅当需要相对于字符串出现保存字符数组的一部分时,才使用lr_save_searched_string。

 

示例:lr_save_searched_string
在以下示例中,证书保存到参数以供将来使用。 lr_save_searched_string函数将lrt_tpcal返回的“olen”缓冲区的16个字节保存到参数cert1。在缓冲区中保存的字符串位置超过字符串“SCertRep”的第一次出现的9个字节。

在“ScertRep”字符串之前通常有标题信息,它们的长度可以变化,这取决于记录环境。在这种情况下,lr_save_searched_string函数很有用,因为无论标头长度如何,证书总是超过此字符串九个字节。
/ *
请求CARRAY缓冲区1 * /
lrt_memcpy
data_0sbuf_141;
lrt_display_buffer
(“sbuf_1”,data_04141;
data_1 = lrt_tpalloc
(“CARRAY”,“”,8192;
tpresult_int = lrt_tpcall
(“GetCertificate”,
    data_0

    
参照图41
    
data_1
    
olen
    TPSIGRSTRT
;
/ *
回复CARRAY缓冲区1 * /
lrt_display_buffer
(“rbuf_1”,data_1olen51;
lrt_abort_on_error
();
lr_save_searched_string
data_1olen0,“SCertRep”,916,“cert1”);

序号内容详情内容第1讲基于LoadRunner性能测试实战介绍这门系列的课程内容第2讲LoadRunner组成LoadRunner有三大组成部分:Create/Edit Scripts、Run Load Tests、Analyze Test Results第3讲LoadRunner录制脚本介绍如何使用LoadRunner来录制脚本第4讲LoadRunner脚本解析如何看明白录制好的脚本、录制好的脚本是什么意思第5讲讲讲HTML和URL录制方式的区别介绍LoadRunner的两种录制方式及区别第6讲看看LoadRunner脚本与Jmeter脚本区别分析LoadRunner脚本与Jmeter脚本的区别,及工作原理第7讲LoadRunner是如何来获取响应时间的LoadRunner是通过事务来确定响应时间的,由开始事务和结束事务来获取响应时间第8讲性能指标中是如何确定业务成功率的通过事务的结束状态来确定业务成功率第9讲事务结束状态是如何确定的事务结束状态有四种,应该如何确定事务的结束状态第10讲如何插入检查点介绍如何在树模式下插入检查点第11讲检查点检查了谁的内容LoadRunner检查的内容主要是来着于response body中的值第12讲检查点函数web_reg_find使用介绍web_reg_find函数的使用第13讲通过检查点来判断事务的结束状态通过检查点函数中的SaveCount来判断业务是否成功第14讲看看加入购物车是如何判断业务是否成功的通过加入购物车实例来实验检查点判断业务是否成功第15讲为什么性能也要“DDT数据驱动”一是业务强制要求;二是为了更好的模拟真实的环境第16讲一般什么情况下需要参数化一般四种情况下需要参数化:唯一性约束、日期约束、缓存约束、数据约束第17讲参数化的步骤介绍如何进行参数化第18讲参数化策略设置选择下一行数据、如何更新数据等第19讲数据库如何参数化介绍数据库参数化步骤第20讲其它参数化方式唯一数、随便数等参数化方式第21讲性能测试环境下数据应该如何准备全面性、数量足够、无约束、安全性等第22讲生产环境性能测试时数据如何处理影响数据库、数据标色等第23讲什么情况下需求关联介绍什么情况下需求关联第24讲关联的工作原理介绍工作是如何工作的,工作的原理是什么第25讲关联的方式介绍关联的两种方式:一是比较脚本法找到需要关联的内容;二是直接在响应报文中进行关联第26讲关联函数解析介绍web_reg_save_param函数的使用,以及相关参数说明第27讲关联实例通过一个实例来介绍关联函数的使用第28讲关联与参数的区别介绍关联与参数化的区别第29讲场景策略介绍场景设置的策略第30讲如何确定并发用户数介绍如何去确定需要的并发用户数第31讲如何确定百分比模型如何评估百分比模型第32讲负载机评估及负载均衡如何设置负载机及如何设置负载机负载均衡第33讲RTS设置设置控制器运行时的相关参数第34讲监控场景中运行的数据如何监控场景运行时的相关数据第35讲场景在运行过程中出错如何定位问题分析output中的error信息,进而帮助定位问题第36讲集合点工作原理及超时策略介绍集合点工作原理及超时策略设置第37讲集合点与事务之间的关系介绍集点与事务的事务第38讲场景运行时的视图数据分析如何分析场景运行时的视图数据第39讲如何测试出最大的TPS如何测试出最大TPS,以及TPS曲线第40讲如果TPS上不去,应该如何分析面试的常见问题是如果在压测试时,TPS上不去,一般有哪些原因导致第41讲分析器的中概要数据信息分析器中的概要数据分析第42讲分析器中常见的视图介绍分析器中的常见的视图意义第43讲分析业务的成功率通过分析器分析业务成功率第44讲合并视图使用合并视图技术来分析两个视图的逻辑关系第45讲页面细分使用页面细分技术来分析每个事务中每个HTTP请求消耗的时间第46讲钻取技术使用钻取技术可以更深入的分析性的相关原因第47讲关联视图使用关联技术分析其它的视图对响应时间的影响第48讲常用函数strtok语法介绍常用函数strtok的语法第49讲常用函数strtok实例以加入购物车为例介绍strtok的使用第50讲常用函数lr_save_var使用介绍常用函数lr_save_var的使用第51讲常用函数strcmp使用介绍常用函数strcmp的使用第52讲常用函数fopen使用介绍常用函数fopen的使用第53讲常用函数fread使用介绍常用函数fread的使用第54讲function封装介绍function封装的步骤第55讲全链路开发实例-登录介绍如何开发全链路开发实例-登录第56讲全链路开发实例-搜索商品介绍如何开发全链路开发实例-搜索商品第57讲全链路开发实例-拉取商品详情页介绍如何开发全链路开发实例-拉取商品详情页第58讲全链路开发实例-加入购物车介绍如何开发全链路开发实例-加入购物车第59讲全链路开发实例-结算介绍如何开发全链路开发实例-结算第60讲全链路开发脚本优化通过RTS来优化全链路测试脚本第61讲部署性能测试环境--基于K8S电商平台介绍如何搭建一个K8S的电商平台环境第62讲搭建prometheus+grafana监控K8S平台(一)安装node_export第63讲搭建prometheus+grafana监控K8S平台(二)安装prometheus server第64讲搭建prometheus+grafana监控K8S平台(三)部署grafana第65讲K8S监控视图解析介绍K8S监控中每个视图的含义第66讲使用LoadRunner压测试K8S通过LoadRunner压测,来分析K8S性能第67讲如何确定响应时间是否达标一般响应时间在多少是达标的第68讲平均事务响应时间达标就可以了吗?平均事务响应时间达标就可以了吗?平均事务响应的毛刺呢?也就是平均事务时间的波动第69讲什么是TPS,TPS表示什么什么是TPS,TPS表示什么,代表性能什么指标第70讲TPS曲线趋势TPS的趋势图是什么样子的,与哪些视图成正比第71讲TPS波动TPS波动表示什么,TPS允许的波动范围第72讲什么是QPS,QPS与TPS的关系什么是QPS,QPS与TPS的关系第73讲性能指标业务正确率如何分分析业务正确率第74讲CPU工作原理CPU是如何工作的第75讲CPU使用率是什么CPU使用率是什么意思第76讲如何分析CPU的性能指标CPU指标监控和分析第77讲Memory工作原理Memory是如何工作的第78讲如何分析Memory的性能指标Memory性能指标如何分析和定位第79讲如何分析磁盘的性能指标分析磁盘的性能指标第80讲Nginx工作原理介绍nginx工作原理,进程运行模式第81讲Nginx配置上下文介绍nginx配置上下文的信息第82讲使用Prometheus+grafana监控nginx介绍如何使用prometheus+grafana监控nginx第83讲Prometheus+grafana监控nginx视图解析使用Prometheus+grafana监控nginx视图解析第84讲Prometheus+grafana分析nginx视图使用Prometheus+grafana监控nginx并分析相关数据第85讲nginx反向代理工作原理介绍nginx反向代理的工作原理第86讲nginx反向代理算法介绍nginx反向代理的算法第87讲nginx为何需要进行压缩介绍服务器端为何需要压缩第88讲nginx压缩与解压介绍nginx压缩配置和解压配置第89讲nginx为何需要设置缓存介绍服务器端为何配置缓存第90讲nginx如何配置缓存介绍服务器端如何配置缓存第91讲使用Prometheus+grafana监控mysql介绍如何使用Prometheus+grafana来监控mysql服务器第92讲Prometheus+grafana监控mysql视图解析Prometheus+grafana监控mysql视图解析第93讲Prometheus+grafana分析mysql视图对mysql进行压测,并监控与分析第94讲设置监控慢查询介绍如何监控慢查询第95讲慢查询分析介绍如何分析慢查询第96讲索引工作原理介绍索引工作原理第97讲索引常用策略介绍索引常用策略第98讲EXPLAIN语法介绍EXPLAIN语法第99讲EXPLAIN Output Columns输出介绍EXPLAIN Output Columns输出第100讲EXPLAIN Join Types连接方式介绍 EXPLAIN Join Types连接方式第101讲EXPLAIN Extra Information额外信息介绍EXPLAIN Extra Information额外信息第102讲profile语法介绍profile语法第103讲使用profile分析查询时间使用profile分析查询所消耗的时间
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值