2017-05-22 6 views
5

Ich schreibe Tests für Postman, die im Allgemeinen recht einfach funktioniert. Nun möchte ich jedoch auf einige Daten der Anfrage zugreifen, genauer gesagt auf einen Abfrageparameter. Sie können auf die Anforderungs-URL über das Objekt "request.url" zugreifen, das einen String zurückgibt. Gibt es einen einfachen Weg in Postman, diese URL-Zeichenfolge zu analysieren, um auf die Abfrageparameter zuzugreifen?Wie bekomme ich Parameter in Postman?

Antwort

2

Ich glaube nicht, dass es im Postman-Request-Objekt für Abfrageparameter eine Out-of-Box-Eigenschaft gibt.

Derzeit vier Eigenschaften werden mit ‚Request‘ Objekt zugeordnet:

Daten {Objekt} - das ist ein Wörterbuch von Formulardaten für die Anforderung. (request.data ["key"] == "value") headers {Objekt} - Dies ist ein Wörterverzeichnis der Header für die Anfrage (request.headers ["key"] == "value") Methode {string } - GET/POST/PUT usw.
url {string} - die URL für die Anfrage.

Quelle: https://www.getpostman.com/docs/sandbox

0

haben Sie einen Blick in die Konsole zu tun:

console.log(request); 

es wird Ihnen zeigen, alles, was Sie von der Anfrage zu bekommen. Dann müssen Sie auf die verschiedenen Parameter zugreifen, indem Sie. request.name, wenn Sie den Testnamen wünschen. Wenn Sie ein bestimmtes Element in der URL wollen, ich fürchte, Sie einige Codierung verwenden müssen wird es zu erhalten (sorry ich ein Anfänger in javascript bin)

this helps

Alexandre

3

Ich habe gesucht, um die Anfrage Parameter zum Schreiben von Tests (in POSTMAN) zugreifen. Ich analysierte die request.url, die in POSTMAN verfügbar ist.

const paramsString = request.url.split('?')[1]; 
const eachParamArray = paramsString.split('&'); 
let params = {}; 
eachParamArray.forEach((param) => { 
    const key = param.split('=')[0]; 
    const value = param.split('=')[1]; 
    Object.assign(params, {[key]: value}); 
}); 
console.log(params); // this is object with request params as key value pairs 

POSTMAN CLIENT CONSOLE RESPONSE

bearbeiten: hinzugefügt hält Github Gist

0

Die pm.request.url.query.all() Array alle Abfrage params als Objekte. Um die Parameter als Wörterbuch zu erhalten, können Sie folgendes verwenden:

var query = {}; 
pm.request.url.query.all().forEach((param) => { query[param.key] = param.value}); 
Verwandte Themen