Jmeter - 阿里云 APP 鉴权

背景

  1. 阿里云网关开启阿里云 app 鉴权后,如何使用 jmeter 进行自测?

  2. 什么是 BeanShell ? 百度。。。

环境部署

  1. 在 Jmeter 插件目录 lib/ext 下保存插件 aliyun-getway-sign.jar 。PS : 也可以指定其他目录,有兴趣可以自行研究。

  2. 新增一个 shell 文件夹,用于管理 BeanShell 脚本。

  3. 附件中包含了:阿里云鉴权插件、BeanShell 脚本, 下载

使用方法

  1. 创建自定义变量管理 appKey 和 appSecrect
  1. 全局设置信息头管理器, 非必填项
  1. 添加 BeanShell **前置处理程序 **(添加 ->前置处理器 -> BeanShell 预处理程序)

  2. BeanShell 脚本有两种实现方法,建议第一种纯黑盒。

    1. 引用现有的 BeanShell 脚本 (需要指定脚本路径)

    2. 在 BeanShell 文件中编写脚本

  1. 正常编写测试脚本即可

备注

  1. Jmeter class 文档

  2. 调试插件时,可以尝试在 BeanShell 中通过 addClassPath 方法直接指定 Java 帮助类,例如: addClassPath("D:\xxxx\jmeter-aliyun-gateway-sign\target\classes\");

  3. 所有的 BeanShell 代码都要以分号结尾

  4. 当你不知道对象类型时 ,log.info( xxx.getClass()); 再配合 Jmeter class 文档有奇效 。

  5. BeanShell 中不要使用类似于 Map<String,Object> map = new HashMap<>(), List也一样。

    1. 包括引用 java 文件也不能使用泛型,jmeter 会报错:

    2. Map 方法中不能指定数据类型 , 可以 Map map = new HashMap();

  6. 打包插件,需要使用 module output 默认目录

  7. 异常处理不完善,有兴趣的可以自行优化

扩展

  1. 内置变量 vars

    1. https://blog.csdn.net/dream_na/article/details/119794961

    2. https://www.cnblogs.com/a00ium/p/10324638.html

  2. 采样器 sampler (HTTPSampler -> HTTPSamplerBase)

    1. https://blog.csdn.net/qq_15347449/article/details/107209324

    2. https://jmeter.apache.org/api/org/apache/jmeter/protocol/http/control/HeaderManager.html

  3. 常用方法

//获取谓词
String method = sampler.getMethod();
log.info("method :" + method);

//获取请求路径

String path = sampler.getUrl().getPath();

log.info("path :" + path);

//sampler 里面有个getHeaderManager 可以获得请求头

HeaderManager headers =sampler.getHeaderManager();

// 打印全部的头部内容

log.info(headers.getHeaders().getStringValue());

//获取query部分

String requestQuery = sampler.getUrl().getQuery();

log.info("requestQuery :" + requestQuery);

//获取请求路径

String path = sampler.getUrl().getPath();

log.info("path :" + path);

//获取域名

String Host = sampler.getUrl().getHost();

log.info("Host :" + Host);

//获取协议

String protocol = sampler.getUrl().getProtocol();


log.info("protocol :" + protocol);

posted on 2021-12-04 19:00  爱上键盘的蜗牛  阅读(308)  评论(0编辑  收藏  举报

导航