Comment lire les variables d’environnement dans les tests Postman?

J’utilise la version de l’application packagée de Postman pour écrire des tests sur mon API Rest. J’essaie de gérer l’état entre les tests consécutifs. Pour faciliter cela, l’object Postman exposé à l’exécution du test Javascript dispose de méthodes pour définir des variables, mais aucune pour la lecture.

postman.setEnvironmentVariable("key", value ); 

Maintenant, je peux lire cette valeur dans le prochain appel via la structure {{key}} qui aspire les valeurs de l’environnement actuel. MAIS, cela ne fonctionne pas dans les tests; cela ne fonctionne que dans la construction de requêtes.

Alors, est-ce qu’il y a des choses à lire dans les tests?

Selon les documents ici, vous pouvez utiliser

 environment["foo"] OR environment.foo globals["bar"] OR globals.bar 

pour y accéder.

c’est à dire;

 postman.setEnvironmentVariable("foo", "bar"); tests["environment var foo = bar"] = environment.foo === "bar"; postman.setGlobalVariable("foobar", "1"); tests["global var foobar = true"] = globals.foobar == true; postman.setGlobalVariable("bar", "0"); tests["global var bar = false"] = globals.bar == false; 

Postman a mis à jour son sandbox et a ajouté une API pm.* . Bien que l’ancienne syntaxe de lecture des variables dans les scripts de test fonctionne toujours, selon les documents :

Une fois qu’une variable a été définie, utilisez la méthode pm.variables.get() ou utilisez la pm.environment.get() ou pm.globals.get() fonction de la scope appropriée pour extraire la variable. La méthode nécessite le nom de la variable en tant que paramètre pour récupérer la valeur stockée dans un script.