-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: correlate prerequests in order instead of reverse order #27892
fix: correlate prerequests in order instead of reverse order #27892
Conversation
4 flaky tests on run #51326 ↗︎Details:
|
Test | Artifacts | |
---|---|---|
... > displays each run with correct information |
Test Replay
Output
Screenshots
|
specs_list_e2e.cy.ts • 1 flaky test • app-e2e
Test | Artifacts | |
---|---|---|
... > saves the filter when navigating to a spec and back |
Test Replay
Output
Screenshots
|
specs_list_latest_runs.cy.ts • 1 flaky test • app-e2e
Test | Artifacts | |
---|---|---|
App/Cloud Integration - Latest runs and Average duration > when no runs are recorded > shows placeholders for all visible specs |
Test Replay
Output
Screenshots
|
debug.cy.ts • 1 flaky test • app-e2e
Test | Artifacts | |
---|---|---|
App - Debug Page > shows information about a failed spec |
Test Replay
Output
Screenshots
|
Review all test suite changes for PR #27892 ↗︎
@@ -331,12 +331,14 @@ export class Http { | |||
|
|||
const onError = (error: Error): Promise<void> => { | |||
ctx.error = error | |||
if (ctx.req.browserPreRequest) { | |||
if (ctx.req.browserPreRequest && !ctx.req.browserPreRequest.errorHandled) { | |||
ctx.req.browserPreRequest.errorHandled = true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need a test for the errorHandled
logic?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added: 54321fc
(#27892)
Released in This comment thread has been locked. If you are still experiencing this issue after upgrading to |
Additional details
Historically, the proxy correlation logic used a stack for requests that matched exactly. This was because there were several cases where items were not going through the proxy. We have since learned of the reasons these items don't go through the proxy (e.g. failed requests, cached requests, etc.). Since we can now reasonably rely on everything going through the proxy that needs to, we want to actually store the requests in a queue so that requests get matched in the order they were received. This fixes an issue we have seen in Test Replay where requests were correlated in mismatched order.
How has the user experience changed?
n/a
PR Tasks
cypress-documentation
?type definitions
?