天天看点

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

一、背景

新搭建的测试环境需要使用https访问,并且为双向认证,之前的压力测试脚本只能通过http访问,需要获取证书并修改配置文件才能够访问测试环境。

二、准备工作

step1. 下载证书;

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行
jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行
jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

保存后生成cer文件:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

step2. 转换jks

(jks是jmeter访问https方向的密钥)

进入cer密钥目录,执行命令:

keytool -import -alias mycert -file test.cer -keystore test.jks
           

输入密码:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

生成jks文件:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

step3. 转换bks

(bks是服务器认证客户端方向的密钥)

下载bcprov-jdk15on-164.jar

使用keystore转换成bks:

1. keytool -importcert -v -trustcacerts -alias 位置1 \ 
 2. -file 位置2 \
 3. -keystore 位置3 -storetype BKS \ 
 4. -providerclass org.bouncycastle.jce.provider.BouncyCastleProvider \   
 5. -providerpath 位置4 -storepass 位置5
           

生成bks:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

三、执行

1、jks配置:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

导入转换的jks文件:

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行

2、bks配置

打开jmeter的\bin\ system.properties文件,修改该文件内的如下两项:

# Keystore properties (client certificates)
# Location
javax.net.ssl.keyStore=D:\StressTest\keyStore.bks   --------------test.bks路径
# The password to your keystore
javax.net.ssl.keyStorePassword=hyUM6rsT2pJb0561qiI38A==    ----------------该文件对应的密码
           

3、jmeter执行

配置完成后,重启jmeter;

之前脚本的http请求改为https,修改域名;

jmeter模拟Android客户端发送https请求一、背景二、准备工作三、执行