diff --git a/case-study.md b/case-study.md new file mode 100644 index 0000000..20032fe --- /dev/null +++ b/case-study.md @@ -0,0 +1,26 @@ +# Задание №7 + +## Case-study оптимизации + +### Шаг 1 +- для проведения оптимизации взял самый старый проект +- поставил rubocop-rspec и отрефакторил тесты +- особого ускорения это не принесло, но с тестами стало намного приятнее работать + +### Шаг 2 +- решил поработать с DatabaseCleaner +- полностью отказаться от него получилось +- изменение логики без записи в базу дало прирост почти в 2 раза + +### Шаг 3 +- let_it_be, before_all и parallel_tests дал самый большой прирост в скорости - примерно в 3 раза + +### Результаты +- узнал про профилирование rspec +- значительно сократил время прогона тестов +- познакомился с parallel_tests и guard + +### Вывод +- можно было сильнее углубиться в проблему, подключить FactoryDoctor и т.д. но к сожалению сейчас нет на это времени +- суммарно получилось выиграть в скорости с ~6 минут до 1.5 - считаю это отличным результатом за такое небольшое время +- на данный момент считаю, что необходимо сделать защиту от регрессии производительности \ No newline at end of file