暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Loadrunner压测https协议的几种方法

IT那活儿 2025-05-19
272

点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!


  
Web页面性能测试,需要用https协议的url请求性能测试,https协议涉及到SSL证书的安装设置,以下总结用loadrunner录制https协议请求的三种方法。

Loadrunner版本:loadrunner12

IE版本:IE11



方法一
1.1 获取SSL证书(向相关人员获取或直接在浏览器中下载)
在浏览器中安装SSL证书,安装成功后,浏览器访问https请求为受信任的站点,如下图:
1.2 打开loadrunner 12,新建脚本
Record-->Recording Options-->NetWork-->Mapping and Filtering中,Capture Level选项选择WinNet level data,保存,如下图:

注1loadrunner的capture level决定了录制脚本时捕获哪些级别的数据,Capture Level的设置会影响到脚本的详细程度,从而影响性能测试的准确性和效率。

注2loadrunner的capture level默认为Socket level data,在这种模式下,数据通过在socket层进行捕获,支持端口映射。

注3capture level为WinNet level data,这种模式下,数据通过挂钩WinINet.dll API进行捕获,不支持端口映射。

注4capturelevel为Socket level and WinINet level data,这种模式结合了上述两种机制,同时使用socket层和WinINet层进行数据捕获。Socket层的支持端口映射,winINet层的则不支持。

Loadrunner直接录制https脚本时,如果用IE浏览器,则需要选择WinINet level data,火狐浏览器则需要选择Socket level and WinINet level data,如设置不当,录制为空白,录制不到https的请求。

设置完capture level后,后续的录制步骤和录制http的步骤一致即可。
1.3 录制完成后回放脚本设置

录制完的https脚本回放,直接回放会报错,需要进行设置后才能成功回放。

方法1:
Runtime Setting-->Preference-->Advanced中勾选Use WinINet replay instead of Sockets,如下图:

此方法弊端为勾选后,回放脚本的https请求的超时时间默认为15s,在请求返回较慢的时候容易造成请求超时的报错。

方法2:
直接在脚本开头加web_set_sockets_option()函数,指定SSL版本即可。在选择SSL版本时需要注意选择的版本要和要压测https的加密版本一致,loadrunner12支持的SSL版本为SSL1、SSL2、SSL3、SSL2/3,TLS1.0、TLS1.1、TLS1.2,本例中https使用的是TLS1.2,所以选择的是TLS1.2,如下图:

方法二
2.1 打开loadrunner 12,新建脚本
Record-->Recording Options-->NetWork-->Mapping and Filtering中,New Entry新建映射。
2.2 输入服务器ip
port为443,serviceID选择http,Connection Type选择SSL,SSL Version根据实际情况选择,如本例为TLS1.2,就选择TLS1.2,保存,如下图:
后续的录制步骤和录制http的步骤一致即可。

注1:选择代理SSL录制,会出现此网站安全证书存在问题的提示,原因是使用loadrunner代理的SSL证书没有安装到受信任服务器根目录的原因导致。

2.3 查看录制完的脚步
会发现在脚本第一行自动添加了SSL的版本信息,如下图:

方法三

3.1 打开loadrunner 12,新建脚本

Record-->Recording Options-->NetWork-->Mapping and Filtering中,New Entry新建映射。

3.2 输入服务器ip

port为443,serviceID选择http,Connection Type选择SSL,SSL Version根据实际情况选择,如本例为TLS1.2,就选择TLS1.2,勾选Usespecified client-certification(Base64/PEM),选择本地已准备好的.pem格式的SSL证书,保存,如下图:

注1:loadrunner使用本地SSL证书,需要将.cer格式转换为.pem格式,可以用loadrunner自带的opessl转换,在bin目录下,转换命令:

pkcs12 -in \SSL证书路径\XXX.cer -out \...\XXX.pem -nodes

后续的录制步骤和录制http的步骤一致即可。

注2:该设置方法也会出现此网站安全证书存在问题的提示,原因也是因为SSL证书没有安装到受信任服务器根目录的原因导致。

3.3 查看录制完的脚步

会发现在脚本第一行自动添加了SSL的版本信息的函数,第二行会自动添加本地证书的函数信息,如下图:

以上为用loadrunner12录制https脚本的三种方法设置。

PS:loadrunner11仅支持TLS版本,用TLS1.2版本的https录制不了。


END


本文作者:杜俊芝(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论