how use command line integration with newman postman
Leer hoe u postbode-incasso's kunt uitvoeren met Newman:
In deze tutorial zullen we zien hoe we Postman-verzamelingen kunnen integreren of uitvoeren via de opdrachtregel met behulp van Newman, een opdrachtregelintegratietool voor Postman.
Newman is een gratis en open-source tool. Het biedt krachtige mogelijkheden om de Postman-collecties uit te voeren, gebruikmakend van superhandige mogelijkheden van Postman zoals Tests, Assertions, Pre-request scripts, enz. En het uitvoeren van de collectie via de opdrachtregel.
Kijk hier om AZ van trainingsinstructies voor postbode hier te zien.
Wat je leert:
Wat is Newman?
Newman is een commandoregeloperator voor Postman-verzamelingen. Met andere woorden, het stelt een gebruiker in staat om een bestaande Postman-collectie uit te voeren via de opdrachtregel.
Het verwacht of verbruikt de JSON-versie van de collectie die kan worden verkregen door simpelweg de collectie te exporteren in JSON-verzamelingsindeling of de URL van de verzameling die niets anders is dan dezelfde JSON die is verkregen door de verzamelingsexport.
Hier is een video-tutorial:
Newman installeren
Newman is een NodeJS-module en is dus afhankelijk van het systeem waarop de node is geïnstalleerd. Om te controleren of het knooppunt is geïnstalleerd of niet, controleert u eenvoudig de knooppuntversie op het systeem met behulp van de onderstaande opdracht.
Als de opdracht wat uitvoer retourneert zoals hierboven, betekent dit dat het knooppunt is geïnstalleerd en dat we goed kunnen beginnen met de installatie van Newman. Als dit niet het geval is, kunt u het knooppunt installeren door de installatie-instructies te raadplegen hier
Zodra de installatie van het knooppunt is gelukt, kunt u Newman eenvoudig installeren zoals elk ander knooppuntpakket met behulp van de onderstaande opdracht.
Hier staat ‘-g’ voor globale installatie, wat betekent dat het Newman-pakket toegankelijk zal zijn vanuit elke map / locatie op het bestandssysteem. Om een lokale installatie uit te voeren, kunt u de vlag ‘-g’ van het bovenstaande verwijderen, waar het Newman-pakket alleen toegankelijk is vanaf de geïnstalleerde locatie of map.
Om de succesvolle installatie van Newman te valideren, kunt u eenvoudig de versie controleren met de onderstaande opdracht.
Verzamelingen uitvoeren met Newman
Als u verzamelingen wilt uitvoeren met Newman, moet u een van de twee hebben.
- De verzameling in JSON-indeling.
- URL van de gehoste collectie.
Het commando dat wordt gebruikt om de Postman-collectie uit te voeren met Newman is:
beste schrijf-apps voor Windows 10
Laten we eens proberen een voorbeeldcollectie te maken met Postman.
- Ga naar de Postman-applicatie, gebruik een bestaande Postman-collectie en exporteer deze naar JSON-formulier. (We zullen een nieuwe collectie maken met 3 verzoeken, d.w.z. Registreer gebruiker, Login gebruiker en Get User met behulp van API-eindpunten hier
- Exporteer nu de collectie naar JSON-indeling.
- Zodra de verzameling JSON is verkregen, opent u een opdrachtprompt en voert u de verzameling uit met de opdracht Newman run (stel dat de verzameling is geëxporteerd met de naam - Postman_Newman_IntegrationCollection .json) en de gebruiker heeft naar de exportdirectory van de verzameling gebladerd, dan kan de verzameling eenvoudig worden uitgevoerd door het onderstaande commando te gebruiken.
Zodra de bovenstaande opdracht is uitgevoerd, wordt de volgende uitvoer geproduceerd.
Newman-integratie met omgevingsvariabelen
Laten we nu eens kijken naar meer geavanceerde toepassingen van Newman. Voor een verzameling die niet afhankelijk is van omgevingsvariabelen, kan de verzameling eenvoudig worden uitgevoerd met de opdracht Newman run. Maar voor verzamelingen die de omgevingsvariabelen gebruiken, moeten we ook de omgevingsvariabele JSON samen met de verzameling JSON opgeven.
Voorbeeld: We zullen dezelfde verzameling gebruiken en een omgevingsvariabele gebruiken voor GET User-eindpunt, d.w.z. voor aanvraag met eindpunt
We zullen userId gebruiken uit de verzameling omgevingsvariabelen. Het resulterende verzoek wordt dus https://reqres.in/api/users/{{userId}}
Zodra het omgevingsbestand is gemaakt, exporteert u het als een JSON met behulp van de onderstaande stappen.
- Maak een omgeving met één variabele genaamd userId en de waarde moet worden ingesteld op ‘4’.
- Klik nu op de knop Instellingen om het venster 'Omgevingen beheren' te openen.
- Klik op het pictogram ‘Downloaden’ naast de gemaakte omgeving om de omgeving te downloaden als een JSON-bestand (sla het bestand op met de naam als ‘testEnv.json).
Laten we de verzameling opnieuw exporteren met het gewijzigde verzoek en proberen dezelfde verzameling samen met het omgevingsbestand uit te voeren met de onderstaande opdracht:
Zodra de bovenstaande opdracht is uitgevoerd, blijft de uitvoer hetzelfde als de directe verzameling, met als enige wijziging dat het ‘GET User’ -verzoek nu de waarde uit het omgevings-JSON-bestand ophaalt.
Bewijsresultaten met behulp van Newman
Aangezien de Postman-verzoeken ook beweringen kunnen bevatten, zullen we nu doorlopen hoe de beweringsresultaten worden weergegeven wanneer de Postman-verzamelingen worden uitgevoerd via een Newman.
De Newman collection runner is in volledige gelijkheid met de Postman Collection runner en Request executor. Voor verzoeken met beweringen worden de beweringen geëvalueerd zodra de uitvoering van het verzoek is voltooid en wordt de samenvatting van de uitvoering van de bewering weergegeven in de testsamenvatting aan het einde van de testrun.
Voor de bovenstaande verzameling hebben we een bewering op collectieniveau toegevoegd om te controleren of de statuscode van het antwoord 200 is, d.w.z. voor elk verzoek dat deel uitmaakt van de verzameling, moet deze bewering worden geassocieerd.
Dus als deze verzameling 3 verzoeken had, betekent dit dat er in totaal 3 beweringen zouden moeten zijn uitgevoerd.
Raadpleeg de onderstaande schermafbeelding voor gemarkeerde uitvoeringsresultaten en assertionresultaten.
Rapportgeneratie met behulp van Newman
Tot nu toe weten we dat Newman Postman-verzamelingen kan uitvoeren via de opdrachtregel en enkele testlogboeken en een samenvatting van de testuitvoeringen kan genereren. Maar hoe zit het met de opgemaakte rapporten die kunnen worden gedeeld of gepubliceerd op een server?
Nou, Newman heeft hier ook ondersteuning voor. Er zijn enkele aangepaste knooppuntmodules beschikbaar voor het genereren van Newman-testuitvoeringsrapporten. We zullen een voorbeeld doorlopen met behulp van een newman-html-reporter
Deze reporter is weer een knooppuntmodule en moet apart worden geïnstalleerd met het onderstaande commando.
Zodra de bovenstaande module is geïnstalleerd, kan deze samen met het Newman run-commando worden gebruikt.
De vlag ‘-r’ geeft de verslaggever aan die moet worden gebruikt bij de Newman-verzamelingsrun.
Met deze optie maakt het gebruik van de Newman-reporter-html-module of -pakketten en maakt een HTML-gebaseerd rapport voor de testuitvoering.
Verwijs naar zo'n screenshot van het onderstaande HTML-rapport:
Integratie met CI Tools
Omdat Newman de mogelijkheid heeft om als een opdrachtregel te draaien, vermindert het veel afhankelijkheid van eventuele vereisten in de vorm van een console of een applicatie, dwz de enige afhankelijkheid die Newman heeft is een knooppunt (dat over het algemeen beschikbaar is als een uitvoering omgeving op alle CI-machines zoals Jenkins-slaven of Travis-knooppunten).
Hierdoor kunnen Postman-verzamelingen worden uitgevoerd als onderdeel van de build-pijplijnen zelf via de Newman-opdrachtregel.
Omdat Newman ook de mogelijkheid heeft om resultaten in Html-formaat te pushen, is dit erg handig en handig en tijdens de uitvoering van de pijplijn zelf kunnen de HTML-resultaten naar een server worden gepusht of via een e-mail naar de gewenste gebruikers worden verzonden, enz. mogelijkheden zijn eindeloos omdat de afhankelijkheden minimaal zijn.
Raadpleeg dit voorbeeld van de officiële blog van Postman voor een end-to-end gedetailleerd uitvoeringsvoorbeeld van integratie met Jenkins hier
Meer opties met Newman
Wat we ook hebben behandeld, is een subset van de functionaliteit die wordt geleverd door Newman. Voor volledige details van opdrachten en schakelaars die Newman ondersteunt, opent u eenvoudig de opdrachtregelhulp voor Newman met behulp van de onderstaande opdracht.
Hier is de uitvoer van het bovenstaande commando, met details over alle schakelaars en hun betekenis.
Er zijn ook andere informatiebronnen voor Newman API-referentie. Gelieve te verwijzen hier voor de officiële documentatie.
Gevolgtrekking
In deze tutorial hebben we de opdrachtregelintegratie van Postman, Newman genaamd, doorlopen, waarmee Postman-verzamelingen via een opdrachtregelinterface kunnen worden uitgevoerd.
Het is gewoon een knooppuntpakket en elke opdrachtregel waarop een knooppunt is geïnstalleerd samen met Newman, zou in staat moeten zijn om de Postman-verzameling uit te voeren en mooie rapporten te genereren over de uitvoering van de verzameling.
Commandoregelintegratie is ook een grote hulp voor de integratie van Postman-gebaseerde verzamelingstests met CI-tools zoals Jenkins, Travis, enz., Omdat het doorlopen van de commandoregel niet afhankelijk is van het besturingssysteem of de applicatie en het gewoon een knooppuntomgeving nodig heeft om de verzameling.
Bezoek hier voor de exclusieve trainingsserie voor postbode-trainingen.
Aanbevolen literatuur
- Snijd Commando in Unix met voorbeelden
- Unix Cat Command Syntax, opties met voorbeelden
- Ls Command in Unix met voorbeelden
- Hoe en wanneer gebruik ik Postman Pre Request en Post Request Scripts?
- Grep-opdracht in Unix met eenvoudige voorbeelden
- Opdrachtregelargumenten in C ++
- Unix-sorteeropdracht met syntaxis, opties en voorbeelden
- Opdrachtregelargumenten in Unix Shell-script met voorbeeld