Я поместил много РАЗНЫХ времен обдумывания (пауз) в тесте JMeter. Таким образом, я пытаюсь смоделировать реальное время размышлений пользователя, потому что в разных местах пользователю потребуется разное время, чтобы подумать / подождать. Иногда ему нужно 5 секунд, чтобы понять свое следующее действие, а иногда - 15 секунд. Поскольку мне удается проверить, что контроллеры тестовых действий - единственный способ сделать это. НО, моя проблема в том, что пока я создаю / ремонтирую тест, я не хочу ждать всех этих пауз, когда я запускаю тест, просто чтобы проверить, проходит ли мое изменение. Мне нужен способ легко отключить все контроллеры Test Action во время создания теста, а затем, когда я хочу запустить настоящий тест с кучей одновременных потоков, просто чтобы легко включить все паузы.

2
lijep dam 5 Сен 2016 в 20:25

4 ответа

Лучший ответ

Я использовал Test Actions, потому что не понимал, как работают таймеры. Я думал, что они всегда применяются ко всем семплерам (что не так). Я легко могу выполнить то, что хочу, с постоянным таймером. Так что использование тестовых действий не было обязательным. Я просто добавлю постоянный таймер к конкретному сэмплеру, и он будет применяться только к этому сэмплеру. Извините, если я запутался в том, как задал вопрос :(

1
lijep dam 13 Сен 2016 в 11:16

Сначала вы изменяете свое тестовое действие следующим образом:

  • Установить режим сна на 0
  • Добавьте в качестве дочернего элемента к каждому таймер с желаемой паузой

Затем в графическом интерфейсе есть меню под названием Start no pause, которое находится здесь именно для этой необходимости:

Также с версии 3.0 существует «Режим проверки», к которому вы можете получить доступ, щелкнув правой кнопкой мыши группу потоков и выбрав «Проверить».

3
UBIK LOAD PACK 6 Сен 2016 в 12:09

Я считаю, что самый простой способ сделать это - запустить тест с помощью инструмента Taurus. Он имеет возможность включать / отключать элементы тестирования на основе их имен, чтобы вы могли включать и выключать сэмплеры тестовых действий.

Дополнительные сведения см. В главе «Модификации существующих сценариев».

Пример конфигурации Taurus YAML для отключения семплеров Test Action. Сохраните его, например, test.yml в той же папке, где находится ваш скрипт .jmx.

---
scenarios:
  modification_example:
    script: test.jmx   # Name of your original JMeter test script
    modifications:
        disable:       # Names of the tree elements to disable
        - Test Action
execution:
- scenario: modification_example

Запуск команды bzt test.yml -gui откроет графический интерфейс JMeter с внесенными изменениями.

Информация о Тельце начального уровня: Первые шаги с помощью Тельца


Не тратьте время на попытки «запускать без пауз» и «проверить», этот парень, похоже, не знает, как работает JMeter.


Хорошо, вот решение только для JMeter через Beanshell Sampler

import org.apache.jmeter.gui.GuiPackage;
import org.apache.jmeter.gui.tree.JMeterTreeNode;
import org.apache.jmeter.sampler.TestAction;              

 GuiPackage guiInstance = GuiPackage.getInstance();
 guiInstance.getTreeModel().getTestPlan();
 List testactionlist = guiInstance.getTreeModel().getNodesOfType(TestAction.class);
 for (Object testAction : testactionlist) {
     JMeterTreeNode testActionSampler = (JMeterTreeNode) testAction;
     testActionSampler.setEnabled(false);
 }
0
Dmitri T 7 Сен 2016 в 07:15

Если вы откроете тест в любом текстовом редакторе, вы увидите все действия теста, например вы можете легко найти и заменить все "testname =" Test Action " enabled =" true "" на enabled = "false"

-2
Murali K 6 Сен 2016 в 07:19