Я написал jmeter test для проверки работоспособности сайта.
Поэтому я хотел бы протестировать работу сайта, когда много пользователей, например, десять.
Я создал план тестирования JMeter с 10 одновременными пользователями. Для каждого запроса пользователя должны быть указаны уникальные заголовки:
<HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="headers" enabled="true">
<collectionProp name="HeaderManager.headers">
<elementProp name="" elementType="Header">
<stringProp name="Header.name">myHeader</stringProp>
<stringProp name="Header.value">60000${__counter(FALSE)}${__machineName}</stringProp>
</elementProp>
Этот план тестирования работает нормально, когда я запускаю его с помощью инструмента графического интерфейса JMeter - результат:
<httpSample t="14774" it="0" lt="14772" ts="1320656944945" s="true" lb="HTTP Request" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" de="UTF-8" by="15213" sc="1" ec="0" ng="5" na="5">
myHeader: 600001D000753
Подключение: keep-alive
Но я хочу встроить эти тесты на сервер hudson, поэтому он должен быть в состоянии работать с помощью Maven. И когда я запускаю его как 'mvn jmeter: jmeter' - встроенные функции (я использовал counter и machineName, также пытался использовать 'threadNum' с тем же результатом) не работают:
<httpSample t="23584" it="0" lt="23557" ts="1320656803378" s="true" lb="HTTP Request" rc="200" rm="OK" tn="Thread Group 1-2" dt="text" de="UTF-8" by="14816" sc="1" ec="0" ng="9" na="9">
myHeader: 60000 $ {_ counter (FALSE)} $ { _machineName}
Подключение: keep-alive
Почему это так и как я могу это исправить?
UPD
Я исправил это так:
Я поместил <CounterConfig guiclass="CounterConfigGui" testclass="CounterConfig" testname="myCounter" enabled="true">
<stringProp name="CounterConfig.start">1</stringProp>
<stringProp name="CounterConfig.end">100</stringProp>
<stringProp name="CounterConfig.incr">1</stringProp>
<stringProp name="CounterConfig.name">myCounter1</stringProp>
<stringProp name="CounterConfig.format"></stringProp>
<boolProp name="CounterConfig.per_user">false</boolProp>
</CounterConfig>
в план тестирования, а затем использовал ${myCounter1}
в конфигурации заголовков