Let's talk about Tools: Tosca

| Timo Simons en Annette Rabbelier over de voor- en nadelen van Tosca

Timo: We gaan het dus hebben over Tosca, de tool.

Annette: Heel handig bij regressietesten, is mijn eerste gedachte.

Timo: Ja, je kunt er geautomatiseerd mee regressietesten, zonder dat je hoeft te kunnen programmeren.

Annette: Tosca doorloopt bij een regressietest elk proces dat je wilt, zonder dat je dit eerst handmatig hoeft te hebben uitgevoerd.

Timo: Als je bijvoorbeeld een inlogpagina hebt en je laat de pagina scannen door Tosca, dan  krijg je een opsomming van wat er allemaal op de pagina staat. Je selecteert de onderdelen,velden en/of buttons waarmee je iets wilt en creëert hiermee een “module”.

Annette: Er wordt niet simpelweg een record-knop aangezet die de coördinaten van de muisbeweging opslaat. Bij “cosmetische” veranderingen op een pagina in nieuwere versies - een veld dat een centimeter naar links opschuift - herkent Tosca het betreffende veld daardoor nog steeds, aan de inhoud van de module die is gescand. Dat scheelt onderhoud bij regressietesten.

Timo: Tosca versie 9 heeft ook een record-button waarmee je kunt opnemen wat je teststappen zijn Dit is dus een extra mogelijkheid die Tosca sinds kort biedt.

Annette: Maar Tosca is in principe geen record en playbacktool. Je kunt Tosca gebruiken als record en playback, maar dan worden wel nog steeds de modules gescand.

Annette: Het fijne van Tosca is dat testsets hierdoor ook makkelijk overdraagbaar zijn naar een andere engineer.

Timo: Tosca is ook weinig foutgevoelig in het definiëren van testgevallen.

Timo: Het kan wel voorkomen dat op een pagina meerdere buttons staan met dezelfde ID. Dan is het lastig om aan te geven welke button je precies wilt laten testen, maar je kunt de testgevallen in Tosca op zo'n manier inrichten dat toch de juiste button wordt getest.

Annette: Die pagina had dan beter geprogrammeerd kunnen worden. De achterliggende IDs zouden verschillende namen moeten hebben.

Timo: Klopt, maar dit is niet altijd mogelijk. Als ze allemaal dezelfde ID hebben dan kan je Tosca bijvoorbeeld ook laten tellen, en op de vierde button met een bepaalde naam laten klikken die hij tegenkomt op een pagina. Wat ik ook veel gebruik is een zgn. Anchor. Dan kijkt hij naar een hoger gelegen item op die pagina (bijvoorbeeld een tussenkopje), en dan klikt hij op de button die daar weer onder staat.

Annette: Dat is een handige feature. Die kende ik nog niet.

Timo: Die zit in de nieuwste versie van Tosca. Ik kwam voor het eerst met Tosca in aanraking in 2011. Maar werk er pas mee sinds oktober 2015. De eerste versies zijn al op de markt sinds 2007.

Annette: Ik werk ook sinds 2011 met Tosca. Tosca werkt trouwens wel met licenties, terwijl andere tools open source zijn.

Timo: Tricentis noemt op de eigen website geen prijzen. Als je meerdere licenties tegelijk afneemt, of als je partner van Tricentis bent, krijg je vast korting. Zo niet, dan bedragen de kosten voor één licentie voor de duur van één jaar, zo ver ik weet, rond de 10.000 euro.

Annette: Daarnaast wordt er doorgaans door klanten gevraagd om gecertificeerde medewerkers. De Foundation opleiding + certificering kost 2.250 euro, de Advanced opleiding + certificering 1.550 euro. Beide opleidingen duren vier werkdagen.

Timo: Sinds kort kan de Foundation opleiding + certificering ook online gevolgd worden en is deze ca. 90% goedkoper.

Annette: Nadeel is ook dat er bijvoorbeeld niet altijd voldoende licenties zijn in drukke periodes.  Dat komt omdat er meestal met meerdere afdelingen gebruik wordt gemaakt van een set licenties. Als er dan vanwege drukte meer medewerkers worden ingezet op een afdeling kan het voorkomen dat er op andere afdelingen niet genoeg licenties beschikbaar zijn. Dit is meestal een gewogen risico. De klant vindt het acceptabel dat er eens in de zoveel tijd te weinig licenties beschikbaar zijn.

Timo: En zo'n licentie kan maar door een iemand gebruikt worden tegelijkertijd.

Annette: Voordeel van die licenties is dan wel weer dat je van Tosca zeker weet dat de tool goed  onderhouden wordt en dat er altijd een helpdesk beschikbaar is.

Timo: De helpdesk is goed bereikbaar en kundig, dat is wel fijn als je tegen problemen aanloopt. En een paar keer per jaar komt er een nieuwe Tosca versie. Er is dan ook altijd een gratis webinar waarin de nieuwe features worden toegelicht.

Annette: Je kunt ook suggesties doen om Tosca aan te passen en die worden meegenomen in een toekomstige versie als er meer vraag naar is. Er is bijvoorbeeld een onderdeel toegevoegd waarmee je schermonderdelen kunt scannen op basis van vormgeving in plaats van code. Dit had ik nodig bij een applicatie waarbij een button op zo'n manier was opgenomen in de code dat deze niet door Tosca kon worden aangestuurd. Dit onderdeel van Tosca heet Image-Based Test Automation.

Timo: Waar ik in het begin tegenaan gelopen ben, is het volgende. Chatfunctionaliteiten moeten soms ook worden getest – en dat kan redelijk goed. Maar het doorverbinden via chat van de ene agent naar de andere gaat in Tosca niet goed. Het probleem ontstaat doordat ik, tegelijkertijd, IE en Firefox wil gebruiken. In IE ben ik met Agent 1 ingelogd, op Firefox met Agent 2. Wat ik dan wil, is een chatgesprek doorverbinden van Agent 1 (IE) naar Agent 2 (Firefox). Met de huidige versie van Tosca is dit niet mogelijk. De applicatie die we testen geeft helaas weer problemen als ik alles alleen in IE (of in Firefox) wil uitvoeren. Nu heb ik het opgelost door handmatige stappen in te bouwen. Dan pauzeert Tosca als het ware en kan ik deze stappen handmatig uitvoeren. Overigens is het met Tosca wel degelijk mogelijk om op meerdere browsers te testen, alleen dus niet door elkaar heen.

Annette: Daar wordt vast snel een oplossing voor bedacht. Gelukkig heb je tot die tijd een workaround.