It is important for us to take into account the satisfaction of our users. That's why we decided to take you behind the scenes of the Cypress tool, allowing us to test our platform to improve the user experience as much as possible.
In addition to unit and component testing made with Jest Framework, we were looking for an E2E (end-to-end) tool to simulate and test the full user journey on the Eden AI Platform.
We had heard a lot about a tool called Selenium but it seemed quite complicated to integrate for non-experimented automation engineers.
Our research led us to a more recent tool: Cypress.
When compared to other automation frameworks, Cypress is more universal because it is written in JavaScript and based on Mocha and Chai. It also uses Node.js when running in browsers. Javascript is the main language for our front-end developers team so it seemed like an obvious choice.
Cypress consists of a free, open source, locally installed application and a Dashboard Service for test’s recording.
Cypress also provides features that will make our tests more efficient :
In addition to punctual testing with the Cypress interface, we wanted to add the E2E testing process to our CI/CD.
When a new feature is pushed to a certain branch of our repository, circle CI will launch headless Cypress tests by adapting Cypress environment with the current git branch. For example : when a feature is added on our staging environment, Cypress will test the user journey on the staging app.
We also needed to schedule automatic e2e tests each day.
The integration of Cypress to Circle CI was pretty easy. Cypress provides an orb to correctly install, cache and run Cypress with very little effort.
Circle CI running Cypress tests
In conclusion, we used a E2E testing tool called Cypress, allowing us to test our platform to give the best performance for our users. We also added it to our CI-CD, which was a relatively easy process. If you have any questions, you can email me: françois.humbert@edenai.co.
You can directly start building now. If you have any questions, feel free to schedule a call with us!
Get startedContact sales