Как легко войти в IT: опыт инженера-тестировщика Валентина Агапитова
Каждый год 9-го сентября в России и других странах мира отмечается День тестировщика — неофициальный праздник IT-специалистов, которые проверяют работоспособность ПО — начиная от внутренних для компаний приложений и заканчивая веб-версиями ПО.
В условиях быстрого развития технологий и роста объема программного обеспечения, гарантировать высокое качество продуктов становится все сложнее. Поэтому все большее значение приобретает работа тестировщиков или QA-специалистов, которые занимаются проверкой и контролем качества работы ПО . Чтобы стать востребованным профессионалом необходимо развивать широкий спектр компетенций, включая как технические навыки, так и умение управлять процессами и командой.
Одним из таких экспертов является Валентин Агапитов. Он успешно внедрил новейшие инструменты тестирования, такие как CI/CD и скриншотное тестирование, а также применил современные подходы к управлению командой, что позволяет ему эффективно справляться с растущими требованиями к качеству и объему тестирования.
Проверка ПО может быть быстрой?
Эффективная оптимизация позволяет значительно повысить производительность команды даже в условиях ограниченных ресурсов. Для этого важно применять системный подход, который включает в себя автоматизацию рутинных задач, правильное распределение обязанностей и внедрение современных методологий тестирования.
Чтобы достичь максимальной эффективности в тестировании, Валентин Агапитов разработал инновационную стратегию, основанную на разделении тестов на два ключевых типа: быстрые (smoke-тесты) и тесты глубокой проверки (full regress-тесты).
Быстрые тесты сосредоточены на проверке основных функций системы и позволяют быстро выявить критические ошибки на ранних этапах разработки. Обычно такие тесты занимают не более получаса, что делает их идеальными для быстрого анализа изменений, внесенных разработчиками.
Тесты глубокой проверки, в свою очередь, проводятся на завершающих этапах разработки, непосредственно перед релизом. Они обеспечивают всестороннюю оценку функциональности и помогают удостовериться в том, что все компоненты работают корректно и взаимодействуют друг с другом. Особенно остро этот вопрос стоит в Agile разработке, где упущенная ошибка на ранних этапах приводит к критическим проблемам работы всего ПО в условиях сжатых сроков.
Чтобы поделиться своими опытом и знаниями об этом подходе, Валентин в качестве спикера участвовал в мастер-классе по теме «Построение и улучшение QA-процессов в Agile команде» в STRONG PEOPLE BUSINESS CLUB. Эксперт отметил, что стратегия разделения тестирования на два ключевых типа позволяет командам не только ускорять процесс разработки, но и повышать качество конечного продукта, что особенно важно в условиях жесткой конкуренции на рынке.
«Эти тесты особенно полезны в Agile-разработке, где каждый цикл может занимать всего одну-две недели. Быстрое получение обратной связи позволяет команде оперативно устранять проблемы и продолжать работу над проектом», — отмечает Валентин.
Благодаря такому подходу команда Валентина смогла сократить время на тестирование и увеличить скорость выпуска новых версий продукта.
Автоматизация — залог успеха?
Автоматизация тестирования — один из важнейших инструментов в арсенале QA-специалиста. С её помощью возможно во много раз ускорять реализацию проекта, при этом поддерживая на высоком уровне качество продукта и сохраняя ресурсы компании.
Валентин Агапитов одним из первых в своей команде внедрил автоматические тесты в процесс CI/CD (Continuous Integration/Continuous Delivery – Непрерывная интеграция\Непрерывное развертывание — прим. ред), что позволило не только сократить количество ручного труда, но и сохранить качество продукта. CI/CD — это набор методологий и инструментов, которые позволяют автоматизировать процессы интеграции и доставки программного обеспечения. В случае с тестированием, это означает, что тесты могут запускаться автоматически при каждом изменении кода, что ускоряет цикл разработки и снижает вероятность ошибок.
До внедрения автоматизации команда тестировщиков выполняла ручное тестирование, что занимало много времени и ограничивало количество проверок, которые можно было выполнить в день.
«С внедрением CI/CD количество прогонов тестов увеличилось с 1-2 до 20 в день. Это позволило не только быстрее находить и исправлять ошибки, но и освободило ресурсы для выполнения других задач», — делится эксперт.
Еще одной важной инновацией Валентина стало использование скриншотного тестирования, которое упростило проверку пользовательских интерфейсов (UI). Скриншотное тестирование позволяет делать снимки экрана и сравнивать их с эталонными изображениями, чтобы выявить изменения в расположении элементов, дизайне и других визуальных аспектах.
«Это особенно полезно для тестирования мобильных приложений, где важна точность отображения интерфейсов на разных устройствах и экранах. Чтобы убедиться в правильной работе ПО и выявить ошибки, нужно было проверить вручную каждый новый релиз на всех устройствах, что значительно замедляло процесс тестирования. Теперь же удается находить даже те проблемы, которые мог пропустить человек», — поясняет Валентин Агапитов.
Этот метод помог команде Валентина сократить время на проверку UI и адаптировать тесты для различных платформ, что значительно повысило общее качество продукта.
За нестандартный подход к тестированию Валентину Агапитову присвоили награду «ИТ Лидер» на международном конкурсе Business Leaders of Central Asia, призванном отметить достижения представителей бизнес-сообщества, создателей технологичных и инновационных бизнесов.
Секреты управления командой в IT
Одним из важных аспектов работы специалиста по обеспечению качества является умение управлять командой и организовывать работу таким образом, чтобы справляться с возрастающим объемом задач без увеличения штата.
Когда команда разработчиков выросла в два раза, Валентин сумел оптимизировать работу команды тестировщиков, сохранив их количество неизменным. Эксперт внедрил систему распределения задач, которая помогла равномерно распределять нагрузку между специалистами.
«Чтобы повысить работоспособность команды, мы оптимизировали проверку ПО — некоторые этапы проверки стали проводить раньше, а некоторые проверки стали делать сами разработчики, а не тестировщики качества ПО. Для всей команды мы ввели чек-листы и оптимизировали документацию, благодаря которым каждый сотрудник отвечал за качество продукта. Это позволило избежать перегрузок и одновременно поддерживать высокую продуктивность», — отмечает эксперт.
Этот подход позволил команде тестировщиков справляться с новым объемом работы и сохранять высокое качество продукта.
Кроме того, Валентин стал использовать в работе фреймворк Playwright, который позволяет одновременно запускать до тридцати тестов вместо четырех. Это значительное улучшение производительности позволило команде быстрее выполнять тесты и оперативнее находить ошибки, что стало важным фактором в условиях быстрого роста и увеличения объема работы.
«Инструменты автоматизации, такие как Playwright, дают специалистам по качеству возможность более эффективно использовать свои ресурсы и масштабировать процессы тестирования», — делится Валентин.
Благодаря этим подходам, которые требуют и технических навыков, и аналитических способностей, и даже лидерских качеств Валентину удалось найти точки для оптимизации процессов и внедрить инновации.
Важно помнить, считает эксперт, что развитие в IT не ограничивается только техническими аспектами — это постоянный процесс обучения, саморазвития и взаимодействия с коллегами. Те, кто готов принимать вызовы и использовать новые возможности, смогут не только преуспеть, но и оставить свой след в развитии отрасли.