Open source:
Cypress.IO looks promising, but I have been holding off with starting to use it on a production project. My main reason that it is a commercial company and I cannot be sure they keep their open-source promise. I think development tools should be open-source. I don't want to invest my time and our company's resources if I am not sure I can re-use it for a future project or company due to budgeting restrictions.
The main question is are they going full open-source or do they have a premium model on features. It could be that their business model will be extra services like cloud parallel test running, but current their business models are unknown.
They keep saying they will open-source it, but we keep waiting.
Cross browser support:
Support for cross browser support is on their feature list. Worst case they build a wrapper around WebDriver. Still I wonder how important automated cross-browser testing is now-a-days. I would expect frameworks to take care of that, I haven't run into a lot of cross-browser issues lately. But then I am not supporting older IE and or mobile-apps at the moment. If you support only the modern latest browser then maybe just testing on Chrome could be sufficient.
Page Objects:
Another worry I have how to structure the code for maintainability. For a new testing framework I would expect to have that build-in.
Can I use the Page Object pattern? As far as page objects are
concerned, you should be able to use regular JavaScript functions and
aliasing with .as() to essentially recreate what page objects give
you.
https://docs.cypress.io/faq/questions/using-cypress-faq.html#Can-I-use-the-Page-Object-pattern
Cypress hasn't. The .as()
structure looks interesting, but I think in the end I would build my own wrappers around cypress which feels like it beats the purpose. Also I wonder if it would work with their visual test runner.
Usages:
Some consulting companies are using it and showing it off. Here is a recent meetup in the Netherlands. They have been pushing it in their communication for atleast a year now.
Conclusion:
I would keep waiting until it is released or take the risk of vendor-lockin.