Size: a a a

QA — Load & Performance

2020 February 29

ΙΤ

Ιωάννης Τσεκούρι in QA — Load & Performance
Anna
ребят, расскажите плиз, какие метрики с тестового стенда снимаете. есть очевидное: сколько ест цпу, сколько ест памяти
какие еще?  и, если внезапные, то что это вам даёт?
источник

KY

Kirill Yurkov in QA — Load & Performance
Anna
ребят, расскажите плиз, какие метрики с тестового стенда снимаете. есть очевидное: сколько ест цпу, сколько ест памяти
какие еще?  и, если внезапные, то что это вам даёт?
зависит от того что на стенде, одними из важных считаю коннекты и очереди
источник

YR

Yevhenii Rozstalnoy in QA — Load & Performance
Kirill Yurkov
зависит от того что на стенде, одними из важных считаю коннекты и очереди
Имеете в виду  tcp коннекты? Если да то чем снимаете их и очереди?
источник

KY

Kirill Yurkov in QA — Load & Performance
Yevhenii Rozstalnoy
Имеете в виду  tcp коннекты? Если да то чем снимаете их и очереди?
я же говорю, зависит от системы - могут быть tcp, можно смотреть на коннекты iis, у нас довольно скудно по мониторингам - перфмон винды и заббикс
источник

YR

Yevhenii Rozstalnoy in QA — Load & Performance
в статьях много где упоминается что хорошим тоном является профайлинг нагружаемого сервера для мониторинга длительности выполнения отдельных методов и не только. подскажите плз какой профайлер выбрать для .Net приложения. ну и для чайников как в принципе им пользоваться?( его как то нужно связывать к примеру с Jmeter или это самостоятельная тулза которая мониторится параллельно с подачей нагрузки?
источник

V

Vladimir Pryadko in QA — Load & Performance
Для .Net-приложений есть JetBrains' dotTrace. Используется как отдельный инструмент во время подачи нагрузки.
источник

A

Anna in QA — Load & Performance
профайлинг на постоянной основе лучше не включать всё же, он аффектит
источник
2020 March 01

ВС

Вячеслав Смирнов in QA — Load & Performance
https://www.softwaretestinghelp.com/top-10-application-performance-monitoring-tools/amp/

Ещё есть системы класса APM, для них уже делают интеграцию с JMeter. Интеграция выглядит так:

JMeter через HTTP Header Manager передаёт с каждым запросом информацию о профиле нагрузки, имени теста, ...

А система APM, встроенная в нагружаемое приложение, читает этот заголовок, сохраняет его, и собирает статистику по производительности. Слышал про такое, варианты интеграции описаны в документации к конкретной системе.

В статье есть разные системы. Каждая из них поддерживает разные приложения, некоторые поддерживают и .NET тоже.

Они приложение замедлят. Потому APM подключать надо не на постоянной основе, а для выявления проблем.

Из успешного опыта профилирования .NET: пользовался dottrace от JetBrains, и профайлером, встроенным в Visual Studio (он более требовательный к ресурсам, но хороший). А ещё когда-то в SharpDevelop был профайлер.
источник

KY

Kirill Yurkov in QA — Load & Performance
чтобы проще было профилировать в visual studio - там можно подгружать два дампа, например состояние на момент длительной утечки и только начало работы приложения и посмотреть разницу.
источник

KY

Kirill Yurkov in QA — Load & Performance
Для профилирования .net в псевдо-интеграции, мы делали следующую штуку:
1. Добавляли в header метку запроса которая содержала время отправки
2. В самом приложении подключали модуль метрик, с интеграцией в прометеус - https://www.app-metrics.io
(как настроить частично тут можно глянуть - https://habr.com/ru/post/437286/)
3. Там логировали момент времени когда запрос пришел, когда прошел контрольные точки и когда был отдан ответ по нему
4. Эти метрики выводили таблицей по запросам и анализировали на каком этапе запрос задержался
Точно также думается мне можно логировать выделенную память до/после обработки запроса и пронаблюдать - кто сколько её потребовал на обработку
источник
2020 March 02

DS

Denis Suhin in QA — Load & Performance
Всем привет!
Возник такой вопрос по JMeter:
Хочу использовать User Defined Variables и JDBC Connection Configuration внутри If Controller'ов, но складывается ощущение, что все эти конфигурирующие элементы прямо сверху вниз выполняются, вне зависимости от If ветвления. Как-нибудь это можно обходить? :-)
Заранее спасибо
источник

SP

Sergey Petrov in QA — Load & Performance
Мб использовать вложенность?
Если иф не выполнится, то на вложенный уровень перехода не будет -- перейдёт к следующей команде уровня ифа
источник

DS

Denis Suhin in QA — Load & Performance
Sergey Petrov
Мб использовать вложенность?
Если иф не выполнится, то на вложенный уровень перехода не будет -- перейдёт к следующей команде уровня ифа
Сейчас и так все конфиги вложены в If :-/ по Debug Sampler'ам вижу, что сам If контроллер отрабатывает нормально, а вот по переменным вижу что все config'и сверху вниз как будто сработали :-/
источник

DS

Denis Suhin in QA — Load & Performance
И в консоли вижу
2020-03-02 09:34:54,215 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: mysql
, что значит что JDBC Connection Configuration пытается выполнится и во втором If
источник

KK

Konstantin Kalinin in QA — Load & Performance
А User Defined Variables разве не переопределяется?
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Denis Suhin
Сейчас и так все конфиги вложены в If :-/ по Debug Sampler'ам вижу, что сам If контроллер отрабатывает нормально, а вот по переменным вижу что все config'и сверху вниз как будто сработали :-/
Если нужно разделить dev и prod, то можно воспользоваться property-файлами, и убрать if controller вообще.

В файле dev.property задать переменные с параметрами подключения к тестовому стенду, в prod.property - другие

Просто назвать их одинаково. ConnectionString, Login, Password, ...

А в начале теста в корневом элементе указать, что значения свойств нужно получить:

${__P(name)}

В переменную name

https://jmeter.apache.org/usermanual/get-started.html#options


-q, --addprop <argument> additional JMeter property file(s)
источник

SP

Sergey Petrov in QA — Load & Performance
Denis Suhin
Сейчас и так все конфиги вложены в If :-/ по Debug Sampler'ам вижу, что сам If контроллер отрабатывает нормально, а вот по переменным вижу что все config'и сверху вниз как будто сработали :-/
Я такое решал через глобальную переменную и 2 строчки на груви.
Всё равно ж Вы указываете где-то в глобали свой стенд.
Переменная "адрес коннекта" = $jdbc
В груви-препроцессоре задаём значение в зависимости от значения переменной стенда.
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Да, или на Groovy сделать. Можно даже подключить библиотеку
http://owner.aeonbits.org/
источник

DS

Denis Suhin in QA — Load & Performance
Спасибо, @smirnovqa, @gaiver5 😊
источник

С

Станислав in QA — Load & Performance
Добрый день, подскажите что подразумевается под реакции пользовательского интерфейса?
источник