TestNG, waar NG staat voor “next generation” is een test automation framework geà nspireerd door JUnit (in Java) en NUnit (in C#). TestNG kan worden gebruikt voor unit testen, functionele testen, integratie testen, en end-to-end testen.
TestNG is snel populair geworden en is een van de meest gebruikte testkaders onder Java-ontwikkelaars. Het maakt voornamelijk gebruik van Java-annotaties om testmethoden te configureren en te schrijven, vergelijkbaar met JUnit.
Inleiding van TestNG
Sommige functies die TestNG heeft meer dan JUnit:
- Extra Voor en Na de opmerkingen, zoals Voor/Na Suite en Voor/Na Groep
- Afhankelijkheid testen
- Meer flexibele organisatie van test methodes
- Multi-threaded uitvoering
- ingebouwde sterke rapportagekader
TestNG is geschreven in Java en kan worden gebruikt met Java en andere Java-verwante talen als Groovy.
in TestNG worden suites en tests voornamelijk geconfigureerd of beschreven door middel van XML-bestanden. Standaard is de naam van het bestand testng.xml
, maar we kunnen het een andere naam geven als we dat willen.
TestNG stelt de ontwikkelaars in staat om de test suites in XML-bestanden te schrijven en hen in staat te stellen om respectievelijke Pakketten, Klassen en methoden in hun test suite op te nemen (of uit te sluiten). Het stelt ontwikkelaars ook in staat om testmethoden te groeperen in bepaalde benoemde groepen en op te nemen of uit te sluiten als onderdeel van de uitvoering van de test.
voordelen van TestNG
laten we nu meer mogelijkheden/voordelen van TestNG ontdekken.
- Meerdere Vóór en Na de annotatie opties
- XML-gebaseerde test configuratie en test suite definitie
- Afhankelijke methoden
- Benoemde groepen / Groep van groepen
- Afhankelijke groepen
- Parametrisering van test methodes
- Data-driven testing
- Multi-threaded de uitvoering van de test
- Betere rapportage
Installeren TestNG in Eclipse
Voordat we kunnen downloaden en beginnen met TestNG, we moeten een minimum van Java 8 of hoger is geïnstalleerd op ons systeem.
kopieer de laatste URL van de updatesite.
gebruik de bovenstaande URL om TestNG-ondersteuning in Eclipse te installeren. Ga naar de optie: Help > nieuwe Software installeren.
klik op de knop Toevoegen en kies de vereiste componenten die moeten worden geïnstalleerd.
ga akkoord met elke licentieovereenkomst indien gevraagd. TestNG ondersteuning zal in de komende minuten worden geïnstalleerd in de Eclipse IDE.
het kan vragen om de IDE opnieuw op te starten na het voltooien van de installatie. Start opnieuw.
Java-Project aanmaken met TestNG-afhankelijkheden
voordat we onze eerste TestNG-test schrijven, moeten we een Java-project aanmaken in Eclipse en onze TestNG-afhankelijkheden opnemen.
Ga naar Bestand / New / Other. Er wordt een venster met meerdere opties getoond.
Selecteer Nieuw Maven-Project zoals getoond in de volgende schermafbeelding en klik op Volgende.
Selecteer het juiste Maven archetype.
vul de Maven-coördinaten van het project in.
standaard bevat Maven de JUnit-afhankelijkheid in pom.xml
– bestand. We moeten de JUnit-afhankelijkheid verwijderen en de nieuwste TestNG-afhankelijkheid opnemen.
<dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>7.4.0</version><scope>test</scope></dependency>
nu zijn we goed om onze tests te schrijven met behulp van TestNG.
onze eerste TestNG-klasse
hiervoor kunt u elke bestaande Auto-creating JUnit-testklasse verwijderen, indien van toepassing. Voer nu de volgende stappen uit om onze eerste TestNG-klasse te maken:
1. Ga naar Bestand / New / Other. Dit opent een nieuw venster wizard Toevoegen in Eclipse.
2. Selecteer TestNG class in het Add wizard venster en klik op Next.
3. In het volgende venster klikt u op de knop Bladeren en selecteer het Java-project waar u uw klasse moet toevoegen.
4. Voer de pakketnaam en de naam van de testklasse in en klik op Voltooien.
5. Dit venster geeft je ook een optie om verschillende annotaties te selecteren tijdens het maken van een nieuwe TestNG klasse. Indien geselecteerd, zal de plugin dummy methoden genereren voor deze annotaties tijdens het genereren van de klasse. Dit zal een nieuwe TestNG class toevoegen aan ons project.
package com.howtodoinjava.testng.examples;import org.testng.annotations.Test;import org.testng.annotations.BeforeTest;import org.testng.annotations.AfterTest;public class AppTest { @Test public void f() { } @BeforeTest public void beforeTest() { } @AfterTest public void afterTest() { }}
we hebben met succes een nieuwe TestNG-testklasse toegevoegd aan het nieuw aangemaakte Java-project in Eclipse. Voel je vrij om de code te wijzigen als dat nodig is. Laten we nu de nieuw aangemaakte testklasse Door Eclipse laten lopen.
lopende TestNG-test
5.1. Sneltoetsopties
let op de testklasse in Eclipse-IDE. U ziet een paar vage teksten als “Run All” Of “Run | Debug”. Dit zijn de snelkoppelingen die we kunnen gebruiken om een enkele testmethode of testklasse met een simpele muisklik uit te voeren of te debuggen.
als u de bovenstaande sneltoetsen om welke reden dan ook niet ziet, volg dan de gegeven stappen om de testNG run configuratie te maken en uit te voeren.
5.2. Create Run Configuration
Voer de volgende stappen uit om tests Door Eclipse uit te voeren:
1. Selecteer het Java project in Eclipse en ga naar Run / Run Configuration.
2. Selecteer TestNG in de gegeven opties en klik op de knop Nieuw om een nieuwe configuratie te maken.
3. Merk op dat TestNG plugin biedt meerdere opties voor het uitvoeren van uw testgevallen als volgt:
- Class: met deze optie kunt u de class naam samen met het pakket opgeven om alleen de genoemde specifieke test klasse uit te voeren.
- methode: Hiermee kunt u alleen een specifieke methode in een testklasse uitvoeren.
- groepen: als u specifieke testmethoden wilt uitvoeren die tot een bepaalde TestNG-groep behoren, kunt u deze hier invoeren om ze uit te voeren.
- pakket: als u alle tests in een pakket wilt uitvoeren, kunt u deze in dit vakje opgeven.
- Suite: Als u suite-bestanden hebt in de vorm van
testing.xml
bestanden, kunt u deze hier selecteren voor uitvoering.
voer de configuratienaam in als TestNGRunConfig
en selecteer de nieuw aangemaakte klasse onder de klasse sectie en klik op Toepassen.
4. Als u nu de nieuw gemaakte configuratie wilt uitvoeren, klikt u op Uitvoeren na het klikken op Toepassen.
dit compileert en voert de TestNG-testklasse uit die we hebben geschreven. Het resultaat van de uitvoering van de test wordt weergegeven in de Console en resulteert in windows van Eclipse zoals weergegeven in de volgende screenshot.
Running: C:\Users\somelocalpath\testng-customsuite.xmlPASSED: f=============================================== Default test Tests run: 1, Failures: 0, Skips: 0==============================================================================================Default suiteTotal tests run: 1, Failures: 0, Skips: 0=============================================== Time taken by org.testng.reporters.XMLReporter@177b3cd: 23 ms Time taken by : 0 ms Time taken by org.testng.reporters.jq.Main@b8deef: 46 ms Time taken by org.testng.reporters.JUnitReportReporter@10ab323: 12 ms Time taken by org.testng.reporters.EmailableReporter2@5e176f: 13 ms Time taken by org.testng.reporters.SuiteHTMLReporter@d1e89e: 142 ms
u kunt de testklasse ook uitvoeren door deze te selecteren en er met de rechtermuisknop op te klikken, te selecteren als Uitvoeren in het menu en vervolgens TestNG Test te kiezen.
In deze TestNG tutorial, we geleerd over TestNG, functies aangeboden door TestNG, het installeren van de TestNG plugin in Eclipse en het schrijven en uitvoeren van een TestNG-tests Door Eclipse.
Gelukkig Leren !!