问题标签 [artillery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
53 浏览

node.js - 如何以编程方式运行和停止运行 Artillery.io?

我对实现 artillery.io 测试很感兴趣,但我希望它们从一个小型服务器应用程序内部运行,该应用程序将接收 REST 调用以按需启动和停止负载。然而,大多数在线帮助信息都集中在基于 CLI 的独立火炮测试上。

我怎样才能从程序内部运行和停止炮兵?当然,我可以运行一个子进程然后将其拆除,但是是否可以通过某种程序 API 或 REST API 来本地控制 Atrillery?

0 投票
0 回答
35 浏览

load-testing - 火炮重用场景或流程

假设我正在测试像 facebook 这样的系统。我有很多情况如下:

  1. 登录并创建帖子并注销
  2. 登录并加载提要并加载帖子详细信息并发表评论并注销
  3. 登录并加载提要并加载帖子详细信息并喜欢帖子并注销
  4. 登录并加载提要并加载帖子详细信息并喜欢命令并发布命令并注销

如您所见,在不同的场景中有许多类似的流/api,请问我如何在火炮中重用它?根据文档,似乎我需要在不同的场景中复制所有流/api。

痛点是:如果我对 (for example) 进行了更改load post detail api,那么我需要更改很多地方

也欢迎直接回答如何重用、插件/库,甚至建议更换火炮。谢谢

0 投票
0 回答
50 浏览

node.js - Artilary:等待从 socket.io 服务器发出的事件

我有一个 socket.io 应用程序,其中包含我想加载测试的流程。

流程看起来像这样:

我想让炮兵测量服务器回复该session_ready事件所需的时间。

我怎样才能做到这一点?我试过类似的东西:

但它似乎并没有等待事件被发出,而是在发出第一个事件后才存在。

0 投票
0 回答
55 浏览

load-testing - Serverles-artillery 错误:无服务器版本是 2.64.1,兼容版本是 '^1.0.3'

我正在尝试使用 serverless-artillery 来运行一些负载测试。我正在遵循https://www.npmjs.com/package/serverless-artillery中的步骤,但我在 docker 容器和 vscode 远程中运行它。

部署时,我遇到了一个我无法弄清楚的版本兼容性错误。谁能帮我?

步骤(一切使用默认设置):

  1. 使用 vscode 构建和打开容器(下面的 Dockerfile)

  2. aws configure(设置凭据)

  3. mkdir 负载测试

  4. cd 负载测试

  5. slsart 脚本

  6. slsart 配置 --> 大量警告和 29 个漏洞报告

  7. slsart 部署 --verbose

Dockerfile

版本:

0 投票
0 回答
102 浏览

load-testing - 炮兵从有效载荷文件中重复同一行

我正在尝试使用 Artillery 运行一个简单的负载测试。理想情况下,每个请求都应包含来自有效负载文件的用户数据:

我遇到的问题是,使用上述 yml,Artillery 将文件中的每一行发送 10 次。如果我使用并没有什么不同

或者

它使用第 1 行的数据发送 10 个请求,然后使用第 2 行的数据发送 10 个请求,依此类推。因此,在 30 秒结束时,它已发送文件的前 30 行,每行 10 次。我希望将有效负载文件的 300 行中的每一行发送一次(以 10/秒的速率)。我怎样才能让它随每个请求发送新数据?

0 投票
0 回答
64 浏览

performance-testing - Artillery v2 如何像 v1 一样运行快速测试?

在Artillery 工具v1中,有一个选项可以直接从命令行运行测试:

但是它对 v2链接被禁用

是否可以选择以类似方式运行 Artillery v2测试(无需额外的文件配置)?

0 投票
0 回答
134 浏览

websocket - 如何设置 Artillery 加载使用 socket.io 框架的测试 websocket

我是 socket.io 的新手,只知道简单的 websocket。我想测试使用 socket.io v4 构建实时通信通道的功能的性能。

推送消息的其余api:

我研究并遵循了https://socket.io/docs/v4/load-testing/https://github.com/ptejada/artillery-engine-socketio-v3上的指南,但返回连接失败。

这是我的 yaml 文件:

我尝试使用 jmeter,但它也无法与 websocket 端点连接。

会喜欢任何提示。

0 投票
0 回答
17 浏览

yaml - 我们如何通过使用javascript自定义工具将文件上传到炮兵

我正在尝试将文件上传到炮兵工具进行 api 测试,但免费版本不支持文件上传功能。我们如何使用 javascript 自定义功能

0 投票
1 回答
81 浏览

load - 使用 Body url 编码形式的 Artillery.io 不起作用

值得注意的是,我的请求适用于 Postman。

我基本上有以下

当我从 yaml 文件中删除正文时,端点似乎被击中并发回正确的消息。当我重新添加身体时,我得到以下信息:

0 投票
1 回答
64 浏览

node.js - 在负载测试期间模拟外部依赖项

我有一个用 node.js 编写的后端,它在某些端点上使用外部 API。我想在不测试那些外部依赖项的情况下进行负载测试。是否可以模拟它们以及如何模拟它们?我并不真正关心到达 API 所需的时间,并且必须将其排除在测试之外。模拟应该像返回一个普通对象一样简单。现在我一直在尝试使用 k6 或大炮进行这些测试,但我没有找到如何模拟的运气。有什么资源可以帮助我实现目标?