【第三方软件测试测评机构:使用LoadRunner测试HTTPS/SSL协议应用的配置和证书处理 】

使用LoadRunner测试HTTPS/SSL应用需要正确处理证书格式和配置端口映射。

步骤

1. 证书准备和格式转换

LoadRunner在端口映射中配置客户端证书时,一般需要PEM格式。如果从开发或运维部门获得的证书是.pfx或.cer格式,可以用OpenSSL转换:

bash 复制代码
openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes

2. 端口映射配置

配置入口在:Tools > Recording Options > Network > Port Mapping。

新建映射:点击New Entry。

填写信息:输入被测服务器的IP/域名和端口(如443),选择HTTPS作为连接类型。

指定证书:勾选Use specified client-side certificate,并导入准备好的.pem证书文件。如果证书有密码,也需一并填入。

文章来源:卓码软件测评

精彩推荐:点击蓝字即可
软件负载测试API自动化测试软件测试第三方软件测试软件性能测试\[\]软件测试机构

3. 脚本回放

首次回放脚本时,如果遇到类似 -27796: 服务器SSL证书撤销列表检查失败 的错误,并不是配置有误,而是因为VuGen默认严格检查证书状态。你可以在VuGen的Runtime Settings > Internet Protocol > Preferences中,勾选WinInet replay instead of sockets来解决。这个选项让VuGen使用Windows系统本身的网络组件(WinInet)来模拟浏览器行为,从而自动信任系统已认可的证书,跳过了严格的检查。

高级配置

在实际的压测情形时还需要注意以下两点,直接影响测试的真实性和结果准确:

SSL/TLS协议版本选择:在Controller创建场景时,保证负载生成器(Load Generator)使用的SSL/TLS协议版本和被测服务器兼容。服务器一般已禁用TLS 1.0/1.1,建议选择TLS 1.2或更高版本。

重置SSL状态选项:在场景设计的Run-Time Settings中,找到此选项。

勾选(重置):意味着每次迭代(模拟一个新用户)都会重新进行完整的SSL握手。这能更真实地模拟不同用户,但会产生较大的CPU开销。

不勾选(不重置):同一虚拟用户的多次迭代会复用SSL会话。这能显著降低服务器和负载机的压力,提高单机可模拟的用户数,适用于测试已建立安全连接后的业务性能。

如果测试重点是考虑服务器处理大量新SSL握手连接的能力(如秒杀情形的瞬时登录),应勾选重置。如果测试长时间稳定压力下的业务吞吐,则不勾选,以减少额外开销。

疑难问题

如果遇到问题可以按以下方法进行排查:

录制时无法捕获脚本,事件数为0 捕获级别不正确:在Recording Options > Network > Port Mapping中,将Capture level改为WinINet Level Data。

回放时报 -27776: SSL 连接关闭 或握手失败

  1. 运行时设置未用WinInet回放 ,在Runtime Settings中勾选WinInet replay instead of sockets。

  2. 证书格式或密码错误,检查证书格式是不是为PEM,密码是不是正确。

使用较新版本VuGen录制时SSL握手失败:新版本默认使用SHA-256签名证书,旧服务器可能不兼容,(问题多见于新旧环境交替时)可尝试按官方指导,修改配置来临时使用SHA-1证书。

LoadRunner测试HTTPS应用证书转换、端口映射和WinInet回放是三个重要操作。配置时注意根据测试目的(测连接能力还是测业务吞吐)合理选择SSL状态重置选项。

相关推荐
国强_dev2 小时前
技术探讨:使用 stunnel 加密转发数据库连接时,如何获取客户端真实 IP?
数据库·网络协议·tcp/ip
搬砖柯7 小时前
系列10-接口/UI 自动化怎么验落库?数据工厂与数据库断言实践
数据库·测试工具·ui·开源·自动化
AlfredZhao8 小时前
Linux 主机防火墙如何同时开启 80 和 443?
http·https·firewall
LT10157974449 小时前
2026年在线兼容性测试工具推荐|零部署网页 / APP / 小程序实测对比
测试工具·小程序
云栖梦泽在9 小时前
Claude Code / Codex 使用卡顿怎么办?AI 编程 Agent 连接失败与网络排查思路
网络·人工智能·网络协议·chatgpt·性能优化
子不语18012 小时前
从0开始学习S7-1200+ET200SP(3)——两台S7-1200通过TCP连接
网络协议·学习·tcp/ip
折哥的程序人生 · 物流技术专研12 小时前
Java面试通关⑦:JavaWeb网络核心全集
网络协议·http·javaweb·校招·前后端交互·java面试·社招
小蜗牛的路15 小时前
使用OpenSSL生成本地证书https+nginx
网络协议·nginx·https
程序员杰哥15 小时前
接口自动化测试项目框架详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
Cloud_Shy61815 小时前
Linux 用户管理知识与应用实践(二:用户相关命令与示例)
linux·运维·服务器·测试用例