testng process execution
In deze zelfstudie worden verschillende soorten uitvoeringsprocessen in TestNG uitgelegd, d.w.z. batch-uitvoering, gecontroleerde batch, testuitvoeringsrapport en parallelle uitvoering:
Procesuitvoering in TestNG heeft de neiging om u veel tijd te besparen bij het uitvoeren van testscripts of suites.
Laten we onderzoeken!!
Bezoek hier om TestNG vanaf het begin te leren.
Wat je leert:
Waarom verschillende procesuitvoeringsmethoden?
Telkens wanneer we de testscripts of suites in de Java Eclipse-omgeving uitvoeren, moeten we op de knop Afspelen klikken voor elk testscript dat moet worden uitgevoerd. Dit is inderdaad een vervelend en tijdrovend proces als je veel testscripts of suites hebt.
Om dit nadeel te ondervangen, heeft TestNG een concept van het groeperen en uitvoeren van de testscripts of suites op basis van de verschillende soorten uitvoeringsprocessen die hieronder worden vermeld.
- Batch-uitvoering
- Gecontroleerde batch-uitvoering
- Testuitvoeringsrapport
- Parallelle uitvoering
Laten we elke procesuitvoering in detail bekijken.
Batch-uitvoering
- Het is het proces waarbij alle testscripts of suites in opeenvolgende volgorde worden uitgevoerd.
- Er is geen handmatige tussenkomst nodig om elke testsuite uit te voeren.
Voorbeeld:
Vereisten:
- Maak een Selenium WebDriver-project met de projectnaam als TestNg_Demo.
- Installeer de TestNG-plug-in in Eclipse.
Er zijn twee testscripts (User en UserOperations) gemaakt met behulp van TestNG-annotaties en een gemeenschappelijk scriptbestand (Base_class) waarin de volgorde van uitvoering wordt geschreven.
Stap 1: User.java
Stap 2: UserOperations.java
Stap 3: Base_Class.java
Stap 4: Voer de testscripts uit in batch door met de rechtermuisknop op het project te klikken en Run As TestNG Test te selecteren.
Stap 5: XML-bestand wordt gegenereerd in de test-output-map met de bestandsnaam als Default test.xml.
Stap 6: Voeg de testmethoden toe die bij een bepaald testscript of -suite horen.
Stap 7: Klik op de knop Uitvoeren en de uitvoer wordt weergegeven in het consolevenster zoals hieronder weergegeven.
Testscripts zijn met succes uitgevoerd met behulp van batchverwerking.
Gecontroleerde batch-uitvoering
Het is het proces van het selectief uitvoeren van een bepaalde module die een groep testsuites of scripts bevat.
Voorbeeld:
ascii naar int c ++
Er is een module met de naam UserOperations gemaakt. Daaronder hebben we drie gebruikers, respectievelijk Maken, Bewerken en Verwijderen. Hier gaan we een actie uitvoeren door het CreateUser-script te verifiëren met behulp van de Assert-klasse. Daarvoor stellen we afhankelijkheden in voor het bewerken en verwijderen van gebruikers met behulp van de testannotatie ‘dependOnMethods’.
Laten we eens kijken hoe we de scripts kunnen verifiëren en kijken hoe de bijbehorende afhankelijke scripts worden beheerd.
Stap 1: UserOperations. Java
Als Gebruikersscript maken met succes is geverifieerd, worden de andere afhankelijkheidsscripts uitgevoerd. Of anders zouden de scripts mislukken of zelfs worden overgeslagen.
Stap 2: Voeg de testmethoden van de UserOperations-module toe aan het Default test.xml-bestand.
Stap 3: De testscripts verifiëren.
# 1) Als de verwachte en werkelijke berichten gelijk zijn.
De overeenkomstige uitvoer wordt weergegeven in het consolevenster, zoals hieronder weergegeven.
#twee) Als de verwachte en werkelijke berichten niet gelijk zijn.
De bijbehorende output wordt weergegeven in het consolevenster.
vragen en antwoorden voor technische ondersteuning
Testscripts in een bepaalde module (UserOperations) zijn succesvol uitgevoerd en geverifieerd.
Testuitvoeringsrapport
- Het genereren van rapporten kan worden gedaan met TestNG dat ons helpt om de status (geslaagd / mislukt / overslaan) van elke testmethode in een groep scripts of suites te identificeren.
- Testrapport wordt gegenereerd in .html-indeling.
Voorbeeld:
Stap 1: Vernieuw na het uitvoeren van testscripts het project door met de rechtermuisknop te klikken en de optie Vernieuwen te selecteren. Er wordt automatisch een map met testuitvoer gegenereerd.
Stap 2: Door de map uit te vouwen, klikt u onder de standaardsuite op het bestand Default test.html.
Stap 3: Klik met de rechtermuisknop en selecteer Openen met => Webbrowser
Stap 4: Testuitvoeringsrapport met alle informatie over testmethoden in een script wordt gegenereerd.
Parallelle uitvoering
- Het is het proces waarbij meerdere testscripts tegelijkertijd worden uitgevoerd. Het helpt ons om onze uitvoeringsinspanningen te besparen en het maximale aantal tests te dekken.
- We kunnen ook cross-browser testen uitvoeren die de applicatie stabieler maken.
- TestNG behandelt intern threading-concepten waarmee we de test in meerdere threads kunnen uitvoeren.
Voorbeeld:
In TestNG worden alle @Test-methoden / -klassen in dezelfde thread uitgevoerd. Als we onze methoden / klassen in afzonderlijke threads willen uitvoeren, moeten we het 'parallel' attribuut voor methoden / klassen in het Default test.xml-bestand instellen.
Stap 1: Configureer het kenmerk 'Parallel' als 'methoden' in het bestand Default test.xml.
Stap 2: Parallel_Demo.java
Hier voeren we twee testmethoden parallel uit. We zijn bezig met het afdrukken van Thread ID, waarop de thread-methode eerst moet worden uitgevoerd.
Stap 3: Klik op de knop Uitvoeren en de uitvoer wordt weergegeven in de console, zoals hieronder weergegeven.
Het bovenstaande resultaat toont de twee methoden die zijn uitgevoerd met verschillende threads. De thread die de uitvoering van de ene methode voltooit, kiest de andere testmethode en voert deze uit.
Gevolgtrekking
Door middel van deze tutorial hebben we de verschillende processen van TestNG-uitvoering begrepen. Eerst zijn we begonnen met het maken van een nieuw Selenium WebDriver-project met behulp van TestNG-annotaties en zijn we overgestapt naar verschillende soorten uitvoeringsprocessen en hebben we uiteindelijk een van de testscripts geverifieerd met behulp van Assert-statements.
Het uitvoeren van veel aantallen testscripts of suites met behulp van batchverwerking is dus veel eenvoudiger en het bespaart inderdaad ook onze uitvoeringstijd. Hier hebben we de processtroom van elk type uitvoering geïmplementeerd en uitgevoerd voor een gemakkelijk begrip.
Veel leesplezier !!
Bekijk hier de eenvoudige TestNG-trainingsserie.
Aanbevolen literatuur
- 20 meest populaire TestNG interviewvragen en antwoorden
- Beweringen in selenium met behulp van Junit- en TestNG-frameworks
- TestNG-annotaties en luisteraars
- TestNG-voorbeeld: het bestand TestNG.xml maken en gebruiken
- TestNG-installatie, basisprogramma en rapporten
- TestNG-zelfstudie: inleiding tot TestNG-framework
- Hoe u Appium-tests op grote schaal parallel uitvoert
- Testuitvoering bij softwaretests: exact proces en plan met voorbeeld