Size: a a a

Saint P Ruby Community

2021 May 27

IN

Ilya Nikolaevich in Saint P Ruby Community
no tests — no performance issues
источник

VA

Vsevolod Avramov in Saint P Ruby Community
Ну например, если почти всегда создаётся какой-то стандартный инстанс модели, то можно его смело засовывать в any_fixture.
источник

w

wi11son in Saint P Ruby Community
как вам еще такая мысль — долгий тест не из-за сетапа, а потому что этот экшн или сервис сам по себе долгий. Долгий спек показывает, где лечить код. Вылечил код - спека сама по себе ускорилась
источник

TL

Tab Loid in Saint P Ruby Community
Вряд ли будет большой профит, система большая, ускорить сразу все не выйдет, а если ускорить только узкое место, то на test suite это не сильно повлияет, так как вряд ли мы по этому узкому месту часто проходим
источник

w

wi11son in Saint P Ruby Community
если только это узкое место не вызывается миллионы раз
источник

TL

Tab Loid in Saint P Ruby Community
AnyFixture еще не приходилось применять. Не поделитесь информацией как и когда вы понимаете что нужно перевести часть сетапа в фикстуры?
источник

TL

Tab Loid in Saint P Ruby Community
Похоже что это больше вопрос ревью и общих практик при написании тестов, а не вопрос оптимизации уже написанных тестов
источник

АД

Антон Дьячук... in Saint P Ruby Community
а нужен ли юзер(подчеркнуть свое)?
может он нужен там где операции с юзером происходят
в остальных случаях замокать его?
источник

АД

Антон Дьячук... in Saint P Ruby Community
на практике тормозит интеграшка, чаще всего перегружен js
и тормозят спеки где создается все окружение включая некоторые окресные галактики, когда тестируется калькулятор
источник

АД

Антон Дьячук... in Saint P Ruby Community
тестироание мутаций ногда повзоляет правкой мутаций просто удалять ненужные тесты(unit)
источник

TL

Tab Loid in Saint P Ruby Community
Вы применяете мутационное тестирование на практике?
источник

АД

Антон Дьячук... in Saint P Ruby Community
да
источник

TL

Tab Loid in Saint P Ruby Community
А как это происходит у вас, гоняете мутации в рамках основного набора тестов или используете точечно?
источник

АД

Антон Дьячук... in Saint P Ruby Community
точечно
источник

АД

Антон Дьячук... in Saint P Ruby Community
на те классы которые трогал
источник

АД

Антон Дьячук... in Saint P Ruby Community
только на юниты
источник

АД

Антон Дьячук... in Saint P Ruby Community
а когда есть ремя на те классы тексты на которые тяжеловаты или кажется избыточны
источник

VD

Vla Dem in Saint P Ruby Community
Попробуй начать с Tag Prof и/или сэмплирования.

В первом случае выбираешь "группу" самых медленных (таким образом сужаешь область для дальнейших оптимизаций)  (https://test-prof.evilmartians.io/#/ru/profilers/tag_prof).

Во втором, при сэмплировании, сделай несколько прогонов разных профайлеров (скорее всего Factory Prof) на разных небольших сэмплах (https://test-prof.evilmartians.io/#/ru/recipes/tests_sampling).

Скорее всего, самые проблемные места всплывут уже в них.
источник

VD

Vla Dem in Saint P Ruby Community
В первую очередь из-за пандемии; с оффлайном сейчас непросто (вон, бумажки какие-то надо получать). Но тут есть и положительный момент: большинство докладчиков уже вернулись в Россию, а значит шансы на курс осенью я бы оценивал достаточно высоко.
источник

NB

Nikita Batrak in Saint P Ruby Community
программа по сравнению с 2019 годом изменилась?
источник