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ó:

  1. 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.
  2. 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:

newman run my-collection.json

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:

  1. Configura un treball de Jenkins: Crea un nou treball de Jenkins i configura'l per executar un script de shell.
  2. 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
    
  3. 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:

  1. Exporta una col·lecció de Postman a un fitxer JSON.
  2. Crea un fitxer d'entorn si la col·lecció utilitza variables.
  3. Executa la col·lecció amb Newman i genera un informe HTML.
  4. 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.

© Copyright 2024. Tots els drets reservats