Знания и навыки, необходимые для работы в тестировании в 2022 году
Войти в IT через тестирование сейчас пробуют многие, но с каждым годом это становится все труднее и труднее. Однако, уровень оплаты труда опытных тестировщиков растет никак не медленнее, чем у программистов.
Как часто видите вы рекламу различных курсов, предлагающих за скромную разумную плату обучиться "перспективнейшей востребованной специальностью" тестировщика и зарабатывать от 100500 тыщ в месяц? А сколько ваших знакомых, прошедших такие курсы, смогли трудоустроиться и зарабатывать хотя бы 30 тыс. рублей на первых порах? Расскажу о собственной статистике - из 10 пришедших с курсов только 2 трудоустраиваются. Остальные, чаще всего, возвращаются к профессии, из которой планировали уйти.
Почему так происходит? Все просто! Во-первых, чаще всего курсы покупают те, кто не способен/не хочет искать информацию самостоятельно. Для таких людей курсы что-то вроде золотого билета в мир больших зарплат айтишников и удаленки. Во-вторых, люди, которые предпочитают курсы, потому что они сильно мотивируют. От многих я слышал подобные фразы - "Сам не могу себя заставить учиться, а потраченные деньги сильно мотивируют". Для многих это основополагающий фактор в покупке курсов. Опять же, если вы не интересуетесь темой, которую изучаете, вам нужна дополнительная мотивация к действиям, тогда есть смысл задуматься - а надо ли оно вам вообще?! Если такой человек все же попадает на работу, он или очень быстро выгорает, или топчется на одном уровне, пока ему не предложат повышение/увольнение, или через месяц-другой сам увольняется.
Так какие же качества, способности и умения нужны, что бы выгодно выделяться среди соискателей на вакансию QA - инженера?
Знание предметной области
Это самое важное качество, которым необходимо обладать для успешного трудоустройства! Если вы специалист, а тем более эксперт в направлении, которое собираетесь тестировать, то с огромной вероятностью вас будут приглашать на работу с хорошей зарплатой. Даже больше - ваш профессионализм в предметной области будет приоритетом на собеседовании, и некоторые пробелы в знании теории тестирования или используемых технологий будут несущественны при принятии решения о вашем трудоустройстве. На данный момент очень много вакансий в таких областях, как банковское дело, медицинское ПО и оборудование, общепит, строительство и образование. Если вы работали или работаете в одной из этих сфер, вам останется получить теоретически знания о тестировании, остальному, чаще всего, компании готовы вас обучить во время стажировки.
Знание основ функционального тестирования
Тестирование - одна из немногих (если не единственная) профессия в IT, которая подразумевает под собой знание обширной теории. Если на собеседовании программистов чаще всего спрашивают прикладные вещи и просят написать простенькую программу типа определения палиндрома или сортировку пузырьком, то при прохождении собеседования на тестировщика вас попросят рассказать о методиках тестирования, что такое тестирование, баг репорт, какие виды документации и тест-дизайна вы знаете, и еще многое другое. Естественно, эти знания необходимы вам в работе, так что не думайте, что вам не пригодятся эти знания.
Компьютерная грамотность
Поскольку вы желаете устроиться в компанию, которая занимается разработкой ПО, знаний о том, как запустить Word будет маловато. Если вы желаете работать QA - инженером, надо соответствовать. Тут вам потребуются знания о браузерах, платформах, ОС, системных требованиях (особенно необходимо тем, кто тестирует ПО для ПК), знания о клиент-серверной архитектуре, языках программирования (хотя бы какие есть и для чего могут быть использованы). Не лишним будет опыт работы с прикладным ПО. Это поможет быстрее освоиться с тех программах, с которыми вам предстоит работать (Баг-трекеры, ПО для тестирования API, непосредственно ваш объект тестирования)
Программы для тестирования
Если компьютерная грамотность - это больше про общую осведомленность, то с ниже перечисленными программами надо ознакомиться поближе, т.е. получить практические навыки в работе с ними. К счастью, практически у всех из них есть демо-версии, позволяющие ознакомиться с функционалом.
Баг-трекеры. Jira - самый популярный баг-трекер, многие компании используют именно его.
Chrome DevTools - Панель разработчика в браузере Google Chrome. Обязательно обратите внимание на вкладки Network, Console и Elements. Не лишним будет знать, как запускать скрипты в консоли браузера, а так же эмулировать вид с мобильных устройств.
Программы для тестирования API. Postman и Soap UI самые популярные программы для тестирования API, однако, не спешите приступать к их изучению, если не знаете, что такое XML, JSON, REST и SOAP. Эти программы помогут вам только в том случае, если вы разбираетесь в реализации API соединений, и можете написать запросы. В противном случае эти знания мертвым грузом лягут в ваш багаж, не позволяя использовать их во благо компании.
Расширения в браузерах. Есть множество полезных расширений и плагинов, которые позволят вам качественно тестировать веб-продукт. К таким относятся разнообразные линейки, пипетки, сетки и прочее. Есть даже такие, которые записывают всю последовательность ваших действий и воспроизводят ее. При тестировании важного функционала, который редко меняется такой плагин просто незаменим (Речь идет про Selenium, очень рекомендую ознакомиться с продуктами этой серии).
Эмуляторы. Конкретно - эмуляторы мобильных устройств и ОС на ПК. Особенно важно для тестирования Android и IOS приложений. Таких эмуляторов великое множество, гайды про них есть в открытом доступе. Наиболее популярным является Oracle VirtualBox.
Софт-скилы
По сути, это модное обобщенное название всего того, что раньше характеризовалось такими качествами, как обучаемость, общительность, заинтересованность и прочее. Как и в любую другую профессию, в тестирование не стоит идти без интереса (финансовый не в счет). Помимо всего перечисленного, рекрутерами и руководителями от тестирования и разработки ценятся лаконичность и умение описывать проблему на сухом, техническом языке. Так же не забывайте про грамотность, писать баг-репорты и тестовую документацию с ошибками считается дурным тоном.
Итог
В итоге мы имеем, что для того, что бы быть хорошим QA - инженером мало пройденных курсов. Идеальный стажер в тестировании - это человек с обширным жизненным и профессиональным опытом, который не только может проверить продукт или проект на ошибки, но и подсказать, какие фичи необходимы для поддержания конкурентоспособности на рынке.