Можно ли стать автоматизатором без опыта ручного тестирования?
Можно, если у вас есть опыт в программировании. В каких-то компаниях это действительно так и работает. Ручные тестировщики пишут тест-кейсы (шаги + ожидаемый результат), автоматизатор их берет и переносит в код. В принципе, такой подход вполне валиден и работает, но я вижу в нем некоторые недостатки.
Во-первых, когда сам пишешь автотесты на функционал, который хорошо знаешь, ты можешь по ходу добавлять какие-то проверки, которые мог пропустить во время написания тест-кейсов. Плюс знаешь другие автотесты, которые можно дополнить. Соответственно, тебе легче поддерживать актуальность автотестов.
Во-вторых, автоматизация тестирования - это интересно и полезно. Ты начинаешь изучать код, расширяешь свои знания о продукте, понимаешь, как всё работает изнутри. Это полезно и для ручного тестирования в том числе. Начинаешь чуть лучше понимать разработчиков.
Можно ли писать автотесты автоматически? Не хочется учиться программированию.
Попробовать можно. Мы пробовали. Для таких дел существуют рекордеры. Но те тесты, которые ими создаются - это монструозные и неподдерживаемые куски кода.
Возможно, это будет работать, если, допустим, в приложении есть какая-то кнопка, которая никогда не будет меняться. Не изменится ни путь до нее, ни ее функциональность и положение. Тогда код этого теста никогда не нужно будет менять, и пусть этот тест будет жить. Но увы, на практике так не работает. Тесты должны быть легко поддерживаемыми, понятными, читаемыми. Рекордером такого не добьешься.
Можно использовать рекордеры в каких-нибудь сложных местах приложения, чтобы посмотреть, как можно повзаимодействовать с каким-нибудь труднонаходимым элементом. То есть использовать его как помощника, как вспомогательный инструмент, но не как основное средство автоматизации.
За сколько тестировщик превращается в автотестировщика
Опять же, по нашему опыту, мы нанимаем человека без опыта автоматизации и на испытательный срок (3 месяца) ему ставится задача - написать свой первый автотест на любую из платформ, которая ему понравится больше или покажется проще. И у нас еще никто не провалил испытательный срок.
Естественно, большую роль играет то, что человек пишет автотесты не совсем с нуля. У нас уже есть и готовые автотесты, которые можно смотреть и писать по аналогии, и люди, которые готовы помогать и отвечать на вопросы.
По итогу за 3 месяца мы получаем человека, который уже понимает, как писать автотесты минимум для одной из платформ. Следующим шагом будет написать такой же тест для второй платформы. Еще через 3-4 месяца мы получим самостоятельного автоматизатора мобильных приложений под обе платформы, которому еще какое-то время, возможно, нужна будет помощь с какими-то сложными вещами. Но вот свободно писать легкие автотесты под обе платформы он будет уже через полгода.
Карьерный путь автоматизатора
Роадмапы в основном включают и мануал и авто, их можно посмотреть в теме “Что должен знать и уметь Junior? Что спросят на собеседовании?”.
Вопросы для подготовки к собеседованию можно условно поделить на 3 большие группы:
- джуна наверняка всё-равно будут спрашивать общую теорию тестирования по мануалу, хотя бы по верхам;
- всё то, что касается непосредственно автоматизации: какая бывает, инструменты в общем и конкретно под вакансию, представление об инфраструктуре CI/CD, лучшие практики автоматизации и т.п.;
- core языка программирования, указанного в вакансии и всё, что вокруг этого.
Вопросы по автоматизации:
- Что такое автоматизация и зачем она нужна?
- Когда нужно начинать автоматизацию на проекте?
- Какая бывает автоматизация (виды, методы, платформы и т.п.)?
- Характеристики хорошего автотеста;
- Паттерны автоматизации;
- Популярные фреймворки и инструменты автоматизации, запуска тестов и генерации отчетности;
- Инфраструктура CI/CD, пайплайн, место автотестов в нем;
- Что следует автоматизировать в первую очередь?
- Какая тестовая документация нужна для автоматизированного тестирования?
- Есть новая фича. Расскажи, как будешь тестировать и какие автотесты напишешь.
Вопросы по языкам программирования:
Java:
- дизайн-паттерны;
- дата-типы;
- коллекции, Map...;
- модификаторы доступа. Public, Private, Abstract классы и методы;
- Что такое Интерфейс?
- Что такое лямбда функция?
- дженерики;
- коллекции;
- методы класса object;
- больше тут или в гугле.
Вопросы общие по типу:
- Разница между библиотекой и фреймворком?
- Что означает слово SNAPSHOT в версии библиотеки?
- Что такое SDK?
Практические навыки:
- уметь писать код и решать простые задачки (переборы массивов и т.п.);
- Git;
- консоль;
- типовые инструменты для платформы;
- моки запросов (Swifter/Wiremock);
- инструменты отчетности (Allure);
- инструменты CI.
Пример вопросов от кандидата работодателю:
- Сколько IOS разработчиков в приложении?
- Сколько Unit Test’ов и сколько UI Test’ов на данный момент?
- С какой периодичностью запускаются тесты?
- Какой релизный цикл? Сколько сейчас времени на регресс?
- Кто добавляет Accebility Identifier’ы в приложение?
- Какая минимальная версия IOS поддерживается?
- Сколько времени тратится на сборку приложения локально?
- Какая система сборки используется на проекте?
- Автоматизируете ли разрешение конфликтов в project.pbxproj ?
Источники:
- ТОП-5 вопросов ручных тестировщиков про автоматизацию
- ТОП-5 вопросов технического директора про автоматизацию
Доп. материал:
- Чек-лист для начинающего автотестера на Java
- 39 TOP Automation Testing Interview Questions And Answers
- 50 Most Popularly Asked Selenium Interview Questions And Answers
- Automation Testing Interview Questions And Answers (Updated 2022)
- Interview Prep Questions
- 50 вопросов по Docker, которые задают на собеседованиях, и ответы на них
- О чем спрашивают на собеседовании QA Junior: Selenium
- Как начать карьеру QA Automation Engineer: один простой совет
- Нужно ли знать программирование для qa автоматизатора?
- Как стать QA AUTOMATION engineer с нуля самостоятельно
- Дмитрий Бормотов - Трансформация из Manual QA в Automation
- Как стать автоматизатором тестирования?
- Какие вопросы ожидать на позицию автоматизатора и причем тут сортировка?
- Что спрашивают на собеседовании у джуна, или как я искала свою вторую работу в ИТ
- 10 Awesome Tips To Become A Better Automation Tester
- Какие ошибки совершает начинающий QA Automation Engineer? Как их избежать?
- Три типичных ошибки автоматизатора
- QAGuild#54: Что должен знать тестировщик? Топ 3 навыка для QA Automation engineer
- Как стать Java разработчиком за 1,5 года
- Как я изучал структуры данных и алгоритмы для собеседования в FAANG
- Как я готовился к собеседованию в Google