Open
Description
Hello,
I managed to run several Artillery test cases (.yml extension) in parallel using npm package concurrently. All test cases have the same processor (some common code to create credentials and generating some payloads) - a .ts file.
When running 2 or more test cases in parallel I can see the following in logs:
[0] - first test case, [1] - second test case
[1] Test run id: t4ngj_9j35qn54q88fxx3wgn3x5rnjrjkby_yfbb
[0] Test run id: tjcx9_x4hjtxh43rkteymj74nffk4njdyb3_d5nz
[0] Bundled Typescript file into JS. New processor path: C:\repositories\api-testing-demo\endpoints\internal\dist\users.js
[1] Bundled Typescript file into JS. New processor path: C:\repositories\api-testing-demo\endpoints\internal\dist\users.js
[1] Bundled Typescript file into JS. New processor path: C:\repositories\api-testing-demo\endpoints\internal\dist\users.js
[0] Bundled Typescript file into JS. New processor path: C:\repositories\api-testing-demo\endpoints\internal\dist\users.js
[0] WARNING: Failed to remove typescript bundled file: C:\repositories\api-testing-demo\endpoints\internal\dist\users.js
[0] Error: ENOENT: no such file or directory, unlink 'C:\repositories\api-testing-demo\endpoints\internal\dist\users.js'
[0] at Object.unlinkSync (node:fs:1954:11)
[0] at C:\repositories\api-testing-demo\node_modules\artillery\lib\cmds\run.js:429:16
[0] at async gracefulShutdown (C:\repositories\api-testing-demo\node_modules\artillery\lib\cmds\run.js:411:7)
[0] at async EventEmitter.<anonymous> (C:\repositories\api-testing-demo\node_modules\artillery\lib\cmds\run.js:314:7) {
[0] errno: -4058,
[0] code: 'ENOENT',
[0] syscall: 'unlink',
[0] path: 'C:\\repositories\\api-testing-demo\\endpoints\\internal\\dist\\users.js'
[0] }
from what I can understand is that Artillery converts the code (processor file) in .js, runs the test case and at the end tries to remove the .js file generated.
I see two solutions:
- every test case should have it's own processor (unique) - which is not feasible at all.
- disable the deletion of .js file after the test case is executed to not impact other test cases that use the same processor file.
I do not want to move all things to JavaScript, is there a way to make Artillery let those generated files alone? or is there a good solution to run test cases in parallel (something like playwright with sharding)?
Metadata
Metadata
Assignees
Labels
No labels