Тестирование программного продукта – процесс, проводимый либо в ручном, либо в автоматизированном режиме. В первом и во втором случае составляется план тестирования и пишутся тест-кейсы. Разница лишь в том, что в ручном тестировании тест-кейсы выполняет человек, а в автоматическом за него это делает программа.
Сразу отметим, что каждый из вариантов не лучше и не хуже другого. Автоматизированное тестирование прекрасно дополняет ручное, и при правильном сочетании можно получить оптимальное быстродействие и использование ресурсов, а также минимизировать расходы.
Преимущества и недостатки автоматизированного тестирования
У автоматизированного тестирования, как и у ручного, есть свои достоинства и недостатки. Вот основные из них:
Преимущества
Автоматизация тестирования может быть очень полезной:
- Если проект большой и продолжает расти.
- Если необходимо поддерживать несколько версий программы, и количество тестов огромное.
- Если проекты выполнены на основе IoT (Internet of Things) или Big Data. В этом случае применение ручного тестирования всегда нерационально.
- Если в команде много разработчиков, которые параллельно вносят изменения в код. Автоматизация тестирования снижает возможные негативные последствия этого.
Недостатки
Полный переход на автоматическое тестирование не имеет смысла, и вот почему:
- Все автотесты написаны по определенному сценарию. Они позволяют быстро прогнать тысячи рутинных тестов, но они не помогут выявить те ошибки, которые выходят за рамки сценария.
- Все автотесты написаны по определенному сценарию. Они позволяют быстро прогнать тысячи рутинных тестов, но они не помогут выявить те ошибки, которые выходят за рамки сценария.
Таким образом, применение обоих подходов с их преимуществами позволит получить лучший результат.
Обязанности инженера по автоматизированному тестированию
Типичные обязанности этого специалиста могут включать следующее:
- Разработка сценариев тестирования.
- Написание новых автотестов.
- Анализ результатов тестовых прогонов.
- Доработка сценариев тестирования.
- Ведение документации по тестам.
- Верификация исправленных программистами ошибок.
Конечно же, как член команды разработки, тестировщик будет посещать собрания и другие общекомандные события.
Зарплата
Опытный автоматизатор зарабатывает на рынке труда в США от 115 тысяч долларов в год.
Как мне стать автоматическим тестировщиком?
Если вы выбираете профессию QA-инженера, то мы рекомендуем вам начать с освоения ручного тестирования. Почему? Потому что любая автоматизация должна опираться на то, что вы понимаете базовые принципы и механизмы тестирования. Этому и обучают на курсах для ручных QA. Освоив базовые навыки и получив первый опыт, вы сможете углубиться в эту сферу и начать автоматизировать тестирование. Написание автотестов требует хорошей технической подготовки тестировщика и изучения базовых языков программирования, но эти знания позволят вам выбирать более сложные и интересные проекты, и к тому же получать больше денег за свою работу.
Навыки тестировщика
Для успешного карьерного роста любой профессионал должен обладать рядом soft skills, и QA не исключение в этом вопросе. Вот какими навыками должен обладать QA-автоматизатор:
- Коммуникабельность. QA – командный игрок, поэтому коммуникация очень важна для общего результата. Он должен уметь четко и понятно описывать суть проблемы, уметь задавать правильные вопросы, и эта коммуникация ни в коем случае не должна порождать конфликты в команде.
- Дисциплинированность. Творческий подход – это прекрасно, но не для QA. Здесь гораздо важнее строгое соответствие плану. Особенно это важно в проектах с гибкими методологиями, где этапы разработки разбиты на спринты с четкими сроками.
- Обучаемость. Знания в мире ИТ устаревают очень быстро. Здесь 1 год – большой срок. Поэтому хороший QA-специалист должен постоянно осваивать новые технологии и новые подходы, которые появляются чуть ли не каждый день.
Какими бы крутыми не были ваши профессиональные знания, без хороших soft skills вы не сможете сделать свою карьеру.
А что дальше?
Развитие любой карьеры, в том числе и в QA может идти или «горизонтально», или «вертикально».
Горизонтальная карьера связана с постоянным улучшением навыков в профессиональной сфере и расширением круга своих знаний – новые технологии, новые подходы, и т.д.
Вертикальная карьера – это продвижение по иерархии компании от линейного менеджера до топ-менеджера. Для успешной вертикальной карьеры нужно работать в крупной компании, где такой рост в принципе возможен.
Многие выбирают третий путь – нечто среднее, когда с одной стороны вы получаете руководящие должности, а с другой – расширяете свои профессиональные знания. Какой путь выбрать – решение за вами!