swagger定义的api自动生成jmeter测试脚本jmx
准备工作
我们使用openapi-generator-cli
这个工具用做 swagger api 转化 jmeter jmx 的工具。
该工具的文档地址:https://openapi-generator.tech/docs/installation/#jar
下载安装 OpenApiGenerator
OpenAPI Generator 可用于在给定 OpenAPI 规范(v2, v3)的情况下自动生成 API 客户端库、server stubs、文档以及配置。 该工具要求 Java8 及以上的运行环境。 下载:
#For Mac/Linux users:
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.3.0/openapi-generator-cli-5.3.0.jar -O openapi-generator-cli.jar
下载 JAR 后,运行java -jar openapi-generator-cli.jar help
以显示帮助信息。
可以在https://openapi-generator.tech/docs/usage查看使用文档。
准备 swagger 的 json api 文档
可以将 swagger 的 api 文档导出并保存到本地 swagger.json 比如 pet store 的官方演示https://petstore3.swagger.io/下载其中的openapi.json 保存为 petstore.json
生成 jmx 脚本
执行命令:
# 转换本地已经保存的swagger.json文件到jmx
java -jar openapi-generator-cli.jar generate -i petstore.json -g jmeter
生成成功,则会生成相应的 jmx 文件及 csv 数据文件:
之后 jmx 文件就可以用 jmeter 打开编辑并进行测试了。
注意事项
此种方法生成的 jmx 需要标准的 swagger 定义文档。如果提供的 swagger 文档不规范,则可能无法生成。 并且生成的 jmx 文件里面包含了所有的接口的测试定义。因此可能也不一定符合需求。此时,也许你需要的是通过手机代理到 jmeter 进行操作的录制功能来生成测试脚本。