Artikel

Testautomatisering, Tooling

De afgelopen jaren heb ik veel ervaring opgedaan met zowel de high-code tool Protractor als met de low-code tool Tosca. Mijn opdrachtgever besloot vorig jaar om de overstap te maken van Protractor naar Tosca, en ik wil graag mijn ervaringen en inzichten delen over deze transitie. In dit blogartikel bespreek ik de verschillen tussen high-code en low-code tools, de voordelen en nadelen van beide tools, en de uitdagingen die we tegenkwamen bij de implementatie. Daarnaast geef ik een aantal belangrijke take-aways mee voor organisaties die een vergelijkbare overstap overwegen.

High-code vs low-code: wat is het verschil?

Bij het bespreken van de overstap van Protractor naar Tosca is het belangrijk om eerst het verschil tussen high-code en low-code tools te begrijpen

High-code tools zoals Protractor bieden veel flexibiliteit door uitgebreide maatwerkopties. Ze stellen testers in staat om veel controle te hebben over hun testautomatisering, maar dit komt wel met de noodzaak om (meer) code te schrijven. Protractor is bijvoorbeeld een open-source tool voor het testen van webapplicaties, waarbij je handmatig code schrijft voor testscenario’s.

Low-code tools zoals Tosca daarentegen zijn meer modelgebaseerd, waarbij testers met minimale kennis van code hun testcases kunnen opzetten en uitvoeren. Dit maakt low-code tools toegankelijker voor testers die minder technische ervaring hebben, en kan ervoor zorgen dat testautomatisering sneller opgezet kan worden.

In de praktijk betekent dit dat de overstap van high-code naar low-code ook de manier verandert waarop teams werken en de technische vaardigheden die nodig zijn.

Protractor: de high-code tool

We hebben Protractor afgelopen jaren gebruikt voor het automatiseren van webapplicaties. Protractor vereist een diepgaande kennis van JavaScript en biedt uitgebreide mogelijkheden voor maatwerk. Testen in Protractor worden vaak geschreven in code, en een typische test bestaat uit een aantal regels die acties uitvoeren op een webpagina, zoals klikken of gegevens invoeren, en vervolgens verificaties uitvoeren.

Voordelen van Protractor:

  • Robuustheid: Protractor is een lichte tool die snel werkt en goed integreert met Node.js. Het biedt de mogelijkheid om snel duizenden tests uit te voeren.
  • Flexibiliteit: Het biedt veel ruimte voor maatwerk en is geschikt voor technische testers die ervaring hebben met programmeren.

Nadelen van Protractor:

  • Technische kennis vereist: Nieuwe testers hebben vaak tijd nodig om vertrouwd te raken met de tool, wat de leercurve vergroot.
  • Logging en foutopsporing: Door de snelheid van de softwareontwikkeling worden logging en gedetailleerde foutopsporing vaak verwaarloosd, wat kan leiden tot een gebrek aan inzicht in de oorzaak van een mislukte test.
  • End of Life: Protractor werd aan het einde van 2023 als end-of-life verklaard, wat ons verplichtte om over te stappen naar een andere tool, met alle uitdagingen van dien.

Tosca: De low-code tool

Toen Protractor zijn einde bereikte, werd gekozen voor Tosca, een low-code testautomatiseringstool die modelgebaseerd werken mogelijk maakt. In tegenstelling tot Protractor is Tosca gebruiksvriendelijker en vereist het minder technische kennis om mee te werken.

Voordelen van Tosca:

  • Gebruiksvriendelijkheid: Tosca biedt een intuïtieve gebruikersinterface die het mogelijk maakt om tests snel op te zetten door bijvoorbeeld webpagina’s te scannen en hier vervolgens acties aan te koppelen, zonder veel code te schrijven.
  • Veelzijdigheid: Tosca ondersteunt verschillende soorten testen, zoals webapplicaties, API’s, PDF’s en zelfs Salesforce en SAP. Dit maakt het mogelijk om verschillende systemen te integreren in één testscenario.
  • Snelheid van implementatie: Voor teams met minder technische testers is Tosca snel te leren en gemakkelijk te implementeren. Vooral voor eenvoudiger testwerk is Tosca zeer efficiënt.

 Nadelen van Tosca:

  • Licentieproblemen: Tosca is geen open-source tool, wat betekent dat het verkrijgen van een licentie kosten met zich meebrengt. Dit kan een belemmering zijn voor het goed implementeren van de tool. Dit vergeleek ik met de eenvoud van het opzetten van Protractor, deze tool kun je binnen 10 minuten werkend hebben zonder licentie.
  • Beperkingen in controle: In tegenstelling tot Protractor, is het bij Tosca makkelijker om gedetailleerde foutanalyse te doen. Echter mist de tool het vier-ogenprincipe door middel van pull requests die je bij Protractor kunt gebruiken om de kwaliteit van de code te waarborgen.
  • Afhankelijkheid van Tricentis: Tosca is een propriëtaire tool, wat betekent dat je afhankelijk bent van de ontwikkelaar voor updates en nieuwe functies. Bij open-source tools kun je zelf sneller ingrijpen of hulp zoeken binnen de community.

"In tegenstelling tot Protractor is Tosca gebruiksvriendelijker en vereist het minder technische kennis om mee te werken."

De implementatie: van Protractor naar Tosca

De overstap van Protractor naar Tosca was geen eenvoudige taak. Het is niet mogelijk om Protractor-testen zomaar over te zetten naar Tosca, omdat beide tools heel verschillend werken. We moesten dus echt vanaf nul beginnen, maar wel met een aantal voordelen in de rugzak.

Stappen die we hebben genomen om de overstap soepel te laten verlopen:

  1. Training en certificering: We hebben ervoor gezorgd dat iedereen binnen het team de benodigde kennis had door cursussen en certificaten van Tricentis te volgen. Dit was essentieel om iedereen snel up-to-speed te krijgen met Tosca.
  2. Hands-on begeleiding: Tricentis stuurde trainers naar onze locatie om hands-on sessies te geven, waarbij we concrete testscenario’s in Tosca gingen automatiseren.
  3. Oprichting van een projectgroep: We hebben een projectgroep opgericht om de testen te selecteren die we wilden migreren en de beste werkwijzen voor Tosca vast te leggen.
  4. Structuur en herbruikbaarheid: We hebben een duidelijke structuur opgezet binnen Tosca, zodat iedereen wist waar ze bepaalde testen en gegevens konden vinden. Dit zorgde ervoor dat herbruikbaarheid en onderhoudsvriendelijkheid gewaarborgd bleven.

Conclusie: welke tool past bij jouw team?

De overgang van Protractor naar Tosca heeft ons geholpen om de kracht van low-code automatisering te benutten. Tosca heeft ons team in staat gesteld om sneller en efficiënter tests op te zetten, zelfs zonder diepgaande technische kennis. Dat gezegd hebbende, heeft Tosca ook zijn eigen uitdagingen, zoals de afhankelijkheid van licenties, kwaliteitscontrole van de testen en het feit dat Tosca ook functioneel gezien beperkingen heeft.

Voor teams met minder technische ervaring kan Tosca een uitstekende keuze zijn, terwijl high code tools wellicht beter geschikt zijn voor teams die veel flexibiliteit en maatwerk nodig hebben. De keuze tussen high-code en low-code hangt dus af van de behoeften en vaardigheden van je team.

Takeaways:

  • High-code tools zoals Protractor bieden meer flexibiliteit, maar vereisen diepgaande technische kennis.
  • Low-code tools zoals Tosca zijn gebruiksvriendelijker, maar je kunt tegen functionele beperkingen aanlopen.
  • Zorg voor goede training en begeleiding bij de implementatie van nieuwe tools, en richt een duidelijke structuur in om de testautomatisering soepel te laten verlopen.

Of je nu kiest voor een high-code of low-code tool, het belangrijkste is dat de tool goed past bij de vaardigheden van je team en de eisen van je organisatie.

 

Wil je ons nieuwste Paarsz magazine per post ontvangen? Laat dan je gegevens achter.

Ontwerp zonder titel (19)

Werken bij Bartosz?

Vincent Verhelst

Geïnteresseerd in Bartosz? Dan ga ik graag met jou in gesprek. We kunnen elkaar ontmoeten met een kop koffie bij ons op kantoor. Of tijdens ontbijt, lunch, borrel of diner op een plek die jou het beste uitkomt. Jij mag het zeggen.