问题标签 [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 投票
1 回答
127 浏览

artillery - 将变量传递给炮兵脚本时出错

我正在使用非常简单的命令来测试炮兵脚本并尝试从命令行传递变量。命令是

artillery run -v '{"var1": "value1", "var2": "value2"}' .\test\performance\applications.yml -e development

它给出了错误

我看不出我的命令和摩擦错误有什么不同。任何帮助表示赞赏。

0 投票
0 回答
35 浏览

javascript - 炮兵压力测试结果在 200 和 502/400 中都有吗?

我有一个微服务系统,由几个微服务组成,我正在使用 Artillery 运行压力测试。

这是测试文件:

这是部分报告:

所以端点/employees-endpoint1出现了两次,一次是 status 200,一次是 status 502

端点/clients-endpoint1得到了一次200和之后400

为什么会这样?两种状态?

0 投票
0 回答
52 浏览

graphql - 在 easygraphql + 火炮上运行断言

我计划将 EasyGraphQL 与 Artillery 结合使用,将健康检查+负载测试集成到我正在处理的项目中。我已按照教程https://easygraphql.com/docs/easygraphql-load-tester/usage/进行操作,一切似乎都运行正常,但我不知道如何添加断言,例如检查 API 的响应。

主要原因是保存已创建对象的 ID,然后将它们全部从数据库中删除,因为我不想保存此测试数据。由于我计划定期运行这些测试,因此我最终会得到很多需要清除的信息,并且我想在下一个请求中使用来自上一个请求的响应来链接请求。有任何想法吗?

例如,如何使用返回的 ID 执行后续请求

0 投票
0 回答
398 浏览

docker - Nginx 工作进程

我正在使用 docker nginx 作为我在 docker 容器中扩展的后端 rails api 应用程序的反向代理。

在性能测试期间,我收到这样的错误:

我发现我有一个默认值 worker_processes = 1。之后我将此值更改为 8(在 8 个 vCPU ubuntu 服务器上),但仍然出现此错误。

看着 htop 似乎其他工人在高负荷下无法工作......

在此处输入图像描述

这是我的 nginx.conf

0 投票
1 回答
232 浏览

node.js - 有没有办法用炮兵上传文件?

有没有用火炮测试上传文件(表单数据)的好方法?http-file-uploads 插件仅适用于 Artillery Pro。我尝试了在此线程中给出的解决方案https://github.com/artilleryio/artillery/issues/320编写了一个 beforeRequest Js 方法,但没有成功。

我在文件的表单数据中的字段称为“文件”

0 投票
0 回答
18 浏览

node.js - Artillery.io js 测试?

有没有办法通过从 node/js 代码运行它们来在火炮上构建负载/浸泡测试?

我一直在看示例,但看起来它只是 yaml 驱动的。

0 投票
0 回答
28 浏览

node.js - 无法达到 60K 到 1L 的并发连接连接数

我在 AWS t2.xlargeec2 机器上的 NodeJS 上运行了套接字 IO 应用程序。我试图在t2.xlargeAWS 机器上达到 60K 并发端口。

我做了以下更改ec2

/etc/sysctl.conf文件:

/etc/security/limits.conf

我正在使用artillery负载测试。当我们达到约 30K 端口时,artillery开始显示错误:

我使用netstat -anp|grep ESTABLISHED | grep -w 80 > ports命令来检查打开的并发端口。

0 投票
0 回答
117 浏览

javascript - Artillery WebSocket 自定义函数

我一直在使用 Artillery 进行一些 HTTP 测试,并且效果惊人。现在我正在尝试使用自定义函数在 WebSocket 上运行测试。我们有一个自定义客户端来连接到 WS 服务,所以我想在函数调用之前打开客户端连接并在所有测试完成后关闭该客户端连接,所以我不需要为每个请求打开/关闭客户端. 我的测试如下:

wsCustomTest 就像

0 投票
1 回答
136 浏览

html - Artillery 是否支持 GET 和 POST 以外的 html 方法?

我正在尝试开发使用 Artillery 对应用程序进行负载测试的场景。有问题的应用程序使用 GET、POST、PUT 和 DELETE html 方法,但我能够找到的所有可用文档只讨论我假设的 get: 和 post: 关键字(在场景下:-flow:)将使用 GET 和 POST 方法。我发现至少有两个来源,包括artillery.io 中的一个,暗示支持 PUT、PATCH 和 DELETE,但没有提供有关如何在 http 请求上指定 http 方法的信息。有人可以建议如何在炮兵场景中指定 PUT 和 DELETE 请求吗?

(顺便说一句,除了这里提到的 5 个之外,至少还有 10 个其他 html 方法。)

0 投票
1 回答
218 浏览

performance-testing - 火炮不发射场景

我正在运行我的节点服务器,http://localhost:5000并想使用火炮进行性能测试。

这是我的yaml文件:

但我得到了这个结果(似乎测试根本没有运行)

知道我做错了什么吗?