Iedere eerste vrijdag van de maand is het tijd voor de maandelijkse Deepdive, waarin we afgelopen vrijdag doken in TestProject, dus een TestProject Deepdive! TestProject is een tool die we, voor coronatijd, al eens voorbij zagen komen op de SeleniumConf in Londen. Daar waren we destijds met een aantal newspark-collega’s.
Bij veel newsparkers wekten we direct weer interesse, tijdens een newspark-maandmeeting, toen we bij een pitch de TestProject Deepdive als mogelijk onderwerp noemden. Velen haakten hierop in daarover graag meer te willen weten. Ook Rowald, onze MD, erkende dat hij de vraag naar TestProject steeds vaker voorbij ziet komen bij opdrachten. Duidelijk dus dat deze tool het zeker verdiende onderwerp te zijn van een van onze maandelijkse Deepdive sessies.
Op kantoor en digitaal
Met 6 man op kantoor en 1 digitaal aangehaakt persoon, gingen we van start met de TestProject Deepdive. Deze keer zonder een duidelijke workshop of trainer, maar met een gezonde dosis interesse. We begonnen met de groep in 3-en op te delen. Één team ging aan de slag met de TestProject SDK, één met API testen en één met de record- and playback-functie. Uiteindelijk hadden we zelfs nog even tijd om wat te spelen met het testen van mobiele apps. Ieder uur presenteerden we aan elkaar onze bevindingen door een kleine demo te geven met wat we tot dat moment hadden bereikt.
TestProject
TestProject is een opensource tool die verschillende functies biedt. Het valt onder Tricentis (van de grote gelicenseerde tool, Tosca), maar zij beweren dat TestProject altijd gratis blijft. Je kan er je GUI testen mee automatiseren, je API testen en je mobile app testen.
Om met TestProject aan de slag te gaan, installeer je eerst een client en maak je een account aan op de website www.testproject.io. Op die portal koppel je de client aan je profiel en je kunt van start. Dit kan onder andere met record and playback, maar ook met de beschikbare SDK. Dat is een soort wrapper van je webdriver, waarbij weer extra functies meekomen.
TestProject heeft legio plugins waardoor je alle stappen lijkt te kunnen automatiseren die je maar kan bedenken. Van drag & drop tot right mouse click en nog veel meer. Naast het op een toegankelijke manier kunnen beginnen met testautomatisering, biedt de tool je overzichtelijke rapportages aan. Daarmee is het heel makkelijk bij te houden wat je testresultaten zijn.
Onze TestProject Deepdive conclusie
Na 3 uur experimenteren met deze tool in de drie verschillende groepen, kwamen we tot een voorzichtige conclusie. De tool is zeer compleet om met testautomatisering te starten. Ondanks het feit dat je veel moet klikken om dingen te bereiken, is de tool erg gebruiksvriendelijk en neemt je mee aan de hand van overzichtelijke handleidingen. Je kan er snel mee aan de slag. TestProject bied je direct, met de zeer intelligente record and playback functie, de mogelijkheid scripts te maken om een end-to-end regressietest te automatiseren. Wellicht had je die anders met de hand gedaan. Hierin zit ook nog eens een functie die herkent of objecten in je HTML van plek zijn veranderd en je opties voor fout-paden geeft.
Wil je nog een verdiepingsslag verder? Dan biedt TestProject je daarvoor handvatten met een handige exportfunctie. Zo is het mogelijk je script zeer snel om te zetten naar bijvoorbeeld Python of Java code. Daarna kun je, vanuit je eigen IDE, met een development key en het gebruik van de SDK alsnog de uitgebreide functies van TestProject blijven gebruiken. Heel krachtig bij het gebruik van deze SDK is dat de tooling volledig voorziet in het bijhouden van de logging van je testruns; het enige wat je nodig hebt, is een internetverbinding en een lokale testagent. Alle stappen van je tests, en eventuele screenshots, logt TestProject automatisch in een eigen testrun op hun portaal. Deze logging wordt ook bijgehouden na het uploaden van je testproject naar het TestProject portaal en deze vervolgens laat aftrappen door middel van bijvoorbeeld een API uit je Azure DevOps project.
Na verloop van tijd wil je de scripts waarschijnlijk toch omzetten naar functie gebaseerde testen, terwijl record and playback zich natuurlijk meer lenen voor het maken van hele lange scripts. Echter, het begin is er dan in ieder geval al. Wij waren het met elkaar eens dat TestProject een uitstekend begin is om met je testautomatisering van start te gaan.
Mocht jij de handleidingen niet zo makkelijk te begrijpen vinden, neem gerust contact met ons op. Dan brengen we elkaar weer een stapje verder! Meer weten over de vorige deepdive sessie, check hier de laatste over performance testing. Wil je er de volgende keer ook eens bij zijn of geïnformeerd worden over de onderwerpen? Aanmelden kan bij Jurgen.