testng tutorial introduction testng framework
Deze TestNG-zelfstudie legt het TestNG-raamwerk uit, samen met de functies, voordelen en voordelen ten opzichte van het JUnit-raamwerk:
Deze tutorial laat je kennismaken met het concept van Automation Framework, de voordelen en de typen die in de testwereld worden gebruikt.
Samen met het Automation Framework zullen we ook een van de belangrijkste onderwerpen bespreken, namelijk TestNG Testing Framework.
Laten we beginnen!!
Lijst met alle TestNG-zelfstudies in deze serie
Tutorial # 1: Inleiding tot TestNG Framework
Tutorial # 2: TestNG-installatie
Tutorial # 3: TestNG-annotaties en luisteraars
Tutorial # 4: TestNG-voorbeeld
Tutorial # 5: Integratie van Maven met TestNG met behulp van de Maven Surefire-plug-in
Tutorial # 6: TestNG-procesuitvoering: batchgewijs, gecontroleerd batchgewijs en parallel
Overzicht van zelfstudies in TestNG-serie
Tutorial_Num | Wat je leert |
---|---|
Zelfstudie # 1 | TestNG Tutorial Inleiding tot TestNG Framework In deze TestNG-zelfstudie wordt het TestNG-framework uitgelegd, samen met de functies, voordelen en voordelen ten opzichte van het JUnit Framework. |
Tutorial # 2 | TestNG-installatie TestNG-installatie wordt hier in detail behandeld. We zullen ook een basis TestNG-programma uitvoeren en kijken welke rapporten kunnen worden gegenereerd na het testen in TestNG. |
Tutorial # 3 | TestNG-annotaties en luisteraars In deze tutorial worden verschillende soorten TestNG-annotaties en luisteraars uitgelegd. Je leert ook hoe je de TestNG Annotations & Listeners met voorbeelden kunt gebruiken. |
Tutorial # 4 | TestNG-voorbeeld Leer hoe u een TestNG.xml-bestand maakt met behulp van TestNG-voorbeeld. Met het bestand TestNG.xml kunnen veel taken tegelijk worden uitgevoerd. |
Zelfstudie # 5 | Integratie van Maven met TestNG met behulp van de Maven Surefire-plug-in In deze tutorial wordt uitgelegd hoe u de Maven Surefire-plug-in gebruikt om onze afhankelijkheden te beheren en specifieke testscripts of suites te selecteren en uit te voeren met behulp van TestNG. |
Tutorial # 6 | TestNG-procesuitvoering: batchgewijs, gecontroleerd batchgewijs en parallel Deze tutorial legt verschillende soorten uitvoeringsprocessen in TestNG uit, d.w.z. batch-uitvoering, gecontroleerde batch, testuitvoeringsrapport en parallelle uitvoering. |
Wat je leert:
Inleiding tot automatiseringsraamwerk
Een raamwerk is een set regels of richtlijnen zoals coderingsstandaarden, verwerking van testgegevens, enz. Die de testwereld op een systematische manier volgt tijdens het automatiseren van scripts om de beste output of resultaten te bereiken. Het bevat best practices en tools die de QA-professionals helpen om efficiëntere resultaten te testen en te behalen.
Testkaders zijn een essentieel onderdeel van elk succesvol automatiseringstestproces, omdat ze helpen bij het verlagen van de onderhoudskosten, testinspanningen, herbruikbaarheid van code en vele andere dingen die moeten worden bereikt. Hier kunnen we het beste van Return on Investment (ROI) behalen door het aan de klant te laten zien, samen met de voordelen die we behalen.
Voordelen van Automation Framework
De belangrijkste voordelen zijn:
- Verhoog de snelheid en efficiëntie van het testteam.
- Verbeter de nauwkeurigheid van het testteam.
- Kosten voor testonderhoud verlagen.
- Maximale testdekking.
- Herbruikbaarheid van code.
Soorten automatiseringsraamwerken
Het is erg belangrijk om het type raamwerk te kiezen tijdens het uittekenen van het testplan. Hieronder worden de meest voorkomende typen testautomatiseringsframeworks genoemd.
- Lineair automatiseringsraamwerk : Opname- en afspeelframework, geen codering vereist.
- Modulair gebaseerd testkader: De applicatie wordt opgedeeld in afzonderlijke modules en vervolgens afzonderlijk getest. Deze modules worden vervolgens gecombineerd om grotere tests te bouwen.
- Gegevensgestuurd testkader : Hier worden testgegevens extern opgeslagen in de vorm van Excel-spreadsheets, tekstbestanden, CSV-bestanden, etc. Testscripts worden aan deze bestanden gekoppeld en de applicatie wordt met deze bestanden meerdere keren getest met verschillende testgegevenssets.
- Framework voor het testen van trefwoorden : Dit raamwerk maakt gebruik van gegevenstabellen en zelfbeschrijvende sleutelwoorden die ook in de externe bestanden worden opgeslagen. Trefwoorden vertegenwoordigen verschillende acties, zoals klikken, inloggen, enz. Trefwoorden worden opeenvolgend opgeslagen met het vereiste object en het testen wordt dienovereenkomstig uitgevoerd.
- Framework voor hybride testautomatisering : Dit raamwerk is een combinatie van een of meer hierboven genoemde raamwerken.
Wat is TestNG?
Het is een Test Automation Framework voor Java, geïnspireerd door JUnit en NUnit met nieuwe inleidende functionaliteiten die het krachtiger en gebruiksvriendelijker maken. NG staat voor de volgende generatie. Het is een open-source en gratis tool.
beste youtube naar mp3-converter voor mac
Het is ontworpen om alle testcategorieën te dekken, zoals Unit Testing, Functional Testing, End to End Testing, Regressie Testing, Integration Testing, etc. TestNG ondersteunt zowel Android als IOS Applicaties.
Kenmerken van TestNG
Hieronder staan de meest opvallende kenmerken van TestNG vermeld:
- Annotaties: meerdere annotaties die krachtige mechanismen bieden om uw automatiseringsscripts te ondersteunen.
- Ondersteuning voor gegevensgestuurd testen met behulp van @ Data Provider-annotaties.
- Ondersteunt een nee. van parameters.
- Genereren van automatische rapporten die Selenium niet alleen kan doen.
- Het kan alleen de mislukte testcase uitvoeren, terwijl het niet nodig is om de hele testsuite uit te voeren in geval van testfouten.
- Ondersteunt een verscheidenheid aan tools en plug-ins zoals Maven, Jenkins, etc.
- Flexibiliteit in testconfiguraties.
- Het biedt een krachtig uitvoeringsmodel.
- Afhankelijke methoden zijn handig voor het testen van applicatieservers.
- Standaard JDK-functies voor runtime en logboekregistratie (geen afhankelijkheden meer).
Voordelen van TestNG ten opzichte van JUnit
Zowel JUnit als TestNG zijn erg populair in het testframework in Java. Beide frameworks hebben overeenkomsten in hun functionaliteiten. TestNG heeft echter meer functies dan JUnit en dat heeft het inderdaad heel gemakkelijk te gebruiken gemaakt.
Laten we de voordelen van TestNG ten opzichte van JUnit bespreken.
- Groepering: Met TestNG kunnen we veel complexe automatiseringstests uitvoeren vanwege het vermogen om testgevallen te groeperen en de groepen uit te voeren. In JUnit kunnen we echter geen groepstests uitvoeren.
- Klassen uitbreiden: In TestNG hoeven we geen lessen uit te breiden. In JUnit moeten we uitbreidingsklassen gebruiken.
- Verplichte annotaties: In TestNG zijn er geen beperkingen voor elk type verplichte annotaties. Terwijl we in JUnit verplichte annotaties moeten gebruiken, zoals @BeforeClass en @AfterClass.
- Breder scala aan annotaties: TestNG heeft een breder scala aan ondersteuning voor annotaties, zoals @ Before / After Suite, @ Before / After Test, @ Before / After Groups. JUnit heeft maar een paar annotaties.
- Afhankelijkheidstest: In TestNG kunnen we de “dependOnMethods” gebruiken om de afhankelijkheidstest uit te voeren. JUnit ondersteunt deze functie echter niet.
- Parallelle testuitvoering: In TestNG kunnen we parallelle testuitvoering uitvoeren als deze door XML wordt uitgevoerd. JUnit ondersteunt deze functie echter niet.
- Geparametriseerde tests: De geparametriseerde tests van TestNG zijn zeer gebruiksvriendelijk en flexibel van aard omdat we de waarden in het XML-bestand of in de klas kunnen leveren. JUnit heeft veel beperkingen bij het gebruik van deze functie.
- Testorder: TestNG is beter dan JUnit wanneer de test wordt uitgevoerd in een specifieke volgorde. Methoden met een lagere prioriteitswaarde worden als eerste uitgevoerd.
- Luisteraars: TestNG ondersteunt verschillende soorten luisteraars en kan worden gebruikt door annotaties toe te voegen. Er is geen mechanisme in JUnit om luisteraars toe te voegen met behulp van annotaties.
- HTML-rapporten: TestNG heeft rijke HTML-rapportgeneraties voor zijn testcases. Het genereert drie soorten rapporten, namelijk console-uitvoer, HTML-rapport en Index.html. JUnit maakt echter geen eigen HTML-rapporten. We moeten hiervoor de ANT-tool gebruiken.
Voorgestelde lezing => JUnit versus TestNG - Ken de verschillen
Notitie: Bij het vergelijken van beide frameworks, wordt het aanbevolen om TestNG te gebruiken, omdat het flexibeler en compatibel is om te gebruiken. TestNG is geavanceerder in termen van parametrisering, afhankelijkheidstests en groeperingsconcepten. TestNG kan worden gebruikt voor testen op hoog niveau en voor complexe integratietesten.
Gevolgtrekking
We hebben de verschillende kaders hier in detail besproken. We hebben TestNG grondig bestudeerd, de voordelen, voordelen en functies ervan ten opzichte van het JUnit Framework.
Onze aanstaande tutorial in deze serie legt TestNG Installation uit, onze eerste testcase in TestNG, configuraties en enkele annotaties die een standaard TestNG-testcase vormen, samen met het type rapporten dat post-uitvoering van een testcase genereert.
Bezoek hier om TestNG vanaf het begin te leren.
Aanbevolen literatuur
- 20 meest populaire TestNG interviewvragen en antwoorden
- Beweringen in selenium met behulp van Junit- en TestNG-frameworks
- Eclipse-zelfstudie: TestNG integreren in Eclipse Java IDE
- TestNG Framework gebruiken voor het maken van Selenium-scripts - TestNG Selenium-zelfstudie # 12
- Leer hoe u TestNG-annotaties in selenium gebruikt (met voorbeelden)
- REST API-testen met Spring RestTemplate en TestNG
- Inleiding tot Micro Focus LoadRunner - Load Testing met LoadRunner Tutorial # 1
- TestNG-voorbeeld: het bestand TestNG.xml maken en gebruiken