Jmeter使用Beanshell发送加解密接口

目录

一、加解密的jar包基本介绍及引入

二、添加Http请求默认值

 三、添加HTTP信息头管理器

 四、添加CSV数据文件设置,参数化数据

​ 五、添加加密的Beanshell预处理程序

 六、添加线程组,发送接口请求

七、 添加HTTP请求,发送请求报文

八、添加Beanshell后置处理程序,将HTTP的响应信息进行解密

 九、添加调试取样器,查看取样结果以及断言

十、添加察看结果树,查看请求以及调试取样器结果

十一、添加聚合报告,查看性能指标

十二、添加断言

 十三、断言结果

 十四、遇见的问题

十五、Beanshell的常用变量


一、加解密的jar包基本介绍及引入

1、加密接口Rsa2Util.encryptTest(报文)

2、解密接口Rsa2Util.decrypt(报文, "UTF-8", 密钥)

3、密钥 Shangsi

MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDjQ1ficXeKwBPrUZLgk+0M7+77lFQa9o50eCvtKR0hgMt0LtoYgTUR1nrXs4VX13EWgtY9d3um1P55s/nPWVMjTQtP8lBwEuQUPrHL62fNR7Ov3+aPN7XOjL9KV9SspCCHMD3i4r1fsCYm9wLVauy2Qae7nzR13pf9Pe2wq+GPtyA/NWnp+M+wFCPcBhlYs0YEU7hm+9oZR0ySwAdTTwiDKVLi/PqorDGjUmhZXBBiJ1Pv0OCeC8J98GOUrqUhdbfzAnBimifrJGL6wQopkWy6BZFF5hDjLuVORPoZU3WEbc6dX84Rrgb9nyafyS5WbjUuxO2v4ZoGHjtsuuLJBHqNAgMBAAECggEBANJkhfgdE45gRBCWdGN0jwBrH9PIfhR4LWml1wS4Cz/4/GGS/lWxSHA7H36Rs+CekxNEDRLaip7okK4a8CoFh/ImYVKiAdW/p2cWo4Mla/Ofbbpkjg4IhUezBWTN6xXo3DRLdP+W6bqsWKW6B+WMF5ijL6WCvg5hBFRuAJ6OgUOJhqW/0Ydn5qdxSyP8VeB4UMeXwq2BZgGJnTlpO2WRoq5ZIa1Ia5tPUdaWHo9iNQpVu7q+XSBCVkMClGdF6RN9Bw7S1V5NuYgPPASl+gT69RYR2GCLYhXpPetbnLrfUMeEmLpmgITqqQdQELtAl+H9Tc6eBezPIgMqFBqI4waeYAECgYEA9ViLFfBqiCuj2M2uea7evGn/r/87Pdoa31j9wzZS1cX5yR5BaIL2SIAPUe9R9Mdx9maxMrW93yOhPYWq2/jG/6d

4、将加解密jar包放入Jmeter的\lib\ext路径中

Jmeter使用Beanshell发送加解密接口_第1张图片

二、添加Http请求默认值

测试计划右键——添加——配置元件——HTTP请求默认值

Jmeter使用Beanshell发送加解密接口_第2张图片

 设置请求的服务器、地址、端口号、协议,后续同一地址端口号无需再设置Jmeter使用Beanshell发送加解密接口_第3张图片

 三、添加HTTP信息头管理器

将报文头添加到HTTP信息头管理中

测试计划右键——添加——配置元件——HTTP信息头管理器

Jmeter使用Beanshell发送加解密接口_第4张图片

Jmeter使用Beanshell发送加解密接口_第5张图片

 四、添加CSV数据文件设置,参数化数据

测试计划右键——添加——配置元件——CSV数据文件设置

Jmeter使用Beanshell发送加解密接口_第6张图片

 目前本请求报文,只需将deviceId进行参数化,其他无需Jmeter使用Beanshell发送加解密接口_第7张图片

Jmeter使用Beanshell发送加解密接口_第8张图片 五、添加加密的Beanshell预处理程序

测试计划右键——添加——前置处理器——Beanshell预处理程序

 Jmeter使用Beanshell发送加解密接口_第9张图片

 编写加解密脚本

Jmeter使用Beanshell发送加解密接口_第10张图片

 六、添加线程组,发送接口请求

测试计划右键——添加——线程——线程组

Jmeter使用Beanshell发送加解密接口_第11张图片

 设置循环次数

Jmeter使用Beanshell发送加解密接口_第12张图片

七、 添加HTTP请求,发送请求报文

线程组右键——添加——取样器——HTTP请求

Jmeter使用Beanshell发送加解密接口_第13张图片

 录入接口的请求类型和路径,以及加密程序存储的加密变量

Jmeter使用Beanshell发送加解密接口_第14张图片

八、添加Beanshell后置处理程序,将HTTP的响应信息进行解密

线程组右键——添加——后置处理器——Beanshell后置处理程序

Jmeter使用Beanshell发送加解密接口_第15张图片

 录入加解密脚本

Jmeter使用Beanshell发送加解密接口_第16张图片

 

 九、添加调试取样器,查看取样结果以及断言

线程组右键——添加——取样器——调试取样器

Jmeter使用Beanshell发送加解密接口_第17张图片

 Jmeter使用Beanshell发送加解密接口_第18张图片

十、添加察看结果树,查看请求以及调试取样器结果

线程组右键——添加——监听器——察看结果树

Jmeter使用Beanshell发送加解密接口_第19张图片

 运行查看结果

Jmeter使用Beanshell发送加解密接口_第20张图片

十一、添加聚合报告,查看性能指标

线程组右键——添加——监听器——聚合报告

Jmeter使用Beanshell发送加解密接口_第21张图片

十二、添加断言

断言的请求邮件——添加——断言——响应断言

Jmeter使用Beanshell发送加解密接口_第22张图片

录入断言文本,以及失败打印的消息

Jmeter使用Beanshell发送加解密接口_第23张图片

 十三、断言结果

断言的取样器右键——添加——监听器——断言结果

Jmeter使用Beanshell发送加解密接口_第24张图片

 运行之后查看断言结果Jmeter使用Beanshell发送加解密接口_第25张图片

 十四、遇见的问题

1、无法识别加密类

检查JDK配置以及版本,目前我试用的是JDK1.8,Jmeter5.4.1

2、取样器、调试取样器均可添加断言

3、Jmx的层级关系

Jmeter使用Beanshell发送加解密接口_第26张图片

十五、Beanshell的常用变量

附、Bean Shell常用内置变量

   JMeter在它的BeanShell中内置了变量,用户可以通过这些变量与JMeter进行交互,其中主要的变量及其使用方法如下:

log:写入信息到jmeber.log文件,使用方法:log.info(“This is log info!”);

ctx:该变量引用了当前线程的上下文,使用方法可参考:org.apache.jmeter.threads.JMeterContext。

vars - (JMeterVariables):操作jmeter变量,这个变量实际引用了JMeter线程中的局部变量容器(本质上是Map),它是测试用例与BeanShell交互的桥梁,常用方法:

    a) vars.get(String key):从jmeter中获得变量值

    b) vars.put(String key,String value):数据存到jmeter变量中

    更多方法可参考:org.apache.jmeter.threads.JMeterVariables

props - (JMeterProperties - class java.util.Properties):操作jmeter属性,该变量引用了JMeter的配置信息,可以获取Jmeter的属性,它的使用方法与vars类似,但是只能put进去String类型的值,而不能是一个对象。对应于java.util.Properties。

    a) props.get("START.HMS");  注:START.HMS为属性名,在文件jmeter.properties中定义

    b) props.put("PROP1","1234");

prev - (SampleResult):获取前面的sample返回的信息,常用方法:

    a) getResponseDataAsString():获取响应信息

    b) getResponseCode() :获取响应code

你可能感兴趣的:(jar,java,压力测试,jmeter,加密解密)