
邮递员对k6
人到克6的转换器利用你的邮递员收藏,并转换所有邮递员请求,包括测试, 变量,... 到 K6 可执行的 K6 脚本进行性能测试.
这个项目是原作的友好分叉 grafana/邮递员对k6 转换器,积极维护并开放新捐款.
随意贡献或通过任何改进后人对k6的建议.
内容
特征
- 前所请文.
- 测试脚本.
- 变量(在所有范围+动态).
- 数据文件.
- 认证方法(霍克除外).
- 文件上传(实验).
postman.*接口( e)以下例外情况) (中文(简体) ).pm.*接口( e)以下例外情况) (中文(简体) ).- 支助 邮差 动态变量 打开 替换 函数.
- Postman 曝光的全球变量 :
globalsenvironmentdataiteration。 。 。 . xml2Json转换.- 全体 邮政员Schema 各个版本.
安装
局部安装(建议)
虽然有可能在全球安装,但我们建议,如果可能的话,将转换器添加到 node_modules 您的电话
使用 :
$ npm install -D @apideck/postman-to-k6
或者用纱线...
$ yarn add @apideck/postman-to-k6
请注意,这将需要您用 npx @apideck/postman-to-k6 your-postman-file 或者 如果你是的话
使用旧版本 npm, ./node_modules/.bin/postman-to-k6 your-postman-file。 。 。 .
全球安装
$ npm install -g @apideck/postman-to-k6
使用量
要将导出收藏转换为 k6 脚本 :
$ postman-to-k6 collection.json -o k6-script.js
然后像往常一样使用 k6 运行脚本 :
$ k6 run k6-script.js
视频介绍
与 尼科尔·范德霍芬 打开 保罗·巴洛格 从 K6队我们谈过了人对克6" 在 K6 办公小时 播客们 我们讨论了如何将邮递员的集合转换为k6载荷测试,邮递员的优点,以及重新使用自动化测试脚本进行性能测试的好处.
在Youtube上看着点 https://www.youtube.com/watch?v=Be66Db4wHLA (中文(简体) )
所涉专题:
选项
迭代数
配置完成前要执行多少次脚本 .
| 旗帜 | 声波 | 默认 |
|---|---|---|
-i | --iterations | 1个 |
示例
$ postman-to-k6 collection.json --iterations 25 -o k6-script.js
环境变量
从 JSON 文件提供环境变量 .
| 旗帜 | 声波 | 默认 |
|---|---|---|
-e | --environment | 不详 |
示例
$ postman-to-k6 collection.json --environment environment.json -o k6-script.js
全球变量
从 JSON 文件提供全局变量 .
| 旗帜 | 声波 | 默认 |
|---|---|---|
-g | --global | 不详 |
$ postman-to-k6 collection.json --global globals.json -o k6-script.js
CSV 数据文件
以 CSV 格式提供数据文件.
| 旗帜 | 声波 | 默认 |
|---|---|---|
-c | --csv | 不详 |
$ postman-to-k6 collection.json --csv data.csv -o k6-script.js
JSON 数据文件
用 JSON 格式通过数据文件 .
| 旗帜 | 声波 | 默认 |
|---|---|---|
-j | --json | 不详 |
$ postman-to-k6 collection.json --json data.json -o k6-script.js
K6 参数选项文件
过 K6 参数选项 作为JSON格式的文件.
| 旗帜 | 声波 | 默认 |
|---|---|---|
--k6-params | 不详 |
$ postman-to-k6 collection.json --k6-params k6-params.json -o k6-script.js
K6 作为 JSON 处理摘要
输出 K6摘要 作为文件
jSON格式。 这将会增加 K6 handleSummary(data) 到生成的脚本,提供 K6 的功能
将在本地存储摘要输出为 JSON 文件.
| 旗帜 | 声波 | 默认 |
|---|---|---|
--k6-handle-summary-json | 不详 |
$ postman-to-k6 collection.json --k6-handle-summary-json summary-report.json -o k6-script.js
K6 请求标签
生成 K6 请求名称标签 基于可用的命名 战略:
- 无:没有自动生成的标签qq默认
request: 使用请求名称作为标签(例如“ 显示全部账户” )folder-request: 使用 Postman 文件夹名和请求名( 例如:“ 账户 - 显示全部账户 ”)
| 旗帜 | 声波 | 默认 |
|---|---|---|
--k6-request-tagging | 不详 |
示例 request 战略
$ postman-to-k6 collection.json --k6-request-tagging=request -o k6-script.js
示例 folder-request 战略
$ postman-to-k6 collection.json --k6-request-tagging=folder-request -o k6-script.js
分开
将请求拆分为单独的文件, 以便更容易重排逻辑 .
| 旗帜 | 声波 | 默认 |
|---|---|---|
-s | --separate | 虚假 |
$ postman-to-k6 collection.json --separate -o k6-script.js
$ postman-to-k6 collection.json -s -o k6-script.js
跳过预览
转换时跳过任何预请求脚本
| 旗帜 | 声波 | 默认 |
|---|---|---|
--skip-pre | 虚假 |
$ postman-to-k6 collection.json --skip-pre -o k6-script.js
跳过邮件
转换时跳过任何后请求脚本
| 旗帜 | 声波 | 默认 |
|---|---|---|
--skip-post | 虚假 |
$ postman-to-k6 collection.json --skip-pre -o k6-script.js
CLI 选项文件
在单独的配置文件中管理所有 CLI 选项, 并将其传递给 postman to- k6 命令 。 来做 比较容易使用CLI,特别是在CI/CD执行中.
所有可用的 CLI 选项都可以在配置文件中使用. 通过通过CLI选项作为参数,可以 覆盖文件中定义的 CLI 选项.
| 旗帜 | 声波 | 默认 |
|---|---|---|
--cli-options-file | 虚假 |
$ postman-to-k6 collection.json --cli-options-file cli-config.json
JSON CLI 配置文件示例
{
"output": "k6-script.js",
"k6-params": "config/k6-params.json",
"environment": "config/envs/team.env.json",
"separate": true
}
实例
邮递员实例汇编见以下 example。要运行其中的一个例子, 只需运行它,因为你会
其他命令 :
$ postman-to-k6 example/v2/echo.json -o k6-script.js
测试
运行测试套件 :
$ npm run test-jest
npm run test-jest 包括一名土生土长的警卫 tests/** (AVA型API失败或 mock-require) (中文(简体) ).
运行默认测试入口 :
$ npm run test-all
运行覆盖并生成一个综合摘要/趋势文物:
$ npm run coverage-all
npm run coverage-jest-regression 执行一个 Jest 覆盖回归门对
scripts/coverage/jest-coverage-baseline.json 最大滴数 0.30%
用于行/报表/功能/空白.
最佳本地测试规则 tests/**数字 :
- 使用本地 Jest 断言( E)
expect(...)仅此而已. - 不导入 AVA (
import test from 'ava'(单位:千美元)tests/**。 。 。 . - 不使用 AVA 特定 API(
test.serial, (中文(简体) ),t.is, (中文(简体) ),t.deepEqual, (中文(简体) ),t.throws(见a/c.5/49/70,附件). - 不使用
mock-require内tests/**;使用共享的 Jest shim 绑入tests/helpers/shimHarness.js。 。 。 .
警卫司令部是:
$ npm run test-jest-native-guard
不支持的特性
- 使用脚本发送请求
pm.sendRequest。 。 。 . - 使用控制请求执行命令
postman.setNextRequest。 。 。 . - Cookie 属性, 比如
hostOnly, (中文(简体) ),session,以及storeId。 。 。 . - 邮递员的方法:
pm.response.reasonpm.response.to.have.status(reason)pm.response.to.not.have.status(reason)pm.request.auth
- 鹰认证方法.
- 折旧
xmlToJson方法. - 申请身份证明更改。 邮递员在出口中不提供它们,所以我们必须产生出新的.
资源
关于邮递至k6的博客文章和资源集
- k6 办公时间# 43 播音员: 格拉法纳/K6 & Tim Haselaars (维护者) 人对克6(中文(简体) )
- 用 Postman 装入测试您的 API 以 摩斯塔法莫拉迪亚语Name 从 格拉法纳
- 解锁 Spec-Driven API 开发的力量 以 蒂姆·哈斯拉尔斯
- API 负载测试: 初学者指南 以 格拉法纳/K6
- 充电您的APIs 第 6 卷 : 完善您的APIOps - 利用 k6 的力量进行API测试 以 丹尼尔·科科特 从 代码中心
- 装入 Postman 和 Grafana K6 测试 以 卢克曼·帕特尔
- 通过将 Postman API 脚本转换为 K6 并整合到比特巴克特 来移动左侧性能测试 由苏克玛·拉吉尔(sukma ragil)
- 黑客新闻
- Transformando 测试 de API com Postman em 测试 de performance com K6 以 玛洛·恩里克
- 将 Postman 收藏转换为 K6 脚本
- 使用带有 k6 的邮递员 以 里亚·奈克
- Postman 到 K6 用自动脚本生成自动化性能测试 以 胡扎伊法·阿西夫
- 邮递员5分钟后到K6 编号 : YouTube (英语) 以 索德雷亚贷款
其他类似工具
- 公尺对克6: 将 JMeter JMX 文件转换为 k6 JS.
贷项
特别感谢来自 格拉法纳 用于开源和增殖 转换器和贡献给社区。 感谢 书月 用于创建此 工具。 还有,多亏了 波尔贾坎皮纳 用于创建工具的原始化身.