Size: a a a

QA — Load & Performance

2020 November 28

VG

Viktor Ganeles in QA — Load & Performance
Max
Вопрос возник, хелп плиз )
а можно ли в ultimate thread group, сделать так, что бы каждый из добавленных Row выполнял только определённый запрос, то есть подвязать запрос к row ?
или так нельзя, и для такого сценария нужно создавать отдельные ultimate thread group и добавлять нужный запрос
Можно.
Понадобится завернуть ваш семплер в if-контроллер, который проверяет номер пользователя/итерации, что-то в этом роде.

Как разобраться:
В обычной тред-группе сделайте 2 threads и добавьте внутрь только debug sampler

Ну и смотрите, чем отличается их результаты.
источник

VG

Viktor Ganeles in QA — Load & Performance
Max
Вопрос возник, хелп плиз )
а можно ли в ultimate thread group, сделать так, что бы каждый из добавленных Row выполнял только определённый запрос, то есть подвязать запрос к row ?
или так нельзя, и для такого сценария нужно создавать отдельные ultimate thread group и добавлять нужный запрос
Но на самом деле вопрос - а зачем вам это надо?
Наверняка Можно достичь результатов более простым методом.
источник

VG

Viktor Ganeles in QA — Load & Performance
В корневом элементе «test plan» можно поставить галочку, что бы тред-группы запускались поочерёдно, может это вам подойдёт
источник

СФ

Степа Фомичев... in QA — Load & Performance
Так там хотелось товарищу чтобы к степу в тред группе были привязаны конкретные запросы)
источник

СФ

Степа Фомичев... in QA — Load & Performance
Не знаю зачем это нужно, но по моему это не то о чем ты написал
источник

VG

Viktor Ganeles in QA — Load & Performance
Степа Фомичев
Так там хотелось товарищу чтобы к степу в тред группе были привязаны конкретные запросы)
Почему, как раз то, что нужно получается.
Вот есть у нас 3 row, в каждом добавляется по 1 пол зователю.
С помощью if-контроллера мы выясняем, который пользователь теребит скрипт и выполняем соответствующие семплеры
источник

ВС

Вячеслав Смирнов... in QA — Load & Performance
Max
Вопрос возник, хелп плиз )
а можно ли в ultimate thread group, сделать так, что бы каждый из добавленных Row выполнял только определённый запрос, то есть подвязать запрос к row ?
или так нельзя, и для такого сценария нужно создавать отдельные ultimate thread group и добавлять нужный запрос
Пусть размер ступени 3 потока.
Если в csv файле сделать адреса с дублированием х3:

qa.load/1,post,param1,param2
qa.load/1,post,param1,param2
qa.load/1,post,param1,param2
qa.load/2,GET,,
qa.load/2,GET,,
qa.load/2,GET,,
qa.load/3,POST,param3,
qa.load/3,POST,param3,
qa.load/3,POST,param3,
...
А внутри катушки бесконечный while, то поток будет брать строку и отправлять по ней запросы, следующий будет брать следующую. А при новой ступени будет новый запрос.
источник

M

Max in QA — Load & Performance
Хочу зафиксировать текущий результат при нагрузке, что бы потом сравнивать его с новым полученным после каких-то правок.
Но каждый раз при запуске нагрузочного теста всегда разный результат, при чём разница довольно большая
Подскажите, у кого как, насколько велик разброс результатов при одном и том же нагрузочном тесте ?
источник

M

Maksimall89 in QA — Load & Performance
Max
Хочу зафиксировать текущий результат при нагрузке, что бы потом сравнивать его с новым полученным после каких-то правок.
Но каждый раз при запуске нагрузочного теста всегда разный результат, при чём разница довольно большая
Подскажите, у кого как, насколько велик разброс результатов при одном и том же нагрузочном тесте ?
Вообще хорошая практика не более 10%.
источник

A

Anna in QA — Load & Performance
Max
Хочу зафиксировать текущий результат при нагрузке, что бы потом сравнивать его с новым полученным после каких-то правок.
Но каждый раз при запуске нагрузочного теста всегда разный результат, при чём разница довольно большая
Подскажите, у кого как, насколько велик разброс результатов при одном и том же нагрузочном тесте ?
очень сильно может зависеть от стартовых данных - зафиксировали ли вы их?
источник

A

Anna in QA — Load & Performance
наполненность базы, индексы, партиционирование - все может влиять и не брезгует это делать
источник

M

Max in QA — Load & Performance
Anna
очень сильно может зависеть от стартовых данных - зафиксировали ли вы их?
если я верно понимаю, то стартовые данных всегда одинаковые, так как запускается один и тот же тест план

или под стартовыми данными имеется ввиду на сколько система нагружена перед запуском тест плана ?
источник

A

Anna in QA — Load & Performance
Max
если я верно понимаю, то стартовые данных всегда одинаковые, так как запускается один и тот же тест план

или под стартовыми данными имеется ввиду на сколько система нагружена перед запуском тест плана ?
я имею в виду состояние бд, к которой обращается тестируемое приложение
источник

A

Anna in QA — Load & Performance
если в ней данных прирастает с каждым днём, а вы катаете тесты, то закономерно может увеличиваться время отклика аппы из-за увеличения времени отработки запросов на базе (на растущих таблицах)
источник

A

Anna in QA — Load & Performance
если есть желание сравнивать 1-1, то надо неким образом разворачивать одинаковые стартовые условия. к примеру экспорт-импорт схемы для оракловой базы (но это натурально долго)
источник

СФ

Степа Фомичев... in QA — Load & Performance
Max
Хочу зафиксировать текущий результат при нагрузке, что бы потом сравнивать его с новым полученным после каких-то правок.
Но каждый раз при запуске нагрузочного теста всегда разный результат, при чём разница довольно большая
Подскажите, у кого как, насколько велик разброс результатов при одном и том же нагрузочном тесте ?
А какие метрики сравниваете и какая агрегация? 99 перцентиль, 95, average?
источник

M

Max in QA — Load & Performance
Степа Фомичев
А какие метрики сравниваете и какая агрегация? 99 перцентиль, 95, average?
Сравниваю Average, перцентили 90, 95, 99, кол-во отработанных samples
агрегация, это что ?)
источник

СФ

Степа Фомичев... in QA — Load & Performance
Ну average, perc95 и так далее это и есть типы агрегации)
источник

СФ

Степа Фомичев... in QA — Load & Performance
А насколько длинные тесты?
источник

M

Max in QA — Load & Performance
Степа Фомичев
Ну average, perc95 и так далее это и есть типы агрегации)
пока запускал только 2-3 минуты, вот подумываю что может это мало времени, в теории чем дольше будет работать тест, тем меньше должен быть между ними разброс ?
источник