En bref
Postman a restreint l'accès au Collection Runner sur son offre gratuite, ce qui interrompt ou limite l'exécution automatisée des tests pour les équipes qui n'ont pas mis à niveau leur compte. Cela touche les exécutions locales, les pipelines CI/CD et les workflows qui utilisent le Runner pour lancer des requêtes en lot. Voici ce qui change, ce que cela casse concrètement, et comment exécuter les mêmes scénarios avec le runner d'Apidog sans limites d'exécution sur tous les plans.
Introduction
Le Collection Runner de Postman est souvent utilisé pour automatiser des flux API complets : exécuter une collection de requêtes, passer des variables d'une étape à l'autre, valider les réponses avec des assertions, puis récupérer un rapport d'exécution.
Exemple typique :
- Appeler
/login - Extraire un token depuis la réponse
- Stocker ce token dans une variable d'environnement
- Appeler plusieurs endpoints protégés
- Vérifier les statuts HTTP, les schémas JSON et les valeurs métier
Dans Postman, ce type de chaîne repose souvent sur pm.environment.set() :
const json = pm.response.json();
pm.environment.set("access_token", json.token);
Puis dans les requêtes suivantes :
Authorization: Bearer {{access_token}}
Avec les restrictions introduites en 2026 sur l'offre gratuite, ces exécutions automatisées sont limitées. Les développeurs peuvent toujours envoyer des requêtes une par une, mais les exécutions groupées via le Collection Runner ou certains usages de Newman deviennent problématiques dès qu'elles sont utilisées régulièrement.
Ce que Postman a changé dans le Collection Runner
L'offre gratuite de Postman restreint désormais le Collection Runner de plusieurs façons.
Limites d'exécution mensuelles
Les comptes gratuits ont un plafond sur le nombre d'exécutions du Collection Runner par mois. Postman n'a pas publié un nombre exact de manière claire, mais des retours communautaires l'estiment autour de 25 exécutions mensuelles.
Pour une équipe qui lance une suite de tests plusieurs fois par jour, cette limite peut être atteinte très vite.
Restrictions autour de Newman CLI
Newman est l'outil CLI open-source permettant d'exécuter des collections Postman depuis un terminal ou un pipeline CI/CD.
Avant, un workflow pouvait simplement lancer :
newman run ./collections/api-tests.json -e ./environments/staging.json
Après les restrictions, certaines fonctionnalités liées à des collections synchronisées dans le cloud dépendent davantage du niveau de plan du compte Postman.
Runner visuel limité
Le Collection Runner visuel, accessible depuis l'interface Postman, peut afficher un état bloqué ou payant une fois la limite atteinte.
Ce qui reste disponible : l'envoi manuel d'une requête individuelle via le bouton Send. Les restrictions concernent surtout l'automatisation par lots.
Ce qui ne fonctionne plus bien en pratique
Tests de non-régression avant commit ou déploiement
Beaucoup d'équipes exécutent une collection avant de fusionner une pull request ou avant de déployer en staging.
Exemple :
- 30 requêtes dans la collection de non-régression
- 3 développeurs
- 2 exécutions par développeur et par jour
Dans ce cas, la limite gratuite peut être consommée en quelques jours seulement.
Pipelines CI/CD
Les pipelines basés sur Newman sont particulièrement exposés.
Exemple GitHub Actions :
- name: Run API tests
run: newman run ./collections/api-tests.json -e ./environments/staging.json
Une fois la limite atteinte, le pipeline peut échouer ou rencontrer des erreurs de quota. C'est critique si les tests API sont déclenchés à chaque push, pull request ou déploiement.
Suites API de bout en bout
Les workflows API multi-étapes utilisent souvent des variables dynamiques :
const response = pm.response.json();
pm.environment.set("user_id", response.id);
Puis :
GET /users/{{user_id}}/orders
Sans Runner disponible, il faut exécuter les requêtes manuellement une par une, ce qui rend les tests plus lents, moins fiables et plus difficiles à intégrer à un processus de livraison continue.
Tests de charge ou de performance basiques
Le Collection Runner permet de configurer des itérations et des délais entre requêtes. C'est utile pour des tests de charge simples, par exemple :
- exécuter une collection 100 fois
- ajouter un délai entre chaque itération
- vérifier que les réponses restent stables
Avec une limite mensuelle sur les exécutions, ce cas d'usage devient peu exploitable sur l'offre gratuite.
Solutions de contournement possibles dans Postman
Si vous ne pouvez pas changer d'outil immédiatement, voici quelques options.
1. Exporter la collection et l'environnement, puis exécuter Newman localement
Vous pouvez exporter une collection Postman au format JSON et l'exécuter localement avec Newman :
newman run collection.json -e environment.json
Cette approche lit des fichiers locaux et ne dépend pas directement d'une collection synchronisée dans le cloud.
Limite : vous perdez la synchronisation automatique avec l'espace de travail Postman. À chaque modification, il faut réexporter la collection et l'environnement.
2. Découper les grandes collections
Vous pouvez diviser une collection importante en plusieurs collections plus petites.
Exemple :
api-tests-auth.json
api-tests-users.json
api-tests-orders.json
api-tests-billing.json
Cela peut réduire la pression sur certaines exécutions, mais ce n'est pas une vraie solution. Les flux métier multi-étapes deviennent plus difficiles à maintenir, surtout si les requêtes dépendent les unes des autres.
3. Mettre à niveau uniquement le compte utilisé par la CI
Si un seul compte exécute les tests dans la CI, vous pouvez mettre à niveau uniquement ce compte, tandis que les autres membres de l'équipe restent sur l'offre gratuite.
C'est moins coûteux qu'une mise à niveau globale, mais cela ne règle pas le problème pour les développeurs qui veulent lancer les tests localement.
Comment le runner d'Apidog fonctionne différemment
Dans Apidog, le runner est disponible via les Scénarios de test ou le bouton Exécuter sur une collection. Il n'a pas de limite mensuelle d'exécution, y compris sur l'offre gratuite.
Comparaison directe :
| Fonctionnalité | Postman gratuit | Apidog gratuit |
|---|---|---|
| Exécutions du Runner/mois | ~25 selon des retours communautaires | Illimité |
| Exécutions CI/CD via CLI | Limité | Illimité |
| Itérations par exécution | Limité | Illimité |
| Enchaînement de requêtes avec variables | Limité | Illimité |
| Assertions de test | Disponible | Disponible |
| Rapport récapitulatif d'exécution | Disponible | Disponible |
Le runner CLI d'Apidog, apidog-cli, s'intègre dans une CI/CD de manière similaire à Newman :
apidog run {project-id} --collection {collection-id} --environment {env-id}
Vous pouvez aussi exporter une collection depuis Apidog et l'exécuter hors ligne, comme avec Newman et un fichier local, sans dépendre de restrictions basées sur le compte.
Migrer un pipeline Newman vers Apidog CLI
Voici une transition simple dans GitHub Actions.
Avant : Newman
- name: Install Newman
run: npm install -g newman
- name: Run API tests
run: newman run ./collections/api-tests.json -e ./environments/staging.json --reporters cli,json --reporter-json-export results.json
Après : Apidog CLI
- name: Install Apidog CLI
run: npm install -g apidog-cli
- name: Run API tests
run: apidog run --project {project-id} --env {env-id} --output results.json
env:
APIDOG_ACCESS_TOKEN: ${{ secrets.APIDOG_ACCESS_TOKEN }}
Les principales différences sont :
- Apidog utilise un jeton d'accès via
APIDOG_ACCESS_TOKEN - les exécutions référencent un projet et un environnement
- la sortie JSON peut être utilisée pour générer des rapports ou archiver les résultats
Pour stocker le token dans GitHub Actions :
- Ouvrez votre repository GitHub
- Allez dans Settings
- Ouvrez Secrets and variables
- Ajoutez un secret nommé
APIDOG_ACCESS_TOKEN - Référencez-le dans le workflow avec
${{ secrets.APIDOG_ACCESS_TOKEN }}
Option alternative : continuer avec Newman
Si vous souhaitez garder Newman dans votre CI, vous pouvez exporter une collection Apidog au format JSON compatible avec Postman, puis continuer à utiliser :
newman run ./collections/api-tests.json -e ./environments/staging.json
Cette approche est utile si :
- votre pipeline CI utilise déjà Newman
- vous voulez éviter une migration immédiate du script CI
- vous préférez utiliser Apidog pour concevoir et maintenir les API, tout en gardant Newman comme runner temporaire
Fonctionnalités avancées du runner Apidog
Le runner d'Apidog couvre les cas d'usage classiques du Collection Runner et ajoute plusieurs options pratiques.
Tests basés sur les données
Vous pouvez importer un fichier CSV ou JSON pour exécuter la même collection avec plusieurs jeux de données.
Exemple CSV :
email,password,expected_status
user1@example.com,password123,200
user2@example.com,badpassword,401
Chaque ligne devient une itération de test.
Nombre d'itérations personnalisé
Vous pouvez définir un nombre précis d'itérations pour une exécution.
Exemple d'usage :
- 10 itérations pour vérifier un flux de login
- 100 itérations pour un test de stabilité
- 500 itérations pour un stress test basique
Cela permet de valider rapidement la robustesse d'un endpoint sans gérer un compteur mensuel d'exécutions.
Intégration avec Smart Mock
Le runner peut interagir avec le serveur mock intégré d'Apidog. C'est utile lorsque :
- l'API backend n'est pas encore implémentée
- le frontend doit être testé avec des réponses stables
- vous voulez isoler un client API d'un environnement instable
Vous pouvez donc exécuter vos scénarios contre des endpoints mockés sans lancer un serveur séparé.
Exécutions planifiées
Apidog permet aussi de planifier des exécutions automatiques :
- toutes les heures
- tous les jours
- selon un calendrier défini
Les résultats sont ensuite disponibles dans l'historique de test du projet, sans avoir à configurer une tâche cron externe ou un déclencheur CI spécifique.
Conclusion
Les restrictions du Collection Runner de Postman créent un vrai blocage pour les équipes qui utilisent les tests API automatisés dans leur workflow quotidien ou leurs pipelines CI/CD.
Si vous restez dans l'écosystème Postman, les contournements possibles sont l'export local vers Newman, le découpage des collections ou la mise à niveau sélective d'un compte CI.
Si vous voulez éviter les limites d'exécution, le runner d'Apidog couvre les mêmes cas d'usage : collections, variables, assertions, itérations, exécution CLI et intégration CI/CD. La migration depuis Newman demande surtout d'adapter la commande d'exécution et de configurer un jeton d'accès dans votre pipeline.
Top comments (0)