Контролери в JMeter: цикъл, прост, транзакция, модул, произволен
Какво представлява логическият контролер?
Логическите контролери ви позволяват да определите реда на обработка на заявката в нишка. Позволява ви да контролирате „кога“ да изпратите потребителска заявка до уеб сървър. Например, можете да използвате произволни контролери, за да изпращате произволно HTTP заявки до сървъра
Логическите контролери определят реда в който се изпълнява потребителска заявка.
Някои често използвани логически контролери са по-долу:
Контролер за запис
JMeter мога рекорд вашият Тестване стъпала; контролерът за запис е a контейнер за да съхраните тези стъпки на запис.
Прост контролер
Simple Controller е просто a контейнер за потребителска заявка.
Контролер на контура
Loop Controller кара потребителската заявка да се изпълнява определен брой пъти или бягай завинаги както е показано на фигурата:
Случаен контролер
Random Controller изпълнява всички потребителски заявки произволното ред във всеки период на цикъл.
Например, имате 3 потребителски заявки към уебсайт http://www.google.com в следния ред:
- HTTP заявка
- FTP заявка
- JDBC заявка
Тези 3 заявки трябва да се изпълняват 5 пъти. Общо 15 потребителски заявки ще бъдат изпратени до сървъра на Google от JMeter.
In следващ поръчка, заявките се изпращат последователно в следния ред:
HTTP заявка ->FTP заявка->JDBC заявка
за всеки цикъл.
In случаен поръчка, заявките се изпращат като на случаен принцип,
FTP заявка ->HTTP заявка->JDBC заявка
Or
JDBC заявка ->FTP заявка->HTTP заявка
За всеки цикъл.
Модулен контролер
Целта на Module Controller е да добави модулност към JMeter.
Общата идея е, че уеб приложенията се състоят от малки функционални единици (т.е. влизане, създаване на акаунт, излизане…). Тази функционалност може да се съхранява в Прост контролер като „модули“. Module Controller ще избере кой модул трябва да работи.
Помислете за следния сценарий –
Искате да симулирате:
- потребителите 50 излизане,
- потребителите 100 влизане в системата
- потребителите 30 Търсене www.google.com
Можете да използвате JMeter за създаване на 3 модула. Всеки модул симулира всяка потребителска дейност: влизане, излизане и търсене.
Контролерът на модула избира кой модул трябва да работи.
Други важни контролери
- Преплитай Контролер: вдига и прави един на потребителска заявка всеки примка на конеца.
- Runtime Контролер: контроли колко дълго децата му имат право да бягат.
Например, ако сте посочили Runtime Controller 10 секунди, JMeter ще изпълни теста ви за 10 секунди.
- Транзакция Контролер: измерва общо време взети до край тестово изпълнение
- Включва Контролер: е проектиран да използва външен тестов план. Този контролер ви позволява да използвате множество тестови планове в JMeter. Вижте подробности в JMeter Тестване на производителността.
Пример за контурен контролер
Този раздел ви показва инструкции стъпка по стъпка за добавяне Контролер на контура задайте текущия си план за тестване на ефективността.
Loop Controller кара семплерите да се изпълняват определен брой пъти, в допълнение към стойността на цикъла, която сте посочили за Thread Group. Например, ако вие
- Добавете една HTTP заявка към контролер на цикъл с брой цикли 50
- Конфигурирайте броя на цикъла на групата нишки на 2
- След това, JMeter ще изпрати общо 50 * 2 = 100 HTTP заявки.
Това е пътна карта от този пример:
Стъпка 1) Конфигуриране на група нишки
We повторна употреба Стъпка 1, 2 в урока JMeter Тестване на производителността.
-
Добавяне на група теми
Десен бутон на План за тестване и добавете нова група нишки: Добави-> Нишки (потребители) ->Група теми
Но в контролния панел на Thread Group въведете Thread Properties, както следва:
Ще направи един потребителска заявка към уеб сървъра google.com и я стартирайте 2 пъти.
-
Добави JMeter елементи
Добавяне на HTTP заявка по подразбиране към www.google.com.
-
Добавяне на Loop Controller
Щракнете с десния бутон Thread Group -> Logic Controller -> Loop Controller
Стъпка 2) Конфигуриране на Loop Controller
Добавете стойност 50 към полето Loop Count, както е показано на фигурата по-долу. Ще направи един потребителска заявка към уеб сървъра google.com пусни го 50 пъти, в допълнение към стойността на цикъла =2, която сте посочили за групата нишки по-горе. И така JMeter ще изпрати общо 2 * 50 = 100 HTTP заявки.
Щракнете с десния бутон върху Loop Controller, Add -> Sampler -> HTTP заявка
Стъпка 3) Добавяне на преглед на резултатите в таблица
Използваме повторно стъпка 2 в Часовник за да добавите Преглед на резултатите в таблица
Така че тестовият план е показан на фигурата по-долу
Стъпка 4) Изпълнете своя тест
Сега върнете Преглед на резултатите в таблица, щракнете върху бутона Старт в лентата с менюта (Ctrl+R), за да стартирате тест
Както е показано на фигурата по-долу, JMeter симулира една потребителска заявка, който се изпраща 100 пъти до уеб сървъра http://www.google.com/. Тестът се спира, след като потребителска заявка е изпратена 100 пъти.
Отстраняване на проблеми
- Ако се сблъскате с проблема, докато изпълнявате горния сценарий... направете следното
- Проверете дали се свързвате с интернет чрез прокси. Ако да, премахнете проксито.
- Отворете нов екземпляр на Jmeter
- Отворете ControllerTestPlan.jmx в Jmeter
- Кликнете върху Група нишки -> Преглед на резултата в таблица
- Стартирайте теста










.png)


.png)


