一、获取插件

  1. 通过JMeter Plugins Manager下载
  2. 百度自行下载《jmeter-grpc-request-1.1.2.jar》插件
  3. 链接:百度网盘 请输入提取码
    提取码:z6ug
    下载后放到lib/ext,重启Jmeter

二、配置GRPC接口

  1. 配置完插件后,重启jmeter工具,创建线程组添加GRPC request

  2. 填写IP、端口、proto根目录、方法
    1. IP、端口 
    2. proto根目录

       

      1. 先在任意目录下创建一个文件夹,取名,我取的是“proto”,里面存放.proto的文件
      2. 然后去GRPC Request→Proto Root Directory→Browse导入proto文件夹的根目录(jmeter导入proto的时候里面的.proto文件是看不到的,直接导入就行了)
      3.  .proto文件:grpc是谷歌的一个开源的远程服务调用框架,可以让各个语言按照指定的规则通过http2协议相互调用,这个规则是用谷歌的一个数据描述语言写的一个.proto文件,grpc的目的就是为了让服务调用更方便。 目前支持的语言有C, C++,C#,Java, Node.js, Python,Go等,大部分语言都是通过插件根据.proto文件生成对应的代码,用生成好的代码,创建或调用grpc服务。(这个文件找开发要)

    3. 方法
      1. 可以通过手动拼写的方式:package.服务/接口
      2. 可以通过点击“Listing"自动读取proto文件下的.proto文件内的接口,自动拼写成一个list

       

       

  3. 填写参数
    1. 当我们选择了某个接口后,可以在对应的.proto文件,找到对应接口的入参要求

    2. 填写对应参数

三、发送请求

  1. 创建测试脚本:
    1. 添加线程组:右键单击测试计划 → 添加 → 线程(用户) → 线程组
    2. 添加GRPC Request:右键单击新建的线程组 → 添加 → 取样器 → GRPC Request
    3. 填写请求信息:主机、端口、proto文件夹、rpc方法、请求数据
    4. 保存测试脚本
    5. 运行测试
  2. 通过JMeter GUI在顶部栏点击启动按钮
    1. 通过命令行:bin/jmeter -n -t <test JMX file>.jmx -l <test JMX result>.csv -j <test log file>.log -e -o <Path to output folder>

四、参数格式自动生成

  1. 可以借助BloomRPC工具导入.proto文件后自动生成
  2. 导入后,点击任意接口,可以自动生成符合接口入参格式的数据
  3. 可以在jmeter工具内使用,制作脚本
  4. BloomRPC更像我们通常使用的postman工具,方便单接口的调试​​​

五、GRPC Request 页面

#选项描述
1Server Name or IPgRPC服务器地址(域名或IP)
2Port NumbergRPC服务器端口 (80/ 443)
3SSL/TLS开启SSL/TLS认证
4Disable SSL/TLS Cert Verification禁用SSL/TLS证书校验(自签名证书需开启)
5Proto Root Directoryproto文件的根路径
6Library Directory (Optional)proto文件解析需要依赖的额外库的文件夹路径 (googleapis)
7Full Method用于请求测试的RPC方法
8Metadata

Metadata可以用于token身份验证等方式,支持以下两种方式传输(UTF-8):
1. 使用键值对(Key: Value):
- key1: value1, key2: value2
2. 使用 JSON String:
- {“key1”:“Value1”, “key2”:“value2”}

9Deadline请求超时时间(单位:毫秒)
10Send JSON Format With the Request格式化的JSON请求数据

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐