Tooling

Playwright is wat mij betreft de nummer één testautomatiseringtool voor het automatiseren van browsers. Dit relatief nieuwe framework voor end-to-end testen is ontworpen om ontwikkelaars en testers te helpen bij het moeiteloos automatiseren van webbrowsers. In mijn huidige opdracht ben ik in aanraking gekomen met deze krachtige tool. Doordat Protractor niet meer werd ondersteund door Google, moest de organisatie noodgedwongen op zoek naar een nieuwe tool. Inmiddels heb ik een aantal weken ervaring met Playwright en deel ik graag mijn ervaringen. In dit blogartikel licht ik de voor- en nadelen toe en geef ik een aantal tips die jou op weg helpen wanneer je er zelf mee aan de slag gaat.

Wat is Playwright?

Playwright is een open-source automatiseringstool die wordt gebruikt voor het automatiseren van webbrowsers. De tool is in 2020 ontwikkeld door Microsoft en bedoeld om ontwikkelaars en testers te helpen bij het automatiseren van browserinteracties voor webontwikkeling, webtesting, web scraping en andere taken die interactie met webapplicaties vereisen.

"Playwright is wat mij betreft de nummer één testautomatiseringtool voor het automatiseren van browsers."

Wat zijn de voordelen van Playwright?

  • Een van de grootste voordelen van Playwright is dat het cross-browser compatibiliteit Het ondersteunt meerdere browsers, waaronder Chromium, Firefox en WebKit. Hierdoor kun je dezelfde tests schrijven en uitvoeren op verschillende browsers zonder belangrijke wijzigingen aan te brengen in je code.
  • Playwright maakt gebruik van websockets. In een typische browserautomatiseringstaak moet een automatiseringstool zoals Playwright communiceren met de webbrowser om opdrachten uit te voeren, zoals het klikken op elementen, gegevens ophalen of navigeren naar verschillende pagina’s. Websockets worden gebruikt als een communicatiemiddel tussen de Playwright-bibliotheek en de browserinstanties die het beheert. Websockets stellen Playwright in staat om asynchroon met meerdere browserinstanties te communiceren. Hierdoor kunnen parallelle tests worden uitgevoerd. Dit is een aanzienlijke verbetering ten opzichte van traditionele testautomatiseringstools.
  • De parallelle uitvoering van tests zorgt ervoor dat Playwright ontzettend snel is. De tool heeft een snellere uitvoering van taken in vergelijking met andere tools, zoals Selenium. Met Playwright wordt de testtijd aanzienlijk verkort en dit resulteert in een efficiëntere ontwikkelingscyclus.
  • Playwright biedt de mogelijkheid om zowel headless als headful (zichtbare) browsers te gebruiken. Dit betekent dat je tests kunt uitvoeren zonder dat er een grafische gebruikersinterface wordt weergegeven. Hierdoor kunnen geautomatiseerde tests op de achtergrond draaien. Daarnaast is het ook mogelijk om testen uit te voeren in een zichtbare browser.
  • Playwright ondersteunt verschillende programmeertalen, waaronder Java, JavaScript, TypeScript, Python, .NET en C#. Bovendien is Playwright cross-platform en werkt het op Windows, macOS en Linux. Dit betekent dat je tests op verschillende besturingssystemen kunt uitvoeren zonder veel aanpassingen.
  • De documentatie is heel uitgebreid en up-to-date. Als je in UI mode dingen runt, kun je iedere seconde inkijken om te achterhalen waar iets vastloopt.
  • Playwright bevat de handige functie auto-waiting voor het omgaan met wachttijden en timeouts. Hierdoor wordt het gemakkelijker om te wachten op elementen of gebeurtenissen zonder handmatige vertragingen toe te voegen aan je tests.

Heeft de tool ook nadelen?

Een belangrijk nadeel van Playwright is dat het uitsluitend is gericht op het automatiseren van webbrowsers en geen volledige ondersteuning biedt voor het testen van mobiele applicaties. Als je mobiele apps wilt testen, moet je aanvullend een andere automatiseringstool, zoals bijvoorbeeld Appium of Selendroid, overwegen. Microsoft is bezig met het ontwikkelen van een beta versie voor Android.

Mijn tip voor nieuwe gebruikers

Wanneer je gewend bent om met een front-end testautomatiseringstool te werken, welke dan ook, dan is de overstap naar Playwright heel eenvoudig. De syntax is misschien nét iets anders dan bij andere tools, maar absoluut vergelijkbaar. Je hoeft dus geen cursus of iets dergelijks te volgen. Het heeft mij ongeveer twee weken gekost om de tool volledig eigen te maken. Hierbij heb ik veel gebruik gemaakt van de website waarop uitgebreide documentatie en ondersteuning beschikbaar is.

Heb jij een vraag over Playwright of kun je binnen jouw organisatie hulp gebruiken bij het gebruik ervan? Aarzel dan niet om contact op te nemen.

 

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.

Bijtanken bij Bartosz

Data & Testen

Mei14

Bij onze klanten komen we op verschillende manieren in contact met data. Hoe ga je als tester om met de (technische) uitdagingen die hierbij komen kijken? En wat voor impact heeft deze dataficatie op onze fysieke leefomgeving?

 

Mijn Paarsz