[post] 우편 배달부 : 동시에 여러 요청을하는 방법

Postman Chrome 확장 프로그램 에서 데이터를 게시하고 싶습니다 .

다른 데이터로 10 건의 요청을하고 싶습니다. 동시에해야합니다.

우편 배달부에서 그렇게 할 수 있습니까?

그렇다면 누구에게 이것이 어떻게 달성 될 수 있는지 설명해 줄 수 있습니까?



답변

postman에는 동시 테스트를 실행하는 것과 같은 기능이 없다고 생각합니다.

내가 당신이라면 나는 그러한 시나리오에 정확하게 사용되는 Apache jMeter 를 고려할 것 입니다.

Postman과 관련하여 귀하의 요구를 충족시킬 수있는 유일한 방법은 Postman Runner입니다.
여기에 이미지 설명을 입력하십시오
세부 사항을 지정할 수 있습니다.

  • 반복 횟수
  • 다른 테스트 실행 등에 대한 데이터가 포함 된 CSV 파일 업로드

실행은 동시 적이 지 않고 연속적입니다.

희망이 도움이됩니다. 그러나 jMeter를 고려하십시오 (당신은 그것을 좋아할 것입니다).


답변

Postman은 그렇게하지 않지만 curlBash에서 여러 요청을 비동기 적으로 실행할 수 있습니다 .

curl url1 & curl url2 & curl url3 & ...

&각 요청 이후에 요청 을 추가 해야합니다. 즉, 요청이 비동기 작업으로 실행되어야합니다.

그러나 Postman은 요청에 대한 컬 스 니펫을 생성 할 수 있습니다. 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 파일 (cmd의 ‘node fileName.js’)을 실행하십시오.

자세한 내용은 여기


답변

사람들이 여전히 이것에 대한 간단한 해결책을 찾고 있는지 확실하지 않지만 Postman에서 “Collection Runner”의 여러 인스턴스를 실행할 수 있습니다. 요청이있는 러너를 만들고 “Run”버튼을 여러 번 클릭하면 여러 인스턴스가 나타납니다.


답변

폴더의 모든 콜렉션을 병렬로 실행하십시오.

'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=ko

방금 한 번에 1500 개의 URL을 실행했지만 Google에 약간의 지연이 있었지만 작동합니다.