cypress: Cypress tests slow down or fail, UI is unresponsive in 3.3.1
Current behavior:
I noticed the some of our API, mainly XHR requests were continuously getting looped indefinitely when i upgraded Cypress from 3.2.0 to 3.3.0. So we rolled it back. Now we hit some other bugs, for which we wanted to upgrade to Cypress 3.3.1, once again i am getting a similar issue.
- For some of the tests some XHR requests are loading indefinitely.
- The Timer is not incrementing
- The Test Runner is not responding
------------ Configuration -------
{
animationDistanceThreshold: 5,
baseUrl: null,
blacklistHosts: null,
chromeWebSecurity: true,
defaultCommandTimeout: 20000,
env: {
CLIENT: 'demoaccount',
failOnSnapshotDiff: false},
execTimeout: 60000,
fileServerFolder: '',
fixturesFolder: 'cypress/fixtures',
hosts: null,
integrationFolder: 'cypress/integration',
modifyObstructiveCode: true,
numTestsKeptInMemory: 1,
pageLoadTimeout: 60000,
pluginsFile: 'cypress/plugins',
port: null,
reporter: 'spec',
reporterOptions: null,
requestTimeout: 5000,
responseTimeout: 30000,
screenshotsFolder: 'cypress/screenshots',
supportFile: 'cypress/support',
taskTimeout: 60000,
testFiles: '**/*.{spec.js,feature}',
trashAssetsBeforeRuns: true,
userAgent: null,
video: true,
videoCompression: 32,
videoUploadOnPasses: true,
videosFolder: 'cypress/videos',
viewportHeight: 660,
viewportWidth: 1000,
waitForAnimations: true,
watchForFileChanges: true}
-----------
Scenario failing- Validating the time/date picker yields a correct date in the calendar while scheduling email message (we are using cucumber library)
Desired behavior:
Things are fine in 3.2.0, except some known issues like forwarding of socket failures related error in HTTP api level, which causes some parse error (Internal Error 500) in cypress.
Steps to reproduce: (app code and test code)
I am sharing some snippet of the login code, which we use to login.
Cypress.Commands.add(
'login',
{
prevSubject: 'true'
},
(client, user) => {
cy.logout();
return cy.visit(`${BASE_URL}`).then(() => {
return cy.getCookie('csrftoken').then(({ value }) => {
return cy
.request({
url: `${client.url}/accounts/login`,
form: true,
method: 'POST',
body: {
username: client.users[user].email,
password: client.users[user].password,
csrfmiddlewaretoken: value
}
})
.then(() => client);
});
});
}
);
Versions
cypress - 3.3.1 electron - 61 OS - Mac OS Mojave 10.14.5
Attachments
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 1
- Comments: 20 (10 by maintainers)
@joydeep100 Let’s move discussion of this issue to #4668, since the history of this issue has become about something else. I thought we fixed the issue you’re experiencing in 3.3.2, but apparently I reproducing another potential cause of XHR flakiness all along 😛
@joydeep100 Yes, this issue was intended to be completely fixed in version 3.3.2.
@flotwig can you take a look at the HAR file?
Hello @flotwig @jennifer-shehane
I just wanted to verify that the issue is closed. Hence during my re-testing with version 3.3.2 i can see the same issue is occurring again and i confirm that this occurs only in electron.
One of the calls that (XHR) that kept looping was
mark_as/. I am attaching a HAR dump file for the network requests during the test. I hope that would be useful.cypress.har.txt
p.s. Please rename
cypress.har.txttocypress.harif your HAR analyser needs that.Released in
3.3.2.Nice! Thanks for your hard work. I verified that the latest build does, in fact, fix my issue. Looking forward to 3.3.2!
Since it was introduced in 3.3.0, it might help to do a
git bisectto narrow down the exact commit that introduced the issue.