Releases: artilleryio/artillery
Artillery v2.0.22
Highlights
- Add support for writing Artillery scripts in TypeScript (#3436 #3439). - Hello World example.
- The
report
command has ben removed. As an alternative consider setting up Artillery Cloud for visualizing test metrics, or setting up an OpenTelemetry integration with an external monitoring system with thepublish-metrics
plugin. (#3431) - Node.js v22.13.0 (current active LTS) is the recommended version of Node.js for running Artillery now
- Artillery's official Docker image (https://hub.docker.com/r/artilleryio/artillery) includes Chromium for Playwright now (#3449 #3445)
- The Docker image is now based on Debian rather than Alpine (#3449)
- Upgrade to Playwright v1.49.1 (#3427)
Fixes & improvements
- Fix issue where
config.target
could not be set to the value of a remote environment variable (#3430) - Fix issues that led to more tasks being launched on Fargate than requested in scenarios where Fargate is temporarily out of capacity (#3432)
- Make sure that stopping Playwright tracing is failsafe (#3443)
- Routine dependency upgrades
with thanks to @dirkluijk @andrewvc
Artillery v2.0.21
Core
- Add
--env-file
flag as an alternative for--dotenv
flag. This makes it consistent with the Node.js--env-file
flag. The--dotenv
flag will be deprecated in a future release (#3376) - Add tracking of response times by HTTP status code. A new set of metrics (e.g.
http.response_time.2xx
orhttp.response_time.5xx
) is now reported to provide more granular view of response times in a test (#3326) - Fix an issue that caused incorrect "multiple batches of metics" warnings when running tests with
pause
phases (#3331)
Playwright
- Upgrade Playwright to v1.48.0
Azure
- Fix: Make values loaded from an env file with
--dotenv
/--env-file
flag available to workers containers (rather than just the Artillery process running inside the worker) (#3376) - Stagger startup of containers in large load tests to prevent rate limit errors from Azure services (#3371)
OpenTelemetry
- Add support for setting resource-level attributes (#3335)
Artillery Cloud
- Send CI related information to Artillery Cloud. This makes the following information available in Artillery Cloud:
- Whether a test run was triggered in CI or not, and which CI service was used
- For tests triggered in GitHub Actions - provide a link back to the job run on GitHub Actions
Dependencies
- Upgrade
json-plus
to address a critical security vulnerability (#3369)
With contributions from @hassy @Archangelza1 @dirkluijk
Artillery v2.0.20
Core & CLI
- New: add ability to set a custom content type for
multipart/form-data
form fields (#3316) — docs - Fix: don't print an unnecessary warning when
loadAll
is not set by @hassy in (#3303) - Remove legacy Artillery Pro integration (#3320)
Artillery Cloud
- New: add
--name
option to set the name of the test to be shown in Artillery Cloud dashboard (#3317) — docs - Improve pre-flight checks when recording reports to Artillery Cloud to detect potential firewall/proxy issues (#3314)
- Fix: include organization IDs in the test report URLs
Azure
- Fix: bundle separate config files provided with
--config
option correctly (#3312) - Fix: bundle dotenv files provided with
--dotenv
correctly (#3313) - Fix: bundle custom
.npmrc
and other dotfiles correctly (#3312) - Improve error handling and reporting for container provisioning errors (#3313)
Artillery v2.0.19
CLI
- Fix bug preventing custom code using ES modules from loading on Windows (#2662)
- Prevent setting individual CSV rows in context when using
loadAll
(#3277)
Fargate
- Add ability to set DNS servers using the
--container-dns-servers
flag when running on ECS/EC2 (#3301) - Add ability to override the ephemeral storage amount for each task via the
--task-ephemeral-storage
flag (#3301)
Playwright
- Upgrade Playwright to v1.45.3 (#3294)
With contributions from @bernardobridge, @hassy and @thrandale
Artillery v2.0.18
Artillery v2.0.17
HTTP
Playwright
- Upgrade Playwright to v1.45.0 (#3245)
With contributions from @bernardobridge @InesNi
Artillery v2.0.16
AWS ECS
- Fix issue preventing running tests on AWS ECS when using an EC2 launch type (#3192, a49e371)
- Wait for IAM role for ECS workers to be ready when running tests for the first time (#3198)
- Add
run:ecs
andrun-ecs
aliases torun-fargate
command (78683fa)
CLI
- Update
tough-cookie
package to v5 to prevent usage of deprecated package (#3209) - Prevent setting the wrong value when using the
--platform
flag (#3227)
With contributions from: @bernardobridge @InesNi @hassy
Artillery v2.0.15
AWS Lambda
- AWS Lambda support is now considered stable (#2815)
- Fix error happening when multiple Lambda tests were created in parallel for the first time (#2802)
- Remove
--container
flag (allrun-lambda
tests now run using Lambda Container Images) (#2816) - Exit with non-zero exit code when expectations fail in AWS Lambda workers (#2808)
AWS Fargate
- Prevent CLI hanging when workers are terminated early (e.g. due to early termination when running tests on Fargate Spot) #3190
- Exit with non-zero exit code when expectations fail in AWS Fargate workers (#2808)
Playwright
- Update Playwright version to 1.44.1 (#3189)
CLI
- Make HTTP tests take
strictCapture
option into account when set in defaults (#2795)
With contributions from: @bernardobridge @hassy
Artillery v2.0.14
This is a hotfix release to fix an issue introduced in Artillery v2.0.13 which would lead to excessive logging when running Playwright tests.
Artillery v2.0.13
AWS Lambda
Lambda Container Images
Artillery will now always use Lambda Container Images to run tests on AWS Lambda. The --container
flag introduced in v2.0.12 is no longer required and will be removed in the next release. Creating Lambda functions from .zip archives is no longer supported.
All existing tests should continue running normally without needing any changes. If you run into any issues please open an issue.
This change brings improved startup times for tests running on AWS Lambda and brings AWS Lambda support to parity with AWS Fargate.
Fixes
- Increase startup timeout time for Lambdas running in a VPC (#2778)
- Exit with non-zero code if a Lambda worker fails (#2766)
- Fix issue that could lead tests to crash when triggered from a Windows machine (#2767)
- Expose current worker ID to Lambda workers as
WORKED_ID
environment variable (#2754)
Playwright
- Accept
0
values fordefaultNavigationTimeout
anddefaultTimeout
settings (#2786) - A warning will be printed if a Playwright
testFunction
cannot be found (#2782)
Monitoring & observability (publish-metrics
plugin)
- Add
url
attribute to page spans when tracing is enabled for Playwright tests (#2779) - Fix issue which could cause Core Web Vitals to not be set as span attributes (#2779)
- A
test_id
attribute is no longer set on all metrics. The built-in$testId
variable may be used to set that attribute when needed (#2779) - Request timing phases such as DNS lookups and SSL handshake timings are now recorded as attributes instead of spans for HTTP tests (#2779)
Slack integration
Fix a number of issues that prevented the Slack plugin from working with tests running on AWS Fargate and AWS Lambda (#2754)
WebSocket
- Errors thrown by hook functions will now be tracked and reported (#2783)
With contributions from: @bbeesley @HugoImaios @InesNi @bernardobridge @hassy