-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
HTTP2 fetch streaming fails on cypress test run #27333
Comments
Currently Cypress does not support HTTP/2. Please follow thus ticket for updates. Closing this issue as a duplicate. |
@nagash77 I was told to create a ticket as per this comment in the ticket you mentioned: #3708 (comment) |
Oh I see that @lmiller1990 suggested you log your use case where HTTP/2 was breaking your tests. Sorry for the confusion. Are you able to provide a reproducible example? |
@nagash77 Sorry for the delay - it took some time to replicate it locally - please see attached. |
This issue has not had any activity in 180 days. Cypress evolves quickly and the reported behavior should be tested on the latest version of Cypress to verify the behavior is still occurring. It will be closed in 14 days if no updates are provided. |
This issue has been closed due to inactivity. |
Current behavior
Our project as switched over to using http2 to take advantage of streaming - but this has had a knock on effect running the automation tests. As they fail due to
net::ERR_H2_OR_QUIC_REQUIRED
.Outline:
When the body of a PUT or POST request made using fetch contains a stream (as opposed to text or a Blob) fetch requires the connection to be HTTP/2. We need to use a stream for certain endpoints so we can get an approximation of the upload progress. Initially all PUT and POST requests were made using streams and 100% of them failed in Cypress.
Workaround: We switched to only use streams when we wanted to track progress. Requests that didn't use streams then started to work because they were all downgraded to HTTP/1.1, but 20% of our tests still fail as streaming is required.
Desired behavior
Automation tests to run and complete like normal
Test code to reproduce
N/A - as this is code within project
Cypress Version
12.16.0
Node version
18.15.0
Operating System
macOS 12.5.1
Debug Logs
Other
Looking at the debug - its not showing the request that failed - only the requests leading up to it.
The text was updated successfully, but these errors were encountered: