从 K6 模拟每个 VU 的浏览器缓存以进行负载测试
Posted
技术标签:
【中文标题】从 K6 模拟每个 VU 的浏览器缓存以进行负载测试【英文标题】:Emulating browser cache for each VU from K6 for load testing 【发布时间】:2019-07-18 23:35:53 【问题描述】:我了解 k6 无法根据其文档模拟浏览器缓存(标头中的 cookie 除外)。
是否有人在使用 k6 工具进行负载测试时尝试模拟浏览器缓存(不仅仅是 cookie 标头)?
寻找功能/选项,例如: 1. 开启/关闭浏览器缓存。 2. 在每次迭代开始时清除 cookie。
试图了解如何从每个资源的 k6 脚本处理 Etag、Expires、Last-Modified、Cache-Control、If-None-Match 或 If-Modified-Since 等标头。 不确定,在尝试处理浏览器缓存时是否需要检查更多内容。
如果是,请分享一些关于如何这样做的想法或分享任何正在进行/成功的项目的 github 存储库。 如果成功,一旦验证,可能可以贡献给 k6 repo。
【问题讨论】:
【参考方案1】:我无法帮助 k6 中的自动缓存处理,因为它还没有这样的功能 (https://github.com/loadimpact/k6/issues/142)。但是关于 cookie,这是默认的 k6 行为——它会在迭代之间重置 cookie。您可以使用 noCookiesReset
option 禁用该行为。
【讨论】:
以上是关于从 K6 模拟每个 VU 的浏览器缓存以进行负载测试的主要内容,如果未能解决你的问题,请参考以下文章
使用 k6 进行 Meteor 应用程序负载测试,等待 body 元素
使用 K6 - 3000 VU 轰炸 AWS EC2。连接开始超时,现在我无法通过 SSL 或 HTTP 请求连接到实例。这是啥?