Я хочу отправить данные из расширения Почтальон Google Chrome.
Я хочу сделать 10 запросов с разными данными, и это должно быть одновременно.
Можно ли сделать такое в Почтальоне?
Если да, может кто-нибудь объяснить мне, как этого можно достичь?
Я хочу отправить данные из расширения Почтальон Google Chrome.
Я хочу сделать 10 запросов с разными данными, и это должно быть одновременно.
Можно ли сделать такое в Почтальоне?
Если да, может кто-нибудь объяснить мне, как этого можно достичь?
Ответы:
Я думаю, что в почтальоне нет такой функции, чтобы запускать параллельные тесты.
На вашем месте я бы рассмотрел Apache jMeter, который используется именно для таких сценариев.
Что касается Почтальона, единственное, что может более или менее удовлетворить ваши потребности - это Почтальон Бегун. Там вы можете указать детали:
Пробеги не будут параллельными, только последовательными.
Надеюсь, это поможет. Но подумайте о jMeter (вам это понравится).
Почтальон не делает этого, но вы можете выполнять несколько curl
запросов асинхронно в Bash:
curl url1 & curl url2 & curl url3 & ...
Не забудьте добавлять &
после каждого запроса, что означает, что запрос должен выполняться как асинхронное задание.
Однако почтальон может сгенерировать фрагмент скручивания для вашего запроса: https://learning.getpostman.com/docs/postman/sending_api_requests/generate_code_snippets/
Не знаю, актуален ли этот вопрос, но сейчас у Почтальона есть такая возможность. Они добавили это несколько месяцев назад.
Все, что вам нужно, это создать простой файл .js и запустить его через node.js. Это выглядит так:
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.`);
});
});
Затем просто запустите этот файл .js («имя-файла-узла.js» в cmd).
Подробнее здесь
В модуле сбора почтальонов нельзя одновременно выполнять асинхронные запросы, поэтому вместо этого используйте Apache JMeter . Позволяет добавить несколько потоков и добавить к нему таймер синхронизации.
Не уверен, что люди все еще ищут простые решения для этого, но вы можете запустить несколько экземпляров «Runner Collection» в Почтальоне. Просто создайте бегуна с некоторыми запросами и нажмите кнопку «Выполнить» несколько раз, чтобы вызвать несколько экземпляров.
Запустите всю коллекцию в папке параллельно:
'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
});
Если вы выполняете только запросы GET и вам нужно другое простое решение из браузера Chrome, просто установите расширение «Открыть несколько URL-адресов»:
https://chrome.google.com/webstore/detail/open-multiple-urls/oifijhaokejakekmnjmphonojcfkpbbh?hl=en
Я только что запустил 1500 URL одновременно, немного запаздывал Google, но это работает.
Для более простого подхода с графическим интерфейсом откройте каждый запрос, который вы хотите выполнить, на разных вкладках. Затем вы можете перейти к каждой вкладке одним щелчком мыши.