JMeter — скрыть неудачные запросы при успешной повторной попытке

#jmeter #jmeter-5.0

#jметр #jmeter-5.0

Вопрос:

Я создаю логику повторных попыток с помощью цикла while. Это будет повторная попытка, если код ответа не равен 200. Время повторения — 3 раза, если после 3-х раз все еще сбой, сдавайтесь.

Однако даже запрос является успешным после повторной попытки. Неудачный запрос отображается в дереве результатов и сводном отчете.

Возможно ли не показывать неудачный запрос при успешном завершении после повторной попытки в отчете. Показывать запрос только после 3 повторных попыток, но все равно сбой.

Теперь ситуация

Запрос:

запрос (сбой) -> запрос (сбой) -> запрос (успех)

Дерево результатов:

запрос (сбой)

запрос (сбой)

запрос (успех)

Это изображение, которое я хочу.

Запрос:

запрос (сбой) -> запрос (сбой) -> запрос (успех)

Дерево результатов:

запрос (успех)

Запрос:

запрос (сбой) -> запрос (сбой) -> запрос (сбой)

Дерево результатов:

запрос (сбой)

Ответ №1:

  1. Поместите ваш запрос в контроллер цикла и укажите количество циклов как 3
  2. Добавьте постпроцессор JSR223 в качестве дочернего элемента вашего запроса и поместите следующий код в область «Сценарий»
     if (prev.getResponseCode() == '200') {
        ctx.setTestLogicalAction(ctx.TestLogicalAction.BREAK_CURRENT_LOOP)
    }
    else {
        if (vars.get('__jm__Loop Controller__idx') as int < 2) {
            prev.setIgnore()
        }
    }
     

    где:

Дополнительная информация об этих сокращениях API JMeter: 8 лучших классов Java JMeter, которые вы должны использовать с Groovy

Комментарии:

1. Это работа! Большое вам спасибо.