loadrunner处理https请求
录制到的脚本如下:
login()
{
lr_think_time(10);
web_url("verifycode.jsp",
"URL=https://192.168.211.246:56661/portal/common/jsp/verifycode.jsp?codeSource=loginverifycode&time=1330596177343",
"Resource=1",
"RecContentType=image/jpeg",
"Referer=https://192.168.211.246:56661/portal/indexAction",
"Snapshot=t2.inf",
LAST);
web_url("192.168.211.246:38787_2",
"URL=http://192.168.211.246:38787/",
"Resource=0",
"RecContentType=text/html",
"Referer=https://192.168.211.246:56661/portal/indexAction",
"Snapshot=t3.inf",
"Mode=HTML",
EXTRARES,
"Url=https://192.168.211.246:56661/portal/common/style/image/head/topbg_line.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/shadowLW.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/tabM.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/tabBg.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/shadowRW.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/titleHot.gif", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/head/contanta_pic_y.gif", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/titleHot2.gif", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/shadowB.jpg", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
"Url=https://192.168.211.246:56661/portal/common/style/image/titleMyoder.gif", "Referer=https://192.168.211.246:56661/portal/indexAction", ENDITEM,
LAST);
web_url("subscribeInfoQuery.action",
"URL=https://192.168.211.246:56661/portal/subscribeInfoQuery.action",
"Resource=0",
"RecContentType=text/html",
"Referer=https://192.168.211.246:56661/portal/indexAction",
"Snapshot=t4.inf",
"Mode=HTML",
LAST);
return 0;
}
思考:是否是loadrunner不支持https
解决:通过查找一些资料,其实loadrunner支持https协议,但需要在录制脚本时做一些修改,操作步骤如下:
1、证书的准备
常见的证书为:*.pfx格式,该种格式的证书可以通过双击运行安装到IE浏览器上。用户在访问的时候就可以使用到。
但这种证书并不是LoadRunner所使用的类型,因此需要对其进行转换。将其转换为*.pem格式。
转换方法如下:
a) 安装openssl后
b) 运行C:\<OpenSSL>/bin文件夹的openssl二进制文件,它将启动OpenSSL命令提示符
c) 执行以下命令:pkcs12 -in D:\test1.pfx -out D:\test01.pem–nodes
d) 执行后,将会在指定目录生成test01.pem文件,这个文件将会在下一个步骤,对LoadRunner进行配置的时候使用到。
2.LR配置
启动LoadRunner,打开Recording Option选项。
[图片]
留意红色框中的选项。
选择后,单击New Enty
[图片]
红框中的配置为服务器的ip和端口号,按照测试所需要的实际地址进行配置就可以
配置后,将Use specified client-side certificate[Base64/PEM]钩选,为使用客户端证书访问。
单击...选择刚刚转换生成的客户端证书。
[图片]
如果你为证书有设置密码,在这里也需要输入。
到此为止所有与http区别的配置就完成了。
录制后,可以在脚本的开始,看到LoadRunner新生成的语句
web_set_certificate_ex("CertFilePath=test01.pem", //密钥文件
"CertFormat=PEM",
"KeyFilePath=test01.pem", //密钥文件
"KeyFormat=PEM",
"Password=123456", //密钥密码
"CertIndex=1",
LAST);
3、完成上面两步后可以正常录制脚本
或者使用:
测webservice遇到https的请求,是在事务开始前加web_set_sockets_option("SSL_VERSION","TLS");
loadrunner处理https请求的更多相关文章
- loadrunner使用https请求
1:使用函数 web_set_sockets_option:设置套接字的函数 例如:web_set_sockets_option("SSL_VERSION","TLS&q ...
- loadrunner支持https协议的操作方法-经验总结
问题:用户portal支持https协议,用loadrunner录制登陆脚本时发现未录制到用户名和密码 录制到的脚本如下: login() { lr_think_time(10); web_url(& ...
- Loadrunner对https协议(单双向SSL)的web端性能测试
1.项目背景 1.1 单双向SSL的含义及部署 单向SSL即我们说到的https协议. 特点是,浏览器需要请求验证服务器证书: 基本含义是:一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务 ...
- Http、Https请求工具类
最近在做微信开发,使用http调用第三方服务API,有些是需要https协议,通过资料和自己编码,写了个支持http和https的工具类,经验证可用,现贴出来保留,也供需要的人使用(有不足的地方,也请 ...
- charles4抓https请求的注意事项
最近升级charles4.0后发现抓不了https请求了,但很奇怪ssl证书一样,记得以前用3.0就可以,今天仔细研究了一下,发现4.0的ssl代理设置中有一段说明(可能3.0也有但没注意): 直接上 ...
- 使用curl进行https请求
简单示例: /** * @param $url * @return array * 进行https请求,并且遇到location进行跳转 */ function https($url){ $resul ...
- 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需 要获取认证信息(如Cookie),所以返回的是HttpWeb ...
- 【转载】JMeter学习(三十六)发送HTTPS请求
Jmeter一般来说是压力测试的利器,最近想尝试jmeter和BeanShell进行接口测试.由于在云阅读接口测试的过程中需要进行登录操作,而登录请求是HTTPS协议.这就需要对jmeter进行设置. ...
- 如何使用查尔斯代理抓取https请求
首先 查尔斯代理是一个很不错的抓包工具 有适合各种系统的版本 最近http的请求几乎铺天盖地的已经变为了https了 其中的好处有很多 更加安全(http://www.cnblogs.com/lo ...
随机推荐
- Xcode 控制台打印Unicode字符串转换为中文
在Xcode的控制台里直接打印一个数组或者字典,输出的都是一些Unicode的编码,不方便调试. 要想看到中文,则要去获取对应的key或者数组下标.得到具体某一个对象才能看到中文,给我们调试起来 ...
- Python中模块
模块 模块对我来说是什么 模块对我来说,感觉就像亲属或者朋友已经走过的路,他们已经趟过的浑水.掉过的坑.践行过的路线,全部提供给你,在你需要的时候请求帮助,借鉴他们的解决方法一样.都是为了方便走好人生 ...
- querySelectorAll 和 getElementBy 方法的区别
作者:简生 链接:https://www.zhihu.com/question/24702250/answer/28695133 来源:知乎 1. W3C 标准 querySelectorAll 属于 ...
- cookie的简单认识
1.cookie Cokie又叫会话跟踪技术,实际上就是客户端硬盘上的一个文本文件,该文件用来存储一些数据. 首先,HTTP请求时无状态的,也就是说,你打开一个网页和下一个网页之间没有任何关系,数据不 ...
- Html5 Canvas 实现图片合成
多个图片合成一张 <!doctype html> <html> <head> <meta charset="utf-8"> < ...
- linux环境mysql的安装主从关系的配置
- 【八】将日志写入log(glog)
[任务8]将日志写入log(glog) glog简介 glog是google开源的一个日志系统,相比较log4系列的日志系统,它更加轻巧灵活,而且功能也比较完善 glog配置使用资料 下载glog 命 ...
- 基于STM32的简易磁卡充值系统
使用的是MFRC522射频模块,把磁卡放入感应区后,可以执行三种操作: 初始化磁卡金额 读取卡内金额 向卡内写入金额(充值) 本来想着回学校了能把洗浴卡的金额给改掉,实现帝皇般的尊贵洗浴享受(不花钱… ...
- HyperLedger Fabric 1.4 区块链工作过程(2.3)
区块链的工作过程分交易产生.交易广播.节点计算.获取记账权.记账权广播.接收区块.验证区块和完成记账七个过程. 1) 交易产生:用户向区块链发了一笔交易信息,将产生交易:2) 交易广播:当一笔新交易产 ...
- SpringBoot 启动报The Java Virtual Machine has not been configured to use the desired default character encoding (UTF-8)
解决方法: 启动的时候在VM中添加 Dfile.encoding=UTF-8 就好了!