вторник, 5 октября 2010 г.

Listeners

1. Sample Result Save Configuration - приемник может быть сконфигурирован для сохранения различных пунктов в результирующий лог файл, посредством конфигурационного всплывающегося окна. Опции по умолчанию определены как описано в Listener Default Configuration. Пункты с (CSV) влияют только на CSV формат; пункты с (XML) влияют только на XML формат. CSV формат не может использоваться для сохранения пунктов, которые включают разделители.
2. Graph Full Results - что-то не работает.
3. Graph Results - формирует простые графики на которых изображены времена замеров (семплов). Черный - текущий семпл; синий - текущее среднее всех семплов; красный - текущее стандартное отклонение; зеленый - текущая интенсивность потока.
4. Spline Visualizer - представляет график времени прохождения по всем семплам, начиная с начала до конца, не взирая на то как много семплов было взято. Сплайновая кривая имеет 10 точек, каждая точка представляет 10% от всех семплов, и сойденены точки неприрывной кривой, используя сплайн логику.
5. Assertion Results - показывает лейблы (имена) всех прошедших семплов. Так же сообщает о неудачных высказываниях (assertions) содержащихся в тест плане.

Assertions

1. Response Assertion - позволяет добавить шаблон строки для сравнения с различными полями ответа от сервера. Шаблон может: совпадать или содержаться (Perl5-регулярные выражения), быть эквивалентным или подстрокой (простой текст с учетом регистра).
2. Duration Assertion - если ответ от сервера занял больше данного времени в миллисекундах, то он помечает его как неудачный.
3. Size Assertion - проверяет, что ответ от сервера имеет правильный размер.
4. XML Assertion - проверяет, что данные ответа от сервера составлены из корректного XML документа. Не проверяет на достоверность документы основанные на DTD или schema или какой-либо другом добавочном контроле данных TBD.
5. BeanShell Assertion - позволяет пользователю выполнять проверку используя BeanShell скрипт.

пятница, 10 сентября 2010 г.

Trouble shooting

Бывает так, что JMeter работает некорректно и странно, при прогоне теста, а именно количество активных юзеров начинает уменьшаться хотя этого происходить не должно. Тогда необходимо посмотреть на системное окошко, которое открывается при запуске jmeterа. Если в нем написано java.lang.OutOfMemoryError: GC overhead limit exceeded, тогда необходимо поменять один параметр в файле jmeter.bat в папке /bin. Откройте его и найдите параметр set HEAP и увеличьте максимально возможное значение этого параметра, например set HEAP=-Xms512m -Xmx1512m.

Logic Controllers

Мой перевод с английского ниже. Все замечания по поводу неправильности перевода приветствуются! Переводил пару лет назад.

1. Simple Controller - используется для группирования и установления порядка выполнения для Samplers и других Logic Controllers.
2. Loop Controller - выполнит все, что находится у него как child Count Loop раз.
3. Once Only Controller - исполняет свое содержимое только один раз и пропускает выполнение содержимого при последующих итерациях. Пример: Loop Controller настроен на пятикратное выполнение и содержит Once Only Controller, содержимое Once Only Controller выполнится только один раз.
4. Interleave Controller - если внутри него находятся Generative или Logic Controllers, то выполняется один из них по порядку для каждой итерации.
5. Random Controller - похож на Interleave Controller, только на каждой итерации выполняемая часть берется не по порядку, а в случайной последовательности.
6. Random Order Controller - больше похож на Simple Controller, выполняются все его "дети", только выполнение происходит в произвольном порядке.
7. Throughput Controller - регулирует как часто заданный блок будет выполняться. Может работать в режиме percent execution и в режиме total executions. При percent execution программа вычисляет процент от всех проведенных итераций и определяет выполнять или нет этот блок в следующий раз. При total executions выполнение блока прекращается после достижения количества разрешенных раз.

8. Runtime Controller - определяет как долго его "детям" позволено играть :).

Thread Group

В JMeter исполняется то, что находится внутри Thread Group. В Test Plan может быть несколько Thread Group. И все они будут выполняться независимо и одновременно.
Рассмотрим какие параметры имеет Thread Group.



Некоторые из них очевидные, а некоторые не очень :).

понедельник, 2 августа 2010 г.

Задержки между шагами (delays between steps)

Порой необходимо сктриптом эмулировать реальное поведение пользователя (или хотя бы приближенное к реальному). Для этого необходимо расставлять задержки (delay) в jmeter скрипте между логическими шагами. Я использую для этого Test Action (Add >> Sampler >> Test Action). Он очень удобен с той точки зрения, что в него величину паузы можно передавать в виде параметра, а уж этот значение этого параметра можно брать либо из файлика, либо генерировать, кому как удобно.

вторник, 1 июня 2010 г.

Важнейшее преимущество способа записи скрипта "BadBoy" над "Прокси-сервер" способом

Самое главное преимущество "BadBoy" способа - это возможность записи скрипта для https приложений. При помощи прокси-сервера запись запросов с секретным протоколом невозможна. На то и эта защита, что бы никакой посредник между клиентом и сервером не мог вклиниться. Зато "BadBoy" сам и есть клиент и он записывает все запросы и http и https.