integration maven with testng using maven surefire plugin
In deze tutorial wordt uitgelegd hoe u de Maven Surefire-plug-in gebruikt om onze afhankelijkheden te beheren en bepaalde testscripts of suites te selecteren en uit te voeren met behulp van TestNG:
Hier is een perfecte gids voor u over de integratie van Maven en TestNG met behulp van de Maven Surefire-plug-in en how om het script uit te voeren met deze plug-in.
Laten we verder gaan!!
Bekijk hier ALLE TestNG-zelfstudies.
Wat je leert:
wat is functioneel testen met voorbeelden
- Wat is de Maven Surefire-plug-in?
- Test Suite uitvoeren met behulp van de Maven Surefire-plug-in
- Gevolgtrekking
Wat is de Maven Surefire-plug-in?
- De Surefire-plug-in is ontworpen om de unit-tests van een applicatie uit te voeren en kan de rapporten genereren in HTML-indeling.
- We kunnen Surefire-plug-ins integreren met de andere testframeworks zoals TestNG, Junit en POJO Tests, enz.
- Het ondersteunt ook andere talen zoals C #, Ruby, Scala, etc.
Basisterminologieën
Laten we de meest basisterminologieën die in deze tutorial worden gebruikt, vernieuwen / beter begrijpen.
# 1) Maven: Het is een build-automatiseringstool die voornamelijk wordt gebruikt voor Java-projecten. Het downloadt dynamisch Java-bibliotheken en Maven-plug-ins van de Maven Central-repository die Dependency Management wordt genoemd.
# 2) Maven Central Repository : Het is een plaats waar alle projectpotten, bibliotheken en plug-ins worden opgeslagen en het is gemakkelijk toegankelijk voor Maven.
# 3) POM (Project Object Model): Het is een XML-bestand dat informatie bevat over het project en configuratiedetails die door maven zijn gebruikt om het project te bouwen.
# 4) TestNG : Het is een open-source testraamwerk dat ons helpt om voor / na tests uit te voeren, door de tests te groeperen met behulp van annotaties en om rapporten te genereren. Het ondersteunt ook datagestuurde testen, parallelle uitvoering en parametrisering. Het is gemakkelijker te gebruiken.
Dit zijn de basisterminologieën van Maven en TestNG. Laten we nu eens kijken naar het doel van de Surefire-plug-in en de integratieprocedure.
Waarom hebben we Maven nodig met TestNG-integratie?
- Telkens wanneer we testscripts of suites uitvoeren met behulp van het Maven-project, worden onze afhankelijkheden beheerd in het POM.xml-bestand. Een specifieke testsuite kan echter niet worden geselecteerd om uit een lijst met beschikbare suites uit te voeren.
- In TestNG kunnen we onze afhankelijkheden niet beheren, maar we kunnen bepaalde testscripts of suites selecteren en uitvoeren.
- Aangezien Maven en TestNG verschillende mogelijkheden hebben, integreren we beide met behulp van de Maven Surefire-plug-in.
Werkstroom met behulp van de Maven Surefire-plug-in
- Hier begint de uitvoering vanaf het Maven-project met behulp van POM.xml. In eerste instantie maakt het verbinding met de Maven Online Repository en downloadt het de nieuwste versie van de afhankelijkheden.
- Omdat TestNG de mogelijkheid heeft om bepaalde testscripts of suites te selecteren en uit te voeren, integreren we dit met Maven met behulp van de Maven Surefire-plug-in.
Configuratie van de Maven Surefire-plug-in
Stap 1: Selecteer het POM.xml-bestand uit het Maven-project. Klik met de rechtermuisknop en selecteer Maven => Plug-in toevoegen
Stap 2: Het invoegtoepassingsvenster toevoegen wordt weergegeven.
Om de plugin-details in te voeren:
- Ga naar Google en typ de plug-in Maven Surefire.
- Klik op de link maven.apache.org/surefire/maven-surefire-plugin en selecteer de link ‘TestNg gebruiken’ in het linkerdeelvenster van het venster.
- Selecteer de XML-code die wordt weergegeven onder de kop ‘Suite XML-bestanden gebruiken’.
- Voer de groeps-id, artefact-id en versiegegevens in het venster Plug-in toevoegen in met behulp van het onderstaande XML-codefragment en klik op OK.
Broncode:
Stap 3: Door op de OK-knop te klikken, wordt de plug-in toegevoegd in het POM.xml-bestand.
Stap 4: Kopieer het xml-codefragment en voeg het toe aan onder de tag.
Stap 5: Ten slotte ziet de codeconfiguratie van POM.xml eruit zoals hieronder weergegeven.
Test Suite uitvoeren met behulp van de Maven Surefire-plug-in
Stap 1: Selecteer een script (LoginLogoutTest), klik met de rechtermuisknop en selecteer TestNG-> Test Hier proberen we de batch-uitvoering uit te voeren met TestNG.
Stap 2: XML-bestand wordt gegenereerd in de map Temp. Hernoem het bestand naar fullRegressionsuite.xml (hernoem het voor ons gemak).
Stap 3: Maak een klassenaam voor elk script en voeg deze toe onder de tag.
Stap 4: Geef in het POM.xml-bestand de naam fullRegressionsuite.xml in de tag.
- Het is de testsuite die een XML-bestand van de TestNG bevat dat door Maven moet worden geactiveerd.
- We kunnen een willekeurig aantal testsuites in de tag hebben. Zodat de scripts die we in elke suite hebben, worden uitgevoerd.
Stap 5 : Klik met de rechtermuisknop op POM.xml => Uitvoeren => Maven-test
Stap 6: Regressie Test Suite is met succes uitgevoerd en we kunnen de uitvoer zien in het consolevenster.
Stap 7: Vernieuw het hele project en het testsuite-rapport is te zien in de doelmap van het venster Projectverkenner.
Stap 8: Er wordt een uitvoeringsrapport weergegeven met alle informatie over de testsuite.
Gevolgtrekking
De Maven Surefire-plug-in helpt ons om onze afhankelijkheden te beheren en bepaalde testscripts of suites te selecteren en uit te voeren met behulp van TestNG.
In deze tutorial hebben we dus de integratie van Maven met TestNg bereikt.
Veel leesplezier !!
Bezoek hier om de TestNG-trainingsserie voor iedereen te zien.
Aanbevolen literatuur
- 20 meest populaire TestNG interviewvragen en antwoorden
- Leer hoe u TestNG-annotaties in selenium gebruikt (met voorbeelden)
- TestNG-annotaties en luisteraars
- TestNG-voorbeeld: het bestand TestNG.xml maken en gebruiken
- TestNG-installatie, basisprogramma en rapporten
- TestNG-zelfstudie: inleiding tot TestNG-framework
- Maven configureren met Eclipse Java IDE
- Gebruik van Maven Build Automation Tool en Maven Project Setup voor Selenium - Selenium Tutorial # 24