Как сохранить результат теста как пройденный и не пройденный в jmeter в файле csv - PullRequest
2 голосов
/ 01 апреля 2020

Я новичок в jmeter, я создал несколько HTTP-запросов в одной группе потоков. Теперь я пытаюсь сохранить все HTTP-запросы, являющиеся HTTP-запросами с кодом ответа 200 , в файле csv как Передача TestCase и запрос http с кодом ответа , отличным от 200 , завершились неудачно. Поскольку я хочу выполнить каждый HTTP-запрос один за другим и сохранить результат в CSV-файле

, вот мой бобовый PostProcessor

import java .io. *; import org. apache .jmeter.services.FileServer;

            File f=new File("E:\\apache-jmeter-5.2.1\\apache-jmeter-5.2.1\\bin\\JmeterProResult\\testResult.csv");
            FileWriter fw=new FileWriter(f);
            BufferedWriter bw=new BufferedWriter(fw);
            var rc = prev.getResponseCode();
            if(rc.equals("200")){
             bw.write("test is passed");
            }
            else{
             bw.write("test is failed");
            }
            bw.close();
            fw.close();

, который генерирует выходные данные, поскольку показывает только один результат, но я выполняю два успешных http-запроса

enter image description here

здесь моя структура jmeter - я хочу выполнить каждый HTTP-запрос

enter image description here

здесь мой желаемый вывод должен выглядеть как

enter image description here

1 Ответ

0 голосов
/ 02 апреля 2020
  1. Ваш подход будет работать, только если у вас есть 1 виртуальный пользователь, любой параллелизм приведет к состоянию гонки , когда 2 потока будут записывать один и тот же файл, что приведет к одновременной модификации и приведет к данным loss
  2. Начиная с JMeter 3.1 рекомендуется использовать тестовые элементы JSR223 и Groovy language для сценариев, поэтому вам в любом случае придется пересмотреть свой подход "beanshell"

Поэтому я бы порекомендовал использовать плагин Flexible File Writer , который позволяет вам сохранять в файле различные детали запроса / ответа "безопасным" способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...