4 ms·
Cypress uses bluebird for their promise implementation which are A+ spec. [1] Also (nearly) every command in Cypress is a promise which allows you to make them
by azemetre 6y ago
Cypress uses bluebird for their promise implementation which are A+ spec. [1]
Also (nearly) every command in Cypress is a promise which allows you to make them then-able. [2]
I don't agree with using Cucumber for anything. The way most teams implement Cucumber makes it such a pain to write a test. I do like the suggestion of puppeteer tho. If you haven't heard of playwright [3] I'd look into that. From the same creator as puppeteer but was hired to work on playwright full time. They have the advantage of being to test on gecko, chromium, and webkit browsers which is really nice because IME anything Apple becomes such a pain to setup to properly test.
[1] https://docs.cypress.io/api/utilities/promise.html#Syntax https://docs.cypress.io/api/utilities/promise.html#Syntax
[2] https://docs.cypress.io/api/commands/then.html#Yields https://docs.cypress.io/api/commands/then.html#Yields
[3] https://github.com/microsoft/playwright https://github.com/microsoft/playwright
- inglor 6y agoIt would be really nice if people built more on native promises and not bluebird. There was a time when bluebird was really great and useful but I think native promises are the better option now. (Source: I maintain bluebird and worked a bit with the V8 team on promises in Chrome as part of being a Node maintainer)
- byteofmydream 6y agojQuery promises are good as well, but I'm writing from 2020 :)
- zimmund 6y agoOP shared an opinion backing it with links to more information. What are your disagreements? Could you give a fundamented counter-opinion besides your snarky response?
- byteofmydream 6y agoSorry but I can't provide more objective reasons why not use Cypress except that cypress is more about aggressive marketing and promotion, but not a useful tool for testing. I don't want to write node.js inside separate files, I want to use it without limitations, for manipulating with DOM and http. I want to use normal async/await, as all adequate people do nowadays while using ES. Even when I wanted to make multipart-form-data request I found that it's not possible using Cypress. But it's quite a trivial common thing, I didn't want something unique, or am I?