En aquest tema, aprendrem com automatitzar les proves d'API utilitzant Newman, una eina de línia de comandes que ens permet executar col·leccions de Postman fora de l'entorn de Postman. Això és especialment útil per integrar les proves en processos d'integració contínua i desplegament continu (CI/CD).
Què és Newman?
Newman és un executor de col·leccions de Postman que funciona des de la línia de comandes. Permet executar col·leccions de Postman en entorns on no es pot utilitzar la interfície gràfica de Postman, com ara servidors de CI/CD.
Característiques de Newman:
- Execució de Col·leccions: Permet executar col·leccions de Postman des de la línia de comandes.
- Integració amb CI/CD: Es pot integrar fàcilment amb sistemes de CI/CD com Jenkins, Travis CI, etc.
- Suport per a Entorns: Pot utilitzar fitxers d'entorn per gestionar variables.
- Informes: Genera informes detallats de les execucions de les proves.
Instal·lació de Newman
Per utilitzar Newman, primer cal instal·lar-lo. Newman es distribueix com un paquet de Node.js, per la qual cosa necessitaràs tenir Node.js i npm instal·lats al teu sistema.
Passos per a la instal·lació:
- Instal·la Node.js i npm: Si encara no els tens, descarrega i instal·la Node.js des del lloc oficial. Això també instal·larà npm.
- Instal·la Newman: Obre una terminal i executa la següent comanda:
npm install -g newman
Executar Col·leccions amb Newman
Un cop instal·lat Newman, pots començar a executar col·leccions de Postman des de la línia de comandes.
Exemple bàsic d'execució:
Suposem que tens una col·lecció exportada de Postman anomenada my-collection.json
. Pots executar-la amb la següent comanda:
Opcions comunes:
- Utilitzar un fitxer d'entorn: Si la teva col·lecció utilitza variables d'entorn, pots especificar un fitxer d'entorn amb l'opció
-e
:newman run my-collection.json -e my-environment.json
- Generar un informe HTML: Pots generar un informe HTML de l'execució amb l'opció
--reporters
:newman run my-collection.json --reporters cli,html --reporter-html-export report.html
Integració amb CI/CD
Newman es pot integrar fàcilment en sistemes de CI/CD per automatitzar les proves d'API com a part del procés de desenvolupament.
Exemple d'integració amb Jenkins:
- Configura un treball de Jenkins: Crea un nou treball de Jenkins i configura'l per executar un script de shell.
- Script de Shell per executar Newman:
npm install -g newman newman run my-collection.json -e my-environment.json --reporters cli,html --reporter-html-export report.html
- Configura les notificacions: Configura Jenkins per enviar notificacions basades en els resultats de les proves.
Exercici Pràctic
Objectiu: Automatitzar una col·lecció de Postman amb Newman i generar un informe HTML.
Passos:
- Exporta una col·lecció de Postman a un fitxer JSON.
- Crea un fitxer d'entorn si la col·lecció utilitza variables.
- Executa la col·lecció amb Newman i genera un informe HTML.
- Revisa l'informe per assegurar-te que totes les proves passen correctament.
Solució:
# Exporta la col·lecció i l'entorn des de Postman # Executa la col·lecció amb Newman newman run my-collection.json -e my-environment.json --reporters cli,html --reporter-html-export report.html
Conclusió
Automatitzar les proves d'API amb Newman és una manera eficient d'integrar les proves en el teu flux de treball de desenvolupament. Amb la capacitat d'executar col·leccions de Postman des de la línia de comandes i generar informes detallats, Newman és una eina poderosa per a qualsevol equip de desenvolupament que busqui millorar la qualitat del seu programari mitjançant proves automatitzades.
Curs de Postman i Proves d'API
Mòdul 1: Introducció a les API i Postman
Mòdul 2: Proves Bàsiques d'API amb Postman
- Creació de la Teva Primera Sol·licitud
- Comprensió de la Sol·licitud i la Resposta
- Ús de les Col·leccions de Postman
- Variables d'Entorn a Postman
Mòdul 3: Tècniques Intermèdies de Proves d'API
- Enllaçar Sol·licituds
- Ús de Scripts de Postman
- Proves Basades en Dades amb Postman
- Proves d'APIs RESTful
Mòdul 4: Funcions Avançades de Postman
- Automatització de Proves amb Newman
- Integració Contínua amb Postman
- Servidors Simulats a Postman
- Tècniques Avançades de Scripting
Mòdul 5: Millors Pràctiques de Proves d'API
- Disseny de Casos de Prova Efectius
- Gestió de l'Autenticació
- Gestió d'Errors i Depuració
- Proves de Rendiment amb Postman