Ich möchte POST - Daten aus derPOSTMANGoogle Chrome-Erweiterung. Ich möchte 10 Anfragen mit unterschiedlichen Daten machen und es sollte gleichzeitig sein.
Kann man das in POSTMAN machen? Wenn ja, kann mir jemand erklären, wie dies erreicht werden kann?
Vielen Dank für Ihre Zeit.
Ich denke, es gibt keine Funktion im Postboten, die gleichzeitig Tests durchführt.
Wenn ich Sie wäre, würde ich Apache jMeter in Betracht ziehen.
In Bezug auf Postman ist das einzige, was Ihren Bedürfnissen mehr oder weniger entsprechen könnte, Postman Runner. Dort können Sie die Details angeben:
Die Läufe werden nicht gleichzeitig ablaufen, sondern nur aufeinanderfolgend.
Hoffentlich hilft das. Aber denken Sie über jMeter nach (Sie werden es lieben).
Postman tut das nicht, aber Sie können mehrere curl
-Anforderungen asynchron in Bash ausführen:
curl url1 & curl url2 & curl url3 & ...
Denken Sie daran, nach jeder Anforderung einen &
hinzuzufügen. Dies bedeutet, dass die Anforderung als asynchroner Auftrag ausgeführt werden sollte.
Ich weiß nicht, ob diese Frage noch relevant ist, aber jetzt gibt es eine solche Möglichkeit in Postman. Sie haben es vor einigen Monaten hinzugefügt.
Sie müssen lediglich eine einfache .js-Datei erstellen und diese über node.js ausführen. Es sieht aus wie das:
var path = require('path'),
async = require('async'), //https://www.npmjs.com/package/async
newman = require('newman'),
parametersForTestRun = {
collection: path.join(__dirname, 'postman_collection.json'), // your collection
environment: path.join(__dirname, 'postman_environment.json'), //your env
};
parallelCollectionRun = function(done) {
newman.run(parametersForTestRun, done);
};
// Runs the Postman sample collection thrice, in parallel.
async.parallel([
parallelCollectionRun,
parallelCollectionRun,
parallelCollectionRun
],
function(err, results) {
err && console.error(err);
results.forEach(function(result) {
var failures = result.run.failures;
console.info(failures.length ? JSON.stringify(failures.failures, null, 2) :
`${result.collection.name} ran successfully.`);
});
});
Dann führen Sie einfach diese .js-Datei aus ('node fileName.js' in cmd).
Weitere Details hier
Führen Sie alle Sammlungen in einem Ordner parallel aus:
'use strict';
global.Promise = require('bluebird');
const path = require('path');
const newman = Promise.promisifyAll(require('newman'));
const fs = Promise.promisifyAll(require('fs'));
const environment = 'postman_environment.json';
const FOLDER = path.join(__dirname, 'Collections_Folder');
let files = fs.readdirSync(FOLDER);
files = files.map(file=> path.join(FOLDER, file))
console.log(files);
Promise.map(files, file => {
return newman.runAsync({
collection: file, // your collection
environment: path.join(__dirname, environment), //your env
reporters: ['cli']
});
}, {
concurrency: 2
});
In der Sammlung des Postboten können Sie keine gleichzeitige asynchrone Anforderung stellen. Verwenden Sie daher jmeter.
sie können Apache JMeter verwenden. Sie können damit mehrere Threads und Synchronisationstimer hinzufügen
Wenn Sie nur GET-Anfragen durchführen und eine andere einfache Lösung in Ihrem Chrome-Browser benötigen, installieren Sie einfach die Erweiterung "Mehrere URLs öffnen":
https://chrome.google.com/webstore/detail/open-multiple-urls/oifijhaokejakekmnjmphonojcfkpbbh?hl=de
Ich habe gerade 1500 URLs auf einmal ausgeführt, habe Google ein bisschen verzögert, aber es funktioniert.
Öffnen Sie für eine einfachere GUI-Methode jede Anforderung, die Sie ausführen möchten, auf verschiedenen Registerkarten. Dann können Sie zu jedem Tab einen Klick ausführen.
Sie sind sich nicht sicher, ob die Benutzer nach einfachen Lösungen suchen, aber Sie können mehrere Instanzen des "Collection Runner" in Postman ausführen. Erstellen Sie einfach einen Runner mit einigen Anfragen und klicken Sie mehrmals auf die Schaltfläche "Ausführen", um mehrere Instanzen aufzurufen.