Процесор в JMeter: Препроцесор и постпроцесор
Използва се процесор за модифициране на семплерите в техния обхват.
Има 2 вида процесори:
- Предварителен процесор
- Постпроцесор
Предварителен процесор
Препроцесорът изпълнява някакво действие преди правейки заявка за вземане на проби.
Помислете за прост пример: да кажем, че сте искали JMeter за „паяк“ през тествания уебсайт, синтактична връзка (проверете всички връзки на страницата) и връщане HTML. Бихте добавили някакво действие като „аналогичен анализатор на HTML връзки“ към вашия контролер, преди да създадете HTTP заявка.
Постпроцесор
Постпроцесорът изпълнява някакво действие, след като направи заявка за семплер.
Помислете за прост пример: JMeter изпраща HTTP заявка до тествания уеб сървър (и др www.google.com) и получете отговора. Вие искате JMeter за спиране на теста, ако отговорът на сървъра е грешка. Можете да използвате постпроцесора, за да изпълните горната задача, както следва:
Пример за пост процесор
Този урок ще ви покаже инструкции стъпка по стъпка как да използвате постпроцесор в JMeter. Нека започнем с простия тестов скрипт.
- JMeter изпраща HTTP заявка към тествания уеб сървър www.google.com.
- JMeter получава отговор от сървъра на Google.
- Ако отговорът на сървъра е грешка, JMeter ще Спри се Тестът.
- Ако отговорът на сървъра OK (няма грешка), JMeter ще продължи Тестът.
Тук е пътна карта от този пример:
Предварително условие:
We повторна употреба Стъпка 1 и Стъпка 2 в статията JMeter Тестване на производителността.
Стъпка 1) Добавяне на група нишки
Десен бутон на План за тестване и добавете нова група нишки: Добави -> Нишки (потребители) -> Група теми
Но в контролния панел на Thread Group въведете Thread Properties, както следва:
Тази настройка позволява JMeter създаване на 10 потребителска заявка към http://www.google.com 10 пъти.
Стъпка 2) Добавете JMeter елементи
- Добавяне на HTTP заявка по подразбиране
- Добавете HTTP заявка
Все още правим JMeter изпрати заявка http://www.google.com към сървъра на Google.
Стъпка 3) Добавяне на постпроцесорен елемент
Кликнете с десния бутон Група теми -> Добави -> Пост процесор -> Манипулатор на действие за състояние на резултат
Манипулатор на действие за състояние на резултат позволява на потребителя да спре нишката или целия тест, ако потребителската заявка е неуспешна.
В панела за манипулатори на действие за състояние на резултат изберете Спрете теста сега. Този избор ще спре теста, ако JMeter получите грешката от отговора на сървъра.
Стъпка 4) Конфигурирайте HTTP заявката
Отворете панела за HTTP заявки. Въведете "abc" към полето Път.
Когато влезете "abc" към пътя, JMeter ще създаде URL заявка към сървъра на Google: http://www.google.com/abc. Този URL адрес не съществува на сървъра на Google. Така е погрешно URL заявка, така че сървърът на Google да върне грешка.
Стъпка 5) Добавяне на дърво за преглед на резултатите
Кликнете с десния бутон Група теми -> Добави -> слушател -> Преглед на дървото на резултатите
Стъпка 6) Изпълнете тест
Изберете View Result Tree, натиснете бутона Run в лентата с менюта. Ще видите грешка отговор от сървъра на Google и тестът ще спре без завършване на 100 теми.
Сега се върнете към стъпка 4, отворете прозореца HTTP заявка, въведете „календар” към прозореца. Това прави JMeter създаване на URL заявка https://calendar.google.com/calendar/u/0/r към сървъра на Google. Това е коригира URL заявка, така че сървърът на Google да върне OK (няма грешка).
Изберете View Result Tree, натиснете бутона Run в лентата с менюта. Ще видите OK отговор от сървъра на Google и тестът ще продължи, докато завършат всички 100 нишки.
Отстраняване на проблеми
Ако се сблъскате с проблема, докато изпълнявате горния сценарий... направете следното:
- Проверете дали се свързвате с интернет чрез прокси. Ако да, премахнете проксито.
- Отворете нов екземпляр на Jmeter
- Отворете ProcessorTestPlan.jmx в Jmeter
- Double-щракнете върху Thread Group -> View Results Tree
- Стартирайте теста