I'm quite surprised to see the overwhelming negativity towards cypress here.
I recently started using it in a small project and I'm really enjoying myself. I mainly use cypress for high level UI testing and I mock my sever.
I found the server mock tool (route and route2) brilliant. I find the syntax for browser commands easy (visit, click, get). Using mocha with should and chai is fine.
Anyways, apart from some minor problems (you can't select a single test to run), I really love cypress. Compared to last time I used selenium, it's such a difference. Especially that cypress just seems to be one holistic package that works. Can't say the same for selenium.
I'm using it for a Vue project at work, and it's really easy to use. Had to get used to chaining the commands, and working around a few issues like when I needed to access something JS object (simply exposed the service object I needed globally when Cypress tests were executed, and then verified what I needed).
Used Selenium 1 and 2 in the past, and Cypress is definitely much easier. Can't say if the current Selenium is better though. But being able to reply the DOM states, and record videos, without needing to install other tools/libs is also very convenient.
I can see what people find annoying about cypress but to me, it's "cleverness" and tight browser integression provides such a much better experience than anything else I've used.
It is not perfect but I think they have the correct idea of how web e2e tests should work and I hope they will keep improving the experience as time goes on.
I recently started using it in a small project and I'm really enjoying myself. I mainly use cypress for high level UI testing and I mock my sever.
I found the server mock tool (route and route2) brilliant. I find the syntax for browser commands easy (visit, click, get). Using mocha with should and chai is fine.
Anyways, apart from some minor problems (you can't select a single test to run), I really love cypress. Compared to last time I used selenium, it's such a difference. Especially that cypress just seems to be one holistic package that works. Can't say the same for selenium.