You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I run tests concurrently with a Dashboard reporter (i.e. a reporter that relays the events like reportTaskStart, reportTestStart, etc., to a remote URL) on a slow CI machine.
What is the Current behavior?
TestCafe does not awaits for the first runner to complete reporter.reportTaskStart before other concurrent runners send their reporter.reportTestStart. So, my reporter sends reporter.reportTestStart just after reporter.reportTaskStart, before the latter is finished. Sometimes reporter.reportTestStart reaches the server before reporter.reportTaskStart, which breaks server-side logic.
On the attached screenshot (I use a huge concurrency factor to reproduce the issue locally, on CI -c 4 is enough), you can see 11 concurrent runners sending their reportTestStart before the first runner receives a successful response for reportTaskStart. Three of these reportTestStart requests reach the server before reportTaskStart - which causes the errors.
What is the Expected behavior?
TestCafe awaits for the first runner to complete reporter.reportTaskStart before other concurrent runners send their reporter.reportTestStart.
What is your public website URL? (or attach your complete example)
Run tests concurrently with a Dashboard reporter. Use the arguments provided below. I specify a huge concurrency factor to reproduce the issue locally. On CI, it's reproduced with -c 4.
To print debug info, as shown on the screenshot, I add console.log to the Dashboard reporter to reportTaskStart (as indicated) and reportTestStart (the first line).
What is your Scenario?
I run tests concurrently with a Dashboard reporter (i.e. a reporter that relays the events like reportTaskStart, reportTestStart, etc., to a remote URL) on a slow CI machine.
What is the Current behavior?
TestCafe does not awaits for the first runner to complete
reporter.reportTaskStart
before other concurrent runners send theirreporter.reportTestStart
. So, my reporter sendsreporter.reportTestStart
just afterreporter.reportTaskStart
, before the latter is finished. Sometimesreporter.reportTestStart
reaches the server beforereporter.reportTaskStart
, which breaks server-side logic.On the attached screenshot (I use a huge concurrency factor to reproduce the issue locally, on CI
-c 4
is enough), you can see 11 concurrent runners sending theirreportTestStart
before the first runner receives a successful response forreportTaskStart
. Three of thesereportTestStart
requests reach the server beforereportTaskStart
- which causes the errors.What is the Expected behavior?
TestCafe awaits for the first runner to complete
reporter.reportTaskStart
before other concurrent runners send theirreporter.reportTestStart
.What is your public website URL? (or attach your complete example)
about:blank
What is your TestCafe test code?
Your complete configuration file
No response
Your complete test report
On the screenshot
Screenshots
Steps to Reproduce
-c 4
.To print debug info, as shown on the screenshot, I add
console.log
to the Dashboard reporter toreportTaskStart
(as indicated) andreportTestStart
(the first line).TestCafe version
1.19.0
Node.js version
No response
Command-line arguments
testcafe chrome:headless many-tests.js -c 12 -r dashboard
Browser name(s) and version(s)
No response
Platform(s) and version(s)
No response
Other
No response
The text was updated successfully, but these errors were encountered: