Ко мне часто приходят с запросом научиться автоматизировать. Я всегда, абсолютно всегда, теряюсь в этом. Почему? Потому что для меня единственный навык, которым надо владеть - это уметь программировать.
Чем тестировщик автоматизатор отличается от разработчика? Ну, возможно, не такими глубокими познаниями и мастерством владения кодированием + знанием теории и наличием практики тестирования. Хотя, это смотря какой автоматизатор, конечно. Частенько хорошие автоматизаторы переезжают в программисты :) но мы не об этом.
Да, в автоматизации есть некоторая специфика, специальные фреймворки, инструменты, но самое главное все равно - это умение писать код.
Да, можно писать тесты не сильно понимая в программировании, но ничего больше повторения чужих тестов сделать не получится… а кроме того на любом собеседовании вам, как автоматизатору будут предлагать, угадайте что? написать код… не тесты, не фреймворк, а настоящий код без гугла и подсказок, на листочке, в блокноте.
Поэтому, для меня программа обучения выглядела бы так:
Помните, что автоматизация имеет специфику в зависимости от того, что именно вы тестируете, бэк, фронт или железки, ещё что-то. Но одно неизменно - навык программирования!
Чем тестировщик автоматизатор отличается от разработчика? Ну, возможно, не такими глубокими познаниями и мастерством владения кодированием + знанием теории и наличием практики тестирования. Хотя, это смотря какой автоматизатор, конечно. Частенько хорошие автоматизаторы переезжают в программисты :) но мы не об этом.
Да, в автоматизации есть некоторая специфика, специальные фреймворки, инструменты, но самое главное все равно - это умение писать код.
Да, можно писать тесты не сильно понимая в программировании, но ничего больше повторения чужих тестов сделать не получится… а кроме того на любом собеседовании вам, как автоматизатору будут предлагать, угадайте что? написать код… не тесты, не фреймворк, а настоящий код без гугла и подсказок, на листочке, в блокноте.
Поэтому, для меня программа обучения выглядела бы так:
- Получить навык программирования на любом понравившемся языке программирования (ну, желательно не на чем-то на чем почти не пишут 🙃)
- Узнать про паттерны проектирования, уметь их применять, ООП тоже будет не лишним, но это включено в п.1, как правило
- Начать использовать фреймворки автоматизации на интересующем вам языке (инструменты будут разные в зависимости от языка), поднять тестовый фреймворк и поиграться, использовать библиотеки
- Подтянуть теорию, почитав хотя бы материалы по автоматизации, например, даже syllabus ISTQB Automation. Там есть очень даже неплохая теория
- Писать тесты, как можно больше
Помните, что автоматизация имеет специфику в зависимости от того, что именно вы тестируете, бэк, фронт или железки, ещё что-то. Но одно неизменно - навык программирования!