Оля · DevOps, #qa-antrakt
API теперь 5 минут, спасибо. А e2e идут 22 минуты, и пока они идут, разработчики уходят пить кофе и забывают про PR. Вчера Тимур смёржил, не дождавшись, и сломал оплату. Можно быстрее?
Савва · продакт, #qa-antrakt
Может, просто выкинуть половину тестов? Всё равно они почти всегда зелёные.
Вера Ланская · лид QA, #qa-antrakt
Выкидывать будем то, что ничего не ловит, а не то, что долго идёт. Сначала измерим, куда уходит время. Почти всегда оно уходит не туда, где его ищут.
Медленный набор это не неудобство, а дыра в процессе. Дейв Фарли в докладах о непрерывной поставке повторяет одно: ценность теста в обратной связи, а обратная связь, которая приходит через полчаса, уже не обратная связь. Человек переключился на другую задачу, и красный тест для него теперь чужая проблема. Сегодня научимся измерять набор, найдём дорогие фикстуры и разберём, как запускать на PR только то, что изменение задело.
Печь под каждую пиццу
В пиццерии жалуются, что заказ ждут сорок минут. Хозяин нанимает второго повара, потом третьего, а очередь не тает. Тогда он садится с секундомером и видит: пицца печётся четыре минуты, а печь перед каждой пиццей разогревают с нуля, пятнадцать минут. Повара тут ни при чём, и печь не медленная: её просто каждый раз выключают.
В наборе тестов роль печи играют фикстуры. Сам тест часто идёт за 50 миллисекунд, а перед ним полторы секунды создаётся пользователь через UI, логинится браузер и сбрасывается стенд. Пока не измеришь, кажется, что медленные сами тесты, и их хочется выкинуть.
урок из курса
Урок из курса «Автотестирование с нуля». Курс покупается один раз и остаётся навсегда: 500 ₽.
Оплата пока не подключена: премиум и курсы открываются промокодом.