Я хочу , щоб дані POST від Листоноша розширення Google Chrome.
Я хочу зробити 10 запитів з різними даними, і це повинно бути одночасно.
Чи можливо це зробити у Поштальона?
Якщо так, чи може хтось пояснити мені, як цього можна досягти?
Я хочу , щоб дані POST від Листоноша розширення 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/
Я не знаю, чи все-таки це питання актуальне, але така можливість є і у Postman. Вони додали його кілька місяців тому.
Все, що вам потрібно, це створити простий .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 файл ('node fileName.js' в cmd).
Детальніше тут
Не впевнений, чи люди все ще шукають простих рішень для цього, але ви в змозі запустити кілька примірників "Збірника бігуна" у "Поштальона". Просто створіть бігун з деякими запитами та натисніть кнопку "Виконати" кілька разів, щоб відкрити кілька примірників.
Запустіть всю колекцію в папку паралельно:
'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
});
У колекціонері листоноші не можна одночасно робити асинхронні запити, тому замість цього використовуйте Apache JMeter . Це дозволяє додавати кілька потоків і додавати до нього таймер синхронізації
Якщо ви робите лише запити GET і вам потрібно інше просте рішення з вашого браузера Chrome, просто встановіть розширення "Відкрити кілька URL-адрес":
https://chrome.google.com/webstore/detail/open-multiple-urls/oifijhaokejakekmnjmphonojcfkpbbh?hl=uk
Я щойно запустив 1500 URL-адрес відразу, трохи відставав у Google, але це працює.
Для більш простого підходу GUI відкрийте кожен запит, який потрібно запустити на різних вкладках. Потім ви можете перейти до кожної вкладки, натиснувши прогон.