Wat is Cypress?
Cypress is een testframework die qua architectuur er net iets anders uitziet dan Selenium, PlayWright en FitNesse. De verschillen zijn vooral merkbaar voor de gebruikers:
- Cypress is zowel een tool en een framework in één. Met een tool kun je de testscenario’s werkelijk opstellen, waarbij een framework de gekaderde omgeving is waar tools aan toegevoegd dienen te worden om de testscenario’s uit te voeren. Omdat Cypress beide in één is, betekent dit dat je een gebruiksvriendelijke testrunner krijgt, die gelijk tests kan uitvoeren. Aan het Cypress framework hoef je dan ook geen andere tools toe te voegen;
- Met de Cypress testrunner kun je testscenario’s uitvoeren en debuggen. Daarnaast biedt het je moderne functionaliteit om webbrowser testen te kunnen schrijven. Hierdoor heb je geen andere tools nodig dan Cypress zelf;
- Je schrijft testen voor Cypress in JavaScript met dezelfde structuur als developers gewend zijn met unit tests. Hierdoor kunnen zowel testers als developers de testen schrijven;
- Cypress voert testen uit net zoals een gebruiker dit zou doen, door kort te wachten als iets niet lukt, en het nog een keer te proberen. Hierdoor worden testen stabieler. ‘Flakiness’ ontstaat alleen nog maar door het schrijven van instabiele testen, en eventueel door de applicatie zelf;
- Cypress is specifiek geschreven voor end-to-end browser testen. Door deze specialisatie kan Cypress ook functionaliteit aanbieden die hier verder in gaat dan andere tools. Denk bijvoorbeeld aan het uitvoeren van component testen;
- Cypress bevat leesbare methodes voor de meest gangbare web interacties en assertions, zodat het schrijven van testen weinig tijd kost. De tijd om een test te schrijven is vergelijkbaar met het gebruik van een tool zoals FitNesse, waar de fixtures al bestaan. Met het bijkomende voordeel dat je in de Cypress testrunner je testen kunt debuggen.
Werken met Cypress
De testscenario’s in Cypress worden geschreven in JavaScript. Daardoor is de tool voor zowel testers met programmeerkennis als ontwikkelaars prima te gebruiken. Echter komt er, zoals bij elke vorm van testautomatisering, bij het schrijven van geautomatiseerde testen meer kijken dan enkel programmeerkennis. Zo zal er ook bepaald moeten worden wat er precies getest moet worden. Aangezien het testen en automatiseren van alle individuele onderdelen veel te veel tijd kost.
Daarnaast is het ook belangrijk om de testgevallen op herbruikbaarheid te analyseren en inventariseren. Hierdoor kan de ontwikkeltijd van nieuwe tests verkort worden. Dit zijn zaken waar de experts van Praegus u mee kunnen helpen. Wij hebben ruime ervaring met het opzetten en gebruiken van Cypress. Neem voor meer informatie vrijblijvend contact met ons op.