Quero postar dados da extensão Postman Google Chrome.
Quero fazer 10 solicitações com dados diferentes e deve ser ao mesmo tempo.
É possível fazer isso no Postman?
Se sim, alguém pode me explicar como isso pode ser alcançado?
Quero postar dados da extensão Postman Google Chrome.
Quero fazer 10 solicitações com dados diferentes e deve ser ao mesmo tempo.
É possível fazer isso no Postman?
Se sim, alguém pode me explicar como isso pode ser alcançado?
Respostas:
Eu acho que não existe esse recurso no carteiro para executar testes simultâneos.
Se eu fosse você, consideraria o Apache jMeter, que é usado exatamente para esses cenários.
Em relação ao Postman, a única coisa que poderia atender mais ou menos às suas necessidades é - Postman Runner. Lá você pode especificar os detalhes:
As execuções não serão simultâneas, apenas consecutivas.
Espero que ajude. Mas considere o jMeter (você vai adorar).
O Postman não faz isso, mas você pode executar várias curl
solicitações de forma assíncrona no Bash:
curl url1 & curl url2 & curl url3 & ...
Lembre-se de adicionar um &
após cada solicitação, o que significa que a solicitação deve ser executada como um trabalho assíncrono.
O Postman, no entanto, pode gerar um snippet de curl para sua solicitação: https://learning.getpostman.com/docs/postman/sending_api_requests/generate_code_snippets/
Não sei se essa pergunta ainda é relevante, mas existe essa possibilidade no Postman agora. Eles o adicionaram alguns meses atrás.
Tudo o que você precisa é criar um arquivo .js simples e executá-lo via node.js. Se parece com isso:
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.`);
});
});
Em seguida, basta executar este arquivo .js ('node fileName.js' no cmd).
Mais detalhes aqui
Não tenho certeza se as pessoas ainda estão procurando soluções simples para isso, mas você pode executar várias instâncias do "Collection Runner" no Postman. Basta criar um corredor com algumas solicitações e clicar no botão "Executar" várias vezes para abrir várias instâncias.
Execute toda a coleção em uma pasta em paralelo:
'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
});
No runner de coleção do carteiro, você não pode fazer solicitações assíncronas simultâneas; portanto, use o Apache JMeter . Permite adicionar vários threads e adicionar temporizador de sincronização a ele
Se você estiver fazendo apenas solicitações GET e precisar de outra solução simples no navegador Chrome, basta instalar a extensão "Abrir vários URLs":
https://chrome.google.com/webstore/detail/open-multiple-urls/oifijhaokejakekmnjmphonojcfkpbbh?hl=en
Acabei de executar 1500 URLs de uma só vez, fiquei um pouco atrasado no Google, mas funciona.
Para uma abordagem GUI mais simples, abra todas as solicitações que você deseja executar em diferentes guias. Depois, você pode acessar cada guia e clicar em Executar.