loadrunner压力测试学习笔记

loadrunner压力测试学习笔记loadrunner学习过程以下仅记录自己的学习过程,有不对之处欢迎指出。压力测试步骤:1.分析需求2.准备脚本3.调试脚本2.准备脚本:可以录制也可以自己写,录制的话先按需求分好每一个action,录制时先切换到当前action,再进行录制。例如:创建一个新的脚本,在action里添加新的action,open_index,submit_login,sign_off(loadrunner自带案例的登录过程)3.调试脚本:(1)回放:脚本准备好后进行回放,需要参数的提前准备好参数,比如注册

大家好,又见面了,我是你们的朋友全栈君。

loadrunner学习过程
以下仅记录自己的学习过程,有不对之处欢迎指出。脚本中提到的链接是本人学习时查阅到的有帮助的文章,如果对原作者有影响,可以联系我做修改。
压力测试步骤:
1.分析需求
2.准备脚本
3.调试脚本

1.分析需求
(1)计算单次业务所需时间
用loadrunner录制并调试好脚本后给需要计算的业务加上事务(未调试成功的脚本不能用,因为业务可能不成功,计算出的时间不准确),设置合理的think time(一般是5秒,或者根据自己的需求不需要设置think time)运行一次,查看事务用了多长时间。
2.准备脚本:可以录制也可以自己写,录制的话先按需求分好每一个action,录制时先切换到当前action,再进行录制。例如:创建一个新的脚本,在action里添加新的action,open_index,submit_login,sign_off(loadrunner自带案例的登录过程)
在这里插入图片描述

3.调试脚本:
(1)回放:脚本准备好后进行回放,需要参数的提前准备好参数,比如注册功能。回放时打开日志,run-time-settin—always sand messages—extended log—parameter substitution,调试结束后可关闭日志或修改成错误时发送。回放结束后在tasks—verify replay—visual test results查看回放结果,打开每个step查看回放是否成功,如下图所示。不能看replay status的返回结果,有时会显示No errors detected,但不代表回放成功了。
在这里插入图片描述
(2)关联:
先看一下为什么要进行关联以及关联的本质
以下这段有参考文章:https://blog.csdn.net/qq_34659777/article/details/81947433
为什么要进行关联?
在录制生成的脚本中,录制到了一些服务器分配的数据,比如sessionID,回放时脚本用的是录制的数据,即旧的sessionID,但回放请求服务器时,服务器重新分配了新的sessionID,回放用的sessionID与服务器新分配的不一致,就会导致请求失败。这时候就需要把服务器分配的新的sessionID存到参数中,再次使用时直接从参数中读取。关联不止适用于获取sessionID,还可以用来获取其他浏览器分配的数据。
关联的本质
关联就是用函数获取服务器分配的数据,存储到参数中,需要使用时从参数中取出,从而保证使用的是服务器最新分配的数据。
其实关联也属于一种特殊的参数化,只是与一般的参数化有些不同。一般的参数化的参数来源于一个文件、一个定义的table、通过sql写的一个结果集等,但关联所获得的参数是服务器响应请求所返回的一个符合条件的、动态的值。
脚本是否需要关联以及关联的位置可以参考如下链接:
https://blog.csdn.net/u011446864/article/details/38395975

以下是关联的步骤:
如果没有关联直接回放脚本会发现回放出现错误,如下图
在这里插入图片描述

在这里插入图片描述
关联函数:web_reg_save_param(const char *ParamName, , LAST); 具体用法参考:https://www.cnblogs.com/qmfsun/p/4900272.html
关联步骤:
a.录制脚本后打开树视图—show record and replay snapshots—http view—row data—response。找到需要做关联的地方,如下图,如果找不到userSession,可以在path下挨个选中路径。然后查看Rawdata里有没有需要找的数据。
在这里插入图片描述

b.全选复制response中的内容到notepad++,找到userSession行,在下一行输入web_reg_save_param函数,输入顺序如下图,先输入web_reg_save_param(“”,””,””,LAST); ,再往里填充内容,其中第一个“”中输入参数名,例如usersession;第二个“”中输入左边界,例如LB=userSession value=;第三个“”中输入右边界,例如>。左右边界是为了让函数找到需要关联的值,左右边界中间的值是需要关联的值。(如果输入的内容包含”号,则在”号左边加上\),如下图,图中分别列出了有”号和没有”号的,具体根据自己的情况参考。web_reg_save_param函数还有很多其他的参数,不同的情况用到的参数可能不一样,具体的可以自己去查阅。
在这里插入图片描述
c.把写好的函数插入到脚本第一个action中,即open_index里,如下图(关联函数放置位置这块我还没搞懂,具体可参考: https://blog.csdn.net/u011446864/article/details/38395975)。然后在脚本中找到需要替换的Usersession的值,替换成之前在函数web_reg_save_param中定义的参数名,即usersession,示例脚本在submit_login中,如下图,这是已经替换过参数的,未替换的应该是类似于 value=130067.248926691zzQADDtpVVzzzzzHtAVtcpAAtH> 这样的。替换参数后保存脚本然后回放,在这里插入图片描述
在这里插入图片描述

如果回放时replay log中报错Error -26377: No match found for the requested parameter,则在runt time setting中internet protocol-preferences中的advaced区域有一个winlnet replay instead of sockets选项,勾选后再运行就好了,具体参考链接:https://www.testwo.com/blog/5531 如下图
在这里插入图片描述
下图是关联后的运行结果,可以看到运行正确了。
在这里插入图片描述
这次先写到这里,下次有空再来更新…

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161004.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [BIM]BIM中IFD介绍[通俗易懂]

    [BIM]BIM中IFD介绍[通俗易懂]第三大支柱IFD-确定交换的信息和你要的信息是同一个东西 IFD的全称是InternationalFrameworkforDictionaries,中文可以叫“国际字典框架”,和前两者IFC/IDM一样,作为BIM用户,能记住IFD的名字和记住IFD是字典就行了。  用BIM创建和管理信息,通过IFC和IDM实现信息在不同项目成员和不同软件产品之间的交换,从而使BIM价值最大化。…

    2022年10月22日
  • Smartphone 2.0 = Phone + Service

    Smartphone 2.0 = Phone + Service

    2021年7月30日
  • PyCharm下如何使用Git「建议收藏」

    PyCharm下如何使用Git「建议收藏」添加SSH公钥任何基于Git的在线代码托管平台都需要配置电脑的SSH公钥以GitHub为例,在个人设置里面找到对应的位置,点击添加按钮,将电脑用户目录下的.ssh文件夹里的id_rsa.pub文件里面的值复制输入进去,设置一个名字就添加成功了利用PyCharm克隆项目打开PyCharm,如果你原来有项目的话,依次点击左上角的File->CloseProject,如果没有直接…

    2022年8月27日
  • Django(36)Django中间件详解「建议收藏」

    Django(36)Django中间件详解「建议收藏」什么是Django中间件中间件(Middleware)是一个用来处理Django的请求(Request)和响应(Response)的框架级别的钩子,它是一个轻量、低级别的插件系统,用于在全局范围内改

    2022年7月30日
  • Matlab画图 线条的颜色、宽度等相关设置

    Matlab画图 线条的颜色、宽度等相关设置线条的属性有:Color——颜色、LineWidth——线条宽度、LineStyle——线型、LineJoin——线条边角的样式、AlignVertexCenters——锐化垂直线和水平线线条属性的默认值为([0,0,0],’-‘,’0.5′,’round’,’off’)颜色、线型、一、线条颜色二、线条宽度线条宽度的默认值为0.5,线条宽度只能指定正值。三、线条类型实例:plot(t…

    2022年5月29日
  • html中颜色的编码,css颜色编码对照表[通俗易懂]

    html中颜色的编码,css颜色编码对照表[通俗易懂]css颜色编码对照表2018-09-14颜色名十六进制值RGB值PearlyGates#FFFFF2#fffff2PaleOlive#FBF5E6#fbf5e6white#FFFFFF#ffffffFrostedLime#F6F9ED#f6f9edWhiteOrchid#FDFDF0#fdfdf0GreenVeil#EEF3E2#eef3e2GrayClif…

    2022年5月17日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号