Search
Write a publication
Pull to refresh

Как стать QA Automation? Пошаговая инструкция

Level of difficultyEasy

В сети немало статей на данную тематику, но, как мне кажется, это не самая плохая тема для первого поста. Не ставлю задачу взвешивать все за и против различных языков программирования и фреймворков для автотестов. Личный опыт, не более.

Этот текст посвящен ручным тестировщикам, которые задумались о переходе в автоматизацию, но не знают, с чего начать. Не во всех компаниях отлажен процесс перехода в автоматизацию, и не любой инструмент может вам подойти. Как и не каждый онлайн-курс поможет освоить тему, а не отобьет все желание развиваться в этой сфере.

Здесь будут ссылки на Stepik.org и это не реклама. Просто так сложилось, что именно там я наткнулся на курсы, которые дали старт моему переходу в автоматизацию.


Итак, поехали:

1. Сначала начинаем учить Python. Проходим этот курс до главы 3.2 включительно, дальше по желанию. Не получается решить какие-то задачи курса? Пофиг, двигаемся дальше. Задачи абстрактны, а с абстрактным мышлением не у всех хорошо. У меня, например, плохо. Как автотестировщик, вы будете решать прикладные задачи. Любой популярный язык многогранен и заточен под различные задачи, не стоит пытаться объять необъятное, особенно на первом этапе.

2. Переходим к изучению Selenium с этим курсом. Именно из-за данного курса на первом шаге был выбран Python, а не из-за “френдли” синтаксиса, кажущейся простоты и популярности. По факту, это просто вкусовщина. Все ООП языки плюс/минус похожи, как и базовая логика различных фреймворков для автоматизации. По окончанию курса вы уже будете способны писать терпимые автотесты для веб-сайтов и повысите свою привлекательность на рынке.

3. Расширяем знания в Selenium с данным курсом. В отличие от предыдущих, за него нужно будет заплатить символическую сумму.

4. Автоматизация Web UI — вещь важная и полезная. Но если ваш проект не просто сайт, а вполне себе WebApp, то вам придется взаимодействовать напрямую с API. Авторизовываться через cookies, готовить окружение, чистить мусор после автотестов. Тут еще пригодится умение работать с базами данных, но API вещь в принципе незаменимая. Тут вам поможет курс того же автора.


Пройдя все шаги, вы уже будете неплохо ориентироваться в Selenium, иметь достаточный минимум с Python, PyTest, Git, Allure и научитесь собирать логи. А такие вещи, как CI/CD, Docker и прочее, эффективнее изучать непосредственно на проекте, и тут вам смогут помочь коллеги.

Естественно, никто не отменял Google и GPT. Когда начнете работать над своим первым проектом по автоматизации, вам волей-неволей придется открыть для себя много нового, что не описано в рамках вышеуказанных курсов. Вы прокачаете и знание языка и владение сопутствующими пакетами. Начнете смотреть по сторонам в поисках новых скиллов для изучения и применения. Тем более, освоив один язык программирования, легче вкатиться в другой. Так же и с новыми фреймворками.

И тут я могу посоветовать обратить внимание на более современные фреймворки, а именно Cypress и Playwright. Не стану рассуждать о плюсах и минусах, это можно погуглить или сразу проверить в работе. Опять же, все сильно зависит от задач проекта, над которыми вы работаете.

Что касается Cypress, то тут вам придется отойти от привычного Python и выбрать между JS и TypeScript, но не стоит этого бояться. У Cypress лучшая документация, которую я когда-либо видел, к тому же есть свои бесплатные курсы. Также, фреймворк сам по себе прекрасно взаимодействует с API, и если у вас уже был опыт создания скриптов в Postman, работа с Cypress не составит большого труда.

Playwright позволяет писать тесты, в том числе на уже привычном Python+PyTest. Советую ознакомиться с документацией и этим курсом. Из трех опробованных мной фреймворков, этот мне кажется лучшим.

На этом все! Надеюсь, мой опыт кому-то поможет с максимальным комфортом перейти в автоматизацию без покупки дорогостоящих курсов и бессмысленной траты времени.

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.