testng process execution
Denna handledning förklarar olika typer av exekveringsprocesser i TestNG, dvs Batch Execution, Controlled Batch, Test Execution Report och Parallel Execution:
Processutförande i TestNG tenderar att spara tid i stor utsträckning när du kör testskript eller sviter.
Låt oss utforska !!
=> Besök här för att lära dig TestNG From Scratch.
Vad du kommer att lära dig:
Varför olika processkörningsmetoder?
När vi kör testskript eller sviter i Java Eclipse-miljö bör vi trycka på Play-knappen för varje testskript som behöver köras. Detta är verkligen en tråkig och tidskrävande process om man har många testskript eller sviter.
För att övervinna denna nackdel har TestNG ett koncept att gruppera och köra testskript eller sviter baserade på de olika typerna av exekveringsprocesser som listas nedan.
- Batchkörning
- Kontrollerad batchkörning
- Testutföranderapport
- Parallell utförande
Låt oss se varje processkörning i detalj.
Batchkörning
- Det är processen att köra alla testskript eller sviter i sekventiell ordning.
- Det finns inget behov av något manuellt ingripande för att köra varje testsvit.
Exempel:
Förutsättningar:
- Skapa ett Selenium WebDriver-projekt med projektnamnet TestNg_Demo.
- Installera TestNG-plugin i eclipse.
Två testskriptsfiler (User och UserOperations) har skapats med TestNG-anteckningar och en vanlig skriptsfil (Base_class) där ordningen på exekveringen skrivs.
Steg 1: User.java
Steg 2: UserOperations.java
Steg 3: Base_Class.java
Steg 4: Utföra testskript i Batch genom att högerklicka på projektet och välja Kör som testNG-test.
Steg 5: Xml-fil genereras i testutmatningsmappen med filnamnet som standard test.xml.
Steg 6: Lägg till testmetoderna som tillhör ett visst testskript eller svit.
Steg 7: Klicka på Kör-knappen så visas resultatet i konsolfönstret enligt nedan.
Testskript har utförts med batch-bearbetning.
Kontrollerad batchkörning
Det är processen att selektivt köra en viss modul som innehåller en grupp testsviter eller skript.
Exempel:
varför är standardgatewayen inte tillgänglig
En modul som heter UserOperations har skapats. Under det har vi tre användare som heter Skapa, Redigera respektive Ta bort. Här ska vi utföra en åtgärd genom att verifiera CreateUser-skriptet med Assert-klassen. För detta ställer vi in beroenden för Redigera och ta bort användare med hjälp av ”dependsOnMethods” testanteckningen.
Låt oss utforska hur man verifierar skript och ser hur motsvarande beroende skript hanteras.
Steg 1: Användaroperationer. Java
Om Skapa användarskript har verifierats framgångsrikt kommer de andra beroendeskriptet att utföras. Eller annars skulle manusen misslyckas eller till och med hoppas över.
Steg 2: Lägg till testmetoderna för UserOperations-modulen i filen standard test.xml.
Steg 3: Verifiera testmanusen.
# 1) Om de förväntade och faktiska meddelandena är lika.
String expected = “create a user”; String actual = “create a user”; Assert.assertEquals (expected, actual);
Motsvarande utdata visas i konsolfönstret enligt nedan.
#två) Om de förväntade och faktiska meddelandena inte är lika.
String expected = “create a user”; String actual = “creating an user”; Assert.assertEquals (expected, actual);
Motsvarande utdata visas i konsolfönstret.
Testskript i en viss modul (UserOperations) körs och verifieras framgångsrikt.
Testutföranderapport
- Rapportgenerering kan göras med TestNG som hjälper oss att identifiera status (pass / fail / skip) för varje testmetod i en grupp skript eller sviter.
- Testrapporten genereras i .html-format.
Exempel:
Steg 1: Efter att ha utfört testskript, uppdatera projektet genom att högerklicka och välja alternativet Uppdatera. En testutmatningsmapp genereras automatiskt.
Steg 2: Klicka på standard test.html-filen genom att expandera mappen under standardsviten.
teknisk support intervju fråga och svar
Steg 3: Högerklicka och välj Öppna med => Webbläsare
Steg 4: Testutföranderapport som visar all information om testmetoder i ett skript genereras.
Parallell utförande
- Det är processen att köra flera testskript samtidigt. Det hjälper oss att spara vårt utförande och täcka maximalt antal tester.
- Vi kan också testa webbläsare som gör applikationen mer stabil.
- TestNG hanterar internt trådkoncept som gör att vi kan köra testet i flera trådar.
Exempel:
I TestNG körs alla @Test-metoder / klasser i samma tråd. Om vi vill köra våra metoder / klasser i separata trådar måste vi ställa in 'parallellt' attribut för metoder / klasser i standardtest.xml-filen.
Steg 1: Konfigurera attributet 'Parallel' som 'metoder' i standard test.xml-filen.
Steg 2: Parallel_Demo.java
Här kör vi två testmetoder parallellt. Vi skriver ut tråd-ID, på vilket trådmetoden ska köras först.
Steg 3: Klicka på Kör-knappen så visas resultatet i konsolen enligt nedan.
Ovanstående resultat visar de två metoderna som kördes med olika trådar. Tråden som slutför körningen av en metod väljer och kör den andra testmetoden.
Slutsats
Genom denna handledning förstod vi de olika processerna för körning av TestNG. Först började vi skapa ett nytt Selenium WebDriver-projekt med TestNG-kommentarer och flyttade till olika typer av exekveringsprocesser och verifierade slutligen ett av testskriptet med hjälp av Assert-uttalanden.
Således är det mycket enklare att köra många antal testskript eller sviter med batchbearbetning och det sparar verkligen vår körtid också. Här implementerade vi och körde processflödet för varje typ av utförande för vår enkla förståelse.
Glad läsning!!
=> Se upp den enkla TestNG-träningsserien här.
Rekommenderad läsning
- 20 mest populära TestNG-intervjufrågor och svar
- Påståenden i selen med Junit och TestNG Frameworks
- TestNG-kommentarer och lyssnare
- TestNG Exempel: Hur man skapar och använder TestNG.xml-fil
- TestNG Installation, grundläggande program och rapporter
- TestNG Tutorial: Introduktion till TestNG Framework
- Hur man kör storskalig utförande av appiumtester parallellt
- Testkörning vid programvarutestning: Exakt process och plan med exempel