Как получить общий результат PASS / FAIL для группы потоков JMeter - PullRequest
0 голосов
/ 27 апреля 2018

Как получить общий результат PASS / FAIL для группы потоков JMeter без использования постпроцессора на каждом сэмплере?

Я пробовал использовать слушатель BeanShell, но он не работает в тех случаях, когда в контроллере транзакций есть несколько сэмплеров с включенным «Generate Parent Sample». В этом случае прослушиватель вызывается только один раз для контроллера транзакций, и я могу получить доступ только к результату последнего сэмплера внутри контроллера транзакций.

Edit:

Я хотел бы иметь возможность сохранить значение pass / fail как переменную Jmeter или свойство для группы потоков. Если один или несколько компонентов группы потоков завершатся с ошибкой или вернут ошибку, это будет общий сбой. Затем эта переменная будет использоваться для целей отчетности.

Мой текущий код слушателя бобовой оболочки:

SampleResult sr = ctx.getPreviousResult();

log.info(Boolean.toString(sr.isSuccessful()));

if (!sr.isSuccessful()){
    props.put("testPlanResult", "FAIL");

    testPlanResultComment = props.get("testPlanResultComment");

    if(testPlanResultComment == ""){
            testPlanResultComment = sr.getSampleLabel();
    }else {
            testPlanResultComment = testPlanResultComment + ", " + sr.getSampleLabel();
    }

    props.put("testPlanResultComment", testPlanResultComment);
    log.info(testPlanResultComment);
}

1 Ответ

0 голосов
/ 14 мая 2018

Если вы вызовете prev.getParent () , вы сможете получить отдельные подвыборки с помощью функции getSubResults () , что-то вроде:

prev.getParent().getSubResults().each {result ->
    log.info('Sampler: ' + result.getSampleLabel() + ' Elapsed time: ' + result.getTime() )
}
log.info('Total: ' + prev.getParent().getTime())

Демо-версия:

JMeter Transaction Controller Children Time Groovy

Дополнительная информация: Apache Groovy - почему и как вы должны его использовать

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