how choose best automation testing tool
In deze zelfstudie hebben we de selectiecriteria voor testautomatiseringstools en de checklist behandeld met vergelijkingsmatrix voor testautomatiseringstools voor uw gemakkelijke referentie.
De A tot Z-gids over het selecteren van de beste automatiseringstool voor uw project:
Dit is de 4thtutorial in onze Test Automation Tutorial-serie. Controleer alle artikelen die in deze serie op deze pagina zijn geplaatst: => De ultieme gids om automatiseringstests op uw project te starten
Selectie van testautomatiseringstools is een van de belangrijkste stappen voordat automatisering in een organisatie wordt gestart.
Het is belangrijk omdat de tool een grote invloed heeft op uw hele automatiseringsinspanning. Als de tool goed is en u de vereiste functies biedt, wordt de automatisering eenvoudiger en effectiever.
Er zijn veel criteria waarmee u rekening moet houden bij het selecteren van de automatiseringstool. Een aantal daarvan heb ik besproken in een van mijn vorige artikelen. Hier heb ik de belangrijkste aspecten opgesomd waarmee u rekening moet houden bij het selecteren van de testautomatiseringstool.
Wat je leert:
- Is geautomatiseerd testen een oplossing voor u?
- Wanneer heeft testautomatisering zin?
- Hoe selecteer je een automatiseringstool voor je project?
- Testautomatiseringstool evaluatiecriteria
- Selectiecriteria en checklist voor testautomatiseringstools
- Vraag # 1: Wat is het budget van uw organisatie voor automatiseringstool?
- Vraag 2: Wat is de werkelijke prijs van de tool?
- Vraag 3: Ondersteunt de tool het besturingssysteem / de browser of het apparaat waarop uw applicatie wordt uitgevoerd?
- Vraag 4: Ondersteunt de tool de technologieën en besturingselementen van derden die in uw toepassing worden gebruikt?
- Vraag # 5: Hoeveel talen ondersteunt de tool? Beschikt u over bekwame bronnen voor deze talen?
- Vraag # 6: ondersteunt de tool het verbinden met verschillende gegevensbronnen?
- Vraag # 7: Hoe is het rapportagemechanisme van de automatiseringstool?
- Vraag # 8: Kan de tool worden geïntegreerd met testcase- en bugbeheerrepository's?
- Vraag # 9: Hoe is officiële technische ondersteuning voor de tool?
- Vraag # 10: Enkele technische aspecten om te zien
- Gevolgtrekking
- Aanbevolen literatuur
Is geautomatiseerd testen een oplossing voor u?
Ik heb in mijn carrière aan veel projecten gewerkt. Als je langer dan een jaar aan hetzelfde project werkt, begin je sterk de behoefte te voelen om sommige taken te automatiseren. U begint te denken om automatiseringstesten op het project in te voeren als dit tot nu toe niet door projectmanagement is overwogen.
Een jaar is genoeg tijd voor iedereen om de ins en outs van elk project te kennen. Een keer u kent de projectfunctionaliteit tot in detail, het wordt gemakkelijker om te beslissen welke repetitieve taken moeten worden geautomatiseerd.
Sommige testers vervelen zich ook ze doen steeds weer dezelfde repetitieve taken en ze beginnen sterk de behoefte aan testautomatisering te voelen.
Betekent dit dat u meteen aan automatiseringstests moet beginnen?
Absoluut niet!
Er zijn veel criteria waar u aan moet werken voordat u besluit of automatisering een oplossing voor u is
Wanneer heeft testautomatisering zin?
- Als er veel herhaalde tests zijn
- Wanneer er frequente iteraties van regressietesten zijn
- Als dat nodig is simuleer een groot aantal gebruikers die de toepassingsbronnen gebruiken
- Als AUT een relatief stabiele gebruikersinterface heeft
- Als u een groot aantal BVT-koffers heeft
- Wanneer u voor kritieke functionaliteit niet alleen kunt vertrouwen op handmatige testuitvoering
Verder lezen:
- Wanneer ga je voor automatisering?
- Tips die u moet lezen voordat u begint met geautomatiseerd testen
Als u eenmaal weet dat dit het juiste moment is om uw tijd en geld te investeren in een goede automatiseringstool, kunt u op zoek gaan naar de beste automatiseringstool die past bij uw behoeften.
Hoe selecteer je een automatiseringstool voor je project?
Het succes van automatiseringstests hangt grotendeels af van de selectie van de juiste testtools. Het kost veel tijd om relevante automatiseringstools die op de markt beschikbaar zijn te evalueren. Maar dit is een eenmalige oefening die u op de lange termijn moet doen.
Er waren maar weinig situaties waarin ik de kans kreeg om een automatiseringstool voor mijn projecten te beoordelen en te selecteren. De taak was moeilijk omdat we onze testbehoeften en kostenbeperkingen moesten beheren, maar het was een ervaring waard.
Hier zijn de criteria waarmee u rekening moet houden voordat u een testtool selecteert:
Testautomatiseringstool evaluatiecriteria
1) Beschikt u over de nodige bekwame middelen om toe te wijzen voor automatiseringstaken?
twee) Wat is je budget?
3) Voldoet de tool aan uw testbehoeften? Is het geschikt voor de projectomgeving en technologie die u gebruikt? Ondersteunt het alle tools en objecten die in de code worden gebruikt? Soms loopt u vast bij kleine tests omdat de tool niet in staat is de objecten te identificeren die in de toepassing worden gebruikt.
Ik beschouw bovenstaande drie factoren als de belangrijkste factoren voor het selecteren van een tool.
4) Biedt de tool u de gratis proefversie zodat u deze kunt evalueren voordat u een beslissing neemt? Heeft de tool ook alle functies die beschikbaar zijn in de proefversie?
5) Is de huidige toolversie stabiel? Is het leverancierbedrijf gevestigd met goede klantenondersteuning, online hulpbronnen en een gebruikershandleiding?
6) Hoe is de leercurve van de tool? Is de leertijd acceptabel voor uw doelen?
7) Wilt u een automatiseringstool alleen voor uw projectbehoeften of bent u op zoek naar een gemeenschappelijke tool voor alle projecten in uw bedrijf? Het zou een goede keuze zijn als u een tool selecteert die de meeste codeertalen in uw projecten ondersteunt.
wat is de beste databasesoftware
8) Welke soorten testen ondersteunt het? Een tool die maximale testtypes ondersteunt (unit, functioneel, regressie etc.) is altijd een betere keuze.Waarschuwing- Ga niet voor een tool alleen omdat deze alle soorten tests ondersteunt. Het is ook belangrijk dat de tool krachtig genoeg is om uw complexe vereisten te automatiseren.
9) Ondersteunt de tool een eenvoudige interface om testscripts te maken en te onderhouden? Opname- en afspeeltool met mogelijkheden om opgenomen scripts te bewerken zou een goede oplossing kunnen zijn.
10) Biedt het een eenvoudige interface en toch krachtige functies om complexe taken uit te voeren?
elf) Hoe gemakkelijk is het om invoertestgegevens te leveren voor complexe of belastingtests? Een tool die de invoer van testdata ondersteunt vanuit verschillende databestanden zoals Excel, XML, tekstbestand etc. zou een grote verademing zijn voor de automatisering van de testers.
12) Biedt het de krachtige rapportage met grafische interface? Duidelijke en beknopte rapporten helpen u altijd om de testresultaten snel af te ronden.
13) Kan het goed worden geïntegreerd met uw andere testtools zoals projectplanning en testbeheertools
U kunt ook andere criteria overwegen, zoals:
14) Restitutiebeleid voor gereedschapleveranciers
vijftien) Bestaande klantrecensies voor de tool
16) Geeft de verkoper een initiële opleiding?
Tips: Het verzamelen van vereisten is verreweg de belangrijkste stap bij het selecteren van de juiste tool. Zorg ervoor dat u uw vereisten categoriseert in de categorieën must have, nice to have en niet vereiste functie. Dit zal u helpen om de tool snel te evalueren. Onthoud dat u geen tool op de markt zult vinden die al uw automatiseringsbehoeften ondersteunt!
HP QTP / UFT en selenium zijn de twee meest populaire functionele testopties die momenteel beschikbaar zijn. QTP / UFT is een beste functionele testtool die wordt ondersteund door het brede scala aan codeertalen en platforms, terwijl Selenium de beste open source functionele webtesttool is.
Lees dit artikel voor de lijst met TOP-tools:
Top 20 beste testtools voor automatisering in 2020 (uitgebreide lijst)
In het volgende artikel bespreken we handmatige en automatiseringstesten
Selectiecriteria en checklist voor testautomatiseringstools
10 vragen die u moet stellen voordat u de beste testtool voor automatisering selecteert
Stel de volgende vragen wanneer u zich in een situatie bevindt om de automatiseringstool voor uw organisatie te selecteren:
Vraag 1: Wat is het budget van uw organisatie voor automatiseringstool?
Dit is naar mijn mening het belangrijkste om te overwegen bij het selecteren van de automatiseringstool.
Waarom zoeken QTP / UFT en er onderzoek naar doen als u de licentie niet kunt kopen? De QTP-tool kost ongeveer $ 8000 (ongeveer). Als uw organisatie de licentie kan aanschaffen en u bent bevestigd, moet u de proefversie downloaden en er een pivotautomatiseringsproject op maken om de functie ervan te testen. Anders zou u geen tijd moeten besteden aan het onderzoeken ervan. (Ik heb het over dit scenario als je QTP wilt gebruiken op een live project van het bedrijf. Als je het alleen downloadt voor leerdoeleinden, dan is het oké om de proefversie te downloaden.)
Vraag 2: Wat is de werkelijke prijs van de tool?
Het volgende is de prijs van een automatiseringstool. Er is niet alleen een licentieprijs, maar ook de prijs van add-ons (indien nodig), de ondersteuningskosten, de trainingskosten en upgradekosten.
Laten we het eerst hebben over de licentie.
a) Soorten licenties:
Er zijn de volgende soorten licenties.
1) Node-Locked User-licentie.
De Node-locked User-licentie ondersteunt testautomatiseringstool voor gebruik op een enkele fysieke computer in uw bedrijfsnetwerk. U kunt slechts één exemplaar van het hulpprogramma tegelijk op de gelicentieerde computer uitvoeren. Deze licentie is meestal gebonden aan de hostnaam van de machine.
2) Gelijktijdige drijvende gebruikerslicentie
Een zwevende gebruikerslicentie kan tussen verschillende machines worden gedeeld, maar kan slechts door één machine tegelijk worden gebruikt. Het is niet gebonden aan een machinenaam of iets anders, in plaats daarvan gebruikt het een licentiebeheerder (geïnstalleerd op een server) om dezelfde licentie op verschillende computers te beheren.
c # net interviewvragen en antwoorden
Kortom, met de Node-Locked-licentie hebt u niet de vrijheid om de tool op de ene machine te installeren, de installatie ongedaan te maken en vervolgens opnieuw op een andere machine te installeren. Maar met een zwevende gebruikerslicentie mag u dat doen.
3) Runtime-licentie
De bovengenoemde twee soorten licenties worden meestal gekocht om de scripts te 'ontwikkelen'. Dit zijn dus 'ontwikkelingslicenties'. Om de scripts op verschillende machines uit te voeren, heeft u voor elke machine de licentie 'uitvoering' of 'Runtime' nodig.
Voorbeeld
Als een tester bijvoorbeeld testcases op dezelfde machine moet ontwikkelen en uitvoeren, is één ontwikkellicentie voldoende.
Maar als hij zich op één machine moet ontwikkelen en de testcases op drie verschillende virtuele of fysieke machines moet uitvoeren, moet hij één 'ontwikkelingslicentie' en drie runtimelicenties kopen.
Sommige leveranciers bieden gratis runtime-licenties (zoals gecodeerde gebruikersinterface) en sommige bieden met een prijs (zoals Test Complete, Ranorex enz.). Het hangt dus allemaal af van verkoper tot verkoper.
4) Open source-licentie
Het is de keuze van uw bedrijf om voor een commerciële tool te gaan en een prijs te betalen, of om voor een open source-tool te gaan.
Commerciële tools zijn duur, maar ze bieden geweldige ondersteuning en zijn gemakkelijk te gebruiken met veel trainingsmateriaal. Commerciële tools zijn meestal 'één tool voor alle behoeften'. Open source-tools zijn gratis, maar zijn over het algemeen moeilijker te leren. Er is weinig officiële ondersteuning, maar u kunt oplossingen vinden door verschillende forums te bezoeken. Open source-oplossingen zijn normaal gesproken bedoeld voor specifieke behoeften.
b) Kosten voor ondersteuning, upgrade en training:
Voor ondersteuning, training en upgradekosten moet u mogelijk de bedrijfsvertegenwoordiger bellen. Sommige bedrijven bieden speciale kortingen op bulkaankoop van licenties, dus soms wordt deze informatie niet duidelijk vermeld op websites. U krijgt de informatie alleen via telefoon of e-mail.
Vraag 3: Ondersteunt de tool het besturingssysteem / de browser of het apparaat waarop uw applicatie wordt uitgevoerd?
Deze vraag is normaal gesproken afhankelijk van het type applicatie dat u gebruikt.
a) Indien desktop gebaseerd:
Als u aan een desktoptoepassing werkt, moet u aangeven op hoeveel besturingssystemen u die toepassing wilt testen. Ik werkte aan een desktopapplicatie en ik wilde deze testen op Windows 7 en Windows 8.1. Dus ik koos voor Coded UI omdat het beide ondersteunt.
b) Indien browser gebaseerd
Als u aan een webtoepassing werkt, moet u aangeven op hoeveel browsers u deze toepassing wilt testen. Ik wilde mijn testcases uitvoeren op FireFox, Chrome en IE. Ik heb selenium gekozen voor mijn webapplicatie omdat het al deze browsers ondersteunt. Zorg ervoor dat de tool die u kiest zowel oudere als nieuwere versies van uw vereiste browsers ondersteunt.
c) Indien mobiel gebaseerd
Als u aan mobiele applicaties werkt, moet u weten op welke mobiele besturingssystemen u uw testcases moet draaien. Als uw applicatie zowel op Android als IOS draait, zou uw tool dat moeten ondersteunen. Selenium heeft afzonderlijke stuurprogramma's om scripts uit te voeren op Android, IOS, Windows Phone en BlackBerry. U kunt ook een afzonderlijke tool gebruiken voor elk van de mobiele besturingssystemen. Er is Robotium voor Android, Appium voor zowel IOS als Android en CodedUI voor Windows Phone-apps.
Nogmaals, dit komt naar het debat over open source versus commercieel. Zoals je kunt zien zijn er aparte open source tools om webgebaseerde mobiel gebaseerd en desktop-gebaseerde applicaties. Maar als u kiest voor een commerciële tool zoals Test complete, Ranorex of Test Studio, kunnen ze alle drie de typen testen (mobiele, desktop- en browsergebaseerde applicaties). Dus in het geval van de commerciële tool, hoeft u maar één tool te leren om web-, desktop- en mobiele applicaties te testen.
Vraag # 4: Ondersteunt de tool de technologieën en besturingselementen van derden die in uw toepassing worden gebruikt?
Dit is een zeer belangrijk aspect bij het selecteren van de tool. U moet uit de eerste hand weten welke technologieën er in uw toepassing worden gebruikt. Raadpleeg uw ontwikkelaars en schrijf deze op. Als ze HTML 5 of SilverLight in webapplicaties gebruiken, pas dan op, er zijn niet veel automatiseringstools om ze te ondersteunen. Als de tool ondersteuning claimt voor deze technologieën, download dan de proefversie van die tool en probeer verschillende objecten in uw applicatie te identificeren. Als de tool ze niet identificeert, is hun bewering onjuist. Die activiteit zal je redden van de ellende achteraf.
Vergelijkingsmatrix voor testautomatiseringstools:
De volgende tabel vergelijkt verschillende tools met betrekking tot hun licentieprijs en hun ondersteuning voor verschillende technologieën. (U moet deze grafiek gebruiken als een leerpraktijk bij het maken van vergelijkingen tussen verschillende tools, maar de nauwkeurigheid van de gegeven gegevens is niet 100%)
(Klik op afbeelding om vergroot te bekijken)
Y = ondersteund, N = niet ondersteund, U = onbekend
Vraag # 5: Hoeveel talen ondersteunt de tool? Beschikt u over bekwame bronnen voor deze talen?
Het leren van de tool is één aspect. De taal leren is een ander aspect. Als u bronnen hebt die ervaring hebben met Java en uw tool Java niet ondersteunt, wordt de tijd om de nieuwe taal te leren toegevoegd aan uw automatiseringsinspanningen.
Een ander aspect is dat als uw product op Java is gebouwd, u een team van ontwikkelaars moet hebben die experts zijn in Java. Deze ontwikkelaars kunnen het automatiseringsteam ook helpen met taalgerelateerde problemen. Het is belangrijk om de tool te selecteren die een taal biedt die bekend is met uw bronnen en het zal u helpen de leercurve voor uw bronnen te minimaliseren.
De Selenium WebDriver biedt schrijfscripts in meerdere talen zoals C #, Java, Python, Ruby en in JavaScript. TestComplete biedt ook schrijfscript in meerdere scripttalen, zoals VBScript, JScript, DelphiScript, C ++ Script en C # Script.
sql query interviewvragen en antwoorden pdf
Vraag # 6: Ondersteunt de tool verbinding met verschillende gegevensbronnen?
Als we een automatiseringsraamwerk gebruiken zoals trefwoordgestuurd of datagestuurd, moeten we de mogelijkheid hebben om onze tool aan elke gegevensbron te koppelen. Als de tool gemakkelijk connectiviteit biedt met verschillende gegevensbronnen, zal dit zeer voordelig zijn.
Zie de ondersteuning voor veelgebruikte gegevensbronnen zoals een CSV-bestand, Excel-bestand, XML-bestand en database. Als deze in een tool aanwezig zijn, bent u klaar om te gaan.
Vraag # 7: Hoe is het rapportagemechanisme van de automatiseringstool?
Wanneer we het script uitvoeren, zal het slagen of mislukken. In het geval van de pas is er niet veel informatie nodig behalve de duur en omgevingsinformatie. Maar in het geval van een storing hebben we een uitgebreid rapport nodig over de storing. Het rapport zou ons precies moeten vertellen op welke stap het script mislukt. Een momentopname van het moment van mislukking is een bijkomend voordeel.
Ook moet dit rapport naar verschillende formaten worden geëxporteerd, zodat we dit kunnen delen met belanghebbenden. In veel tools zijn deze opties ingebouwd en in sommige tools zijn er manieren om uw rapport uitgebreid te maken. Dit is een ander ding om op te letten wanneer u de proefversie van de tool downloadt. Als het uitgebreide rapporten over mislukkingen geeft, is dit het beste voor de organisatie.
Vraag # 8: Kan de tool worden geïntegreerd met testcase- en bugbeheerrepository's?
De kans is groot dat uw organisatie al gebruik maakt van een testcase of bug management tool Bedrijven willen uiteraard dat hun geautomatiseerde tool wordt geïntegreerd met hun bestaande testcasebeheertool, zodat hun hele applicatielevenscyclus goed wordt beheerd. Dit aspect moet ook worden gezien bij het selecteren van de testautomatiseringstool.
QTP ondersteunt QLM, ondersteunt gecodeerde gebruikersinterface TFS en TestComplete ondersteunt QAComplete. Sommige open source-tools hebben ook ondersteuning voor integratie met bestaande open source-testbeheertools. Het hangt allemaal af van wat uw organisatie daadwerkelijk gebruikt.
Vraag # 9: Hoe is de officiële technische ondersteuning voor de tool?
Hier hebben we het alleen over commerciële tools. Wanneer u een commerciële tool selecteert, is hun ondersteuningsaspect erg belangrijk. Zie het trainingsmateriaal op de website. Bevat de website video's en tutorials? Heeft de website een officieel forum om vragen te stellen? Download de proefversie en maak een vraag op hun forum en kijk hoeveel dagen deze wordt beantwoord. Bieden ze ondersteuning bij een oproep?
De bovenstaande vragen zouden eigenlijk elke keer moeten worden gesteld, omdat u een behoorlijk bedrag aan de tool uitgeeft. Als de tool geen goede ondersteuning heeft, koop het dan niet.
Vraag # 10: Enkele technische aspecten om te zien
Er zijn ook enkele andere technische aspecten te zien, zoals:
a) Ondersteuning voor opnemen en afspelen
Het is geen aanbevolen aanpak bij testautomatisering, maar het is goed om een tool te hebben. Het vereenvoudigt het leerproces van de tool en helpt eenvoudige scenario's eenvoudig te automatiseren.
b) Verschillende methoden voor objectherkenning en ondersteuning voor objectmapping
Er moet een verscheidenheid zijn aan het selecteren van hetzelfde object met verschillende methoden. Sommige objecten zijn moeilijk te herkennen. De verscheidenheid aan selectiemethoden is dus altijd nuttig.Bijvoorbeeld, selenium ondersteunt het selecteren van objecten door id, naam, klasse, koppelingstest, XPATH CSS-kiezer en JavaScript. Hier is een tutorial over - hoe QTP objecten uniek identificeert Als een selectiemethode niet werkt, kunnen we uit een aantal andere methoden kiezen die altijd handig zijn.
Evenzo zou er een optie moeten zijn om deze objecten correct toe te wijzen in de objectrepository. Deze repository moet gemakkelijk kunnen worden bijgewerkt en beheerd. Om u eraan te herinneren dat Selenium geen ingebouwde ondersteuning heeft voor objecttoewijzing.
c) Verschillende checkpoints of ondersteuning van beweringen.
De testcase is geslaagd of mislukt op basis van ijkpunten of beweringen. Als de tool verschillende methoden heeft om uw verwachte resultaten te controleren, is dit nuttig. QTP heeft verschillende controlepunten, zoals Standaard Bitmap Tafel XML, database en controlepunten voor bestandsinhoud.
d) Behandeling van herstelscenario's.
Als de testcase mislukt en u wilt doorgaan met de uitvoering, ondersteunt de tool dat dan gemakkelijk? Als herstelscenario's eenvoudig te beheren zijn in een tool, kunt u testcases probleemloos uitvoeren. U kunt de testcases 's nachts draaien en' s ochtends krijgt u de resultaten waarin staat welke testcases zijn mislukt en welke testcases zijn geslaagd. Dit gebeurt alleen als het herstel van mislukte testcases eenvoudig kan worden beheerd door de tool. Anders gaat een flinke hoeveelheid automatiseringsinspanning verloren bij het afhandelen van herstelscenario's. Zien beheer van herstelscenario's in QTP
Gevolgtrekking
Onthoud altijd dat geen enkel stuk gereedschap een goed of slecht stuk gereedschap is. Het hangt allemaal af van uw vereisten en productaard.
Selenium is misschien wel de meest populaire automatiseringstool, maar als uw product desktop-gebaseerd is, heeft deze tool niets voor u. Begrijp eerst uw product en zoek vervolgens naar de juiste tool die aan uw vereisten voldoet aan de hand van de richtlijnen die in deze tutorial worden genoemd.
De juiste keuze van automatiseringstools speelt een cruciale rol bij succesvolle automatisering.
Volgende tutorial - Onze volgende tutorial in deze serie gaat over ‘Scriptontwikkeling en automatiseringsframeworks met voorbeelden’. Nogmaals, controleer alle tutorials in deze serie op deze pagina
Voel je vrij om hieronder je vragen / opmerkingen te plaatsen over het selecteren van de juiste automatiseringstool.
PREV Tutorial # 3 VOLGENDE Tutorial # 5
Aanbevolen literatuur
- Sikuli GUI Automation Testing Tool - Beginnershandleiding Deel # 2
- Alfatesten en bètatesten (een complete gids)
- Geb-zelfstudie - Browserautomatiseringstests met Geb Tool
- Build Verification Testing (BVT Testing) Complete Guide
- Beste softwaretesttools 2021 (QA Test Automation Tools)
- Functioneel testen versus niet-functioneel testen
- Stapsgewijze handleiding om Proof of Concept (POC) in automatiseringstests te implementeren
- Automatiseringstestproces in 10 stappen: hoe u automatiseringstests in uw organisatie start