t.me/atinfo_chat Telegram группа по автоматизации тестирования

Выбор инструмента для нагрузочного тестирования

rest
visual-studio
performance
api
load
tools
angularjs
Теги: #<Tag:0x00007fb307c3b358> #<Tag:0x00007fb307c3b1f0> #<Tag:0x00007fb307c3b088> #<Tag:0x00007fb307c3af48> #<Tag:0x00007fb307c3ae08> #<Tag:0x00007fb307c3acc8> #<Tag:0x00007fb307c3ab88>

(Lelik) #1

Добрый день.

Дано: веб-приложение. Из общих сведений - angular, rest-apis. Сейчас задача для девелоперов улучшить производительность приложения. Задача тестировщика - померять производительность до и после. В наличии есть VS 2019 Enterprise и собственно не проблема написать тесты, но вопрос вот в чем. Есть тест в котором загружается страничка, какие-то ресурсы, апишки тянут какие-то данные. Получаем отдельно время по каждой компоненте , суммируем и общее время реквеста\ремпонса. девелопер делает изменения, исчезают некоторые ресурсы, добавляются новые и тест становится не валидным и нам не с чем сравнивать, фактически.
Существует ли инструмент, который абстрагируется от отдельных компонент и считает время общее, не в даваясь в детали что там загружается в данным момент (секундомер не предлагать)


(Vladislav Abramov) #2

я недавно решил проблему поиска request id включением логов хром драйвера, так там этих логов реально хоть жопой жуй

попробуйте посмотреть, может вам будет их достаточно парсить
там получается очень большой джсон, со всеми статусами, запросами ответами, таймстампами и вот этим всем


(Vasiliy Rakshin) #3

Возможно, вам хватит инфы из window.performance.timing (из консоли браузера).
Ну или можно вебрайвером (после того как нужный элемент догрузился) вызывать js скрипт ‘return window.performance.timing’ и парсить ответ.
Ссылки по теме:
https://www.w3.org/TR/navigation-timing/


Как я делал: раз сто например открывал нужную страницу, дожидался загрузки нужных элементов (что говорило мне что работать с приложением теперь можно) записывал эти показатели, чтобы получить нормальное такое среднее значение (+ дополнительно выкидывал граничные значения). После оптимизации прогонял то же самое и сравнивал значения.

А так, конечно, лучше записать всё в JMeter, и там снимать все скорости ответов на запросы. Тоже тест прогонять в цикле в один поток, чтобы средняя была получше. После оптимизации конечно, придётся что-то добавить или убрать.


(Lelik) #4

Может есть библиотека (С# .net core), которая помогает доставать из browser network реквест\респонсы и время? Или есть готовый тестовый солушин, что бы не убивать на открытие открытого много времени.


(Valentin G ) #5

Возможно, тут будет полезная информация.