Jmeter извлекает определенную часть SamplerData из SampleResult

#java #jmeter

#java #jmeter

Вопрос:

Я пытаюсь извлечь определенную часть SamplerData из SampleResult .

Вот мой текущий результат:

 GET https://google.com/

GET data:
hello world

[no cookies]
  

То, что я хочу, находится именно hello world внутри GET data раздела.

У меня есть следующий код BackendListener:

 @Override
public void handleSampleResults(List<SampleResult> list, BackendListenerContext backendListenerContext) {
    StringBuilder stringBuilder = new StringBuilder();
    String fileName = "C:\projects\sampleResults.csv";
    try {
        list.forEach(sampleResult -> {
            stringBuilder.append(sampleResult.getSamplerData());
            stringBuilder.append("n");
        });
        BufferedWriter out = new BufferedWriter(
                new FileWriter(fileName));
        out.write(stringBuilder.toString());
        out.close();
    } catch (IOException e ){

    }
}
  

Ответ №1:

В частности, в вашем случае кажется, что вы пытаетесь извлечь данные тела из пробоотборника HTTP-запроса, самым простым решением было бы использовать функцию SampleResult.getQueryString()

ДЕМОНСТРАЦИЯ:

введите описание изображения здесь

Однако я не вижу необходимости в реализации вашего собственного внутреннего прослушивателя здесь, вы можете добиться того же намного быстрее и проще, используя гибкий плагин для записи файлов