✅ 10 советов начинающему инженеру QA
В сложном мире тестирования начинающему QA-инженеру потеряться нетрудно. Чтобы избежать проблем, воспользуйтесь несколькими простыми советами.
В начале карьеры тестировщику не всегда ясно, какие навыки стоит прокачивать в первую очередь. Бежать изучать программирование, если в нем есть пробелы, или сосредоточиться на т.н. «софт скиллах»: правильно задавать вопросы, грамотно объяснять, уметь слушать. Без навыка четко выражать свои мысли устно и письменно развиваться будет крайне сложно, но и хвататься сразу за все не стоит. Можно распылиться и ничего не получить в итоге.
Инженер QA обучается постоянно: попробуем сформулировать 10 базовых принципов, следуя которым можно если не достичь совершенства, то максимально к нему приблизиться.
Совет № 1. Составьте план
Работа и обучение тестировщиков – прежде всего структурирование. Сразу определите шаги, которые при последовательном выполнении дадут вам результат. Решите, в каком направлении прокачивать навыки в первую очередь, сколько часов в день/неделю, что будет мерой успеха. Если вы только сейчас узнали, кто такой тестировщик, стоит изучить тему чуть шире и узнать, какие слухи ходят о профессии.
Совет № 2. Выбирайте язык
Речь не только о языках программирования. Если у вас слабый английский, это первый пункт плана. Вам нужно читать мануалы в оригинале, быть в курсе мировых новостей и понимать, почему оператор или функциональный модуль называются именно так, а не иначе. Только освоив английский можно выбирать, скажем, между Java или Python.
Совет №3. Изучите кухню
Чтобы освоить профессию тестировщика, не обязательно быть технарем, но некоторые технические знания все равно потребуются: нужно представлять, как процессор обрабатывает команды, зачем нужна операционная система, что такое база данных или веб-сервер. Как отличается тестирование веб-приложения от тестирования сайта, как правильно заводить дефекты – все это придется изучить.
Совет №4. Используйте интеллект-карты
Интеллект-карты – инструмент аналитика, который позволяет максимально наглядно работать с информацией. Их еще называют mind-map или майнд-картами. Вы визуально отображаете информацию, с которой работаете, и находите неожиданные сочетания. В процессе обучения интеллект-карты позволяют лучше усваивать материал.
Совет №5. Делите тестирование на части
Любой сложный процесс можно разделить на составные части и проверить каждую из них отдельно. Составьте для каждой части ситуации от обычной до невероятной, и пройдите эту шкалу полностью. Результат получится более объемным, а понимание процесса углубится. Начните с ориентации ПО на девайсах, визуала, ведения данных и постепенно идите к коду. Создавайте чек-листы. Они пригодятся, чтобы разгрузить мозг и ничего не забыть. Разделите тестирование на разные позиции: пользователя, специалиста тех. поддержки и т.д.
Совет № 6. Собирайте базу кейсов
Ведите таблицы, записывайте интересные случаи и способы решения задач. В части визуала есть понятие насмотренности – оно помогает на интуитивном уровне делать визуальную составляющую стильной и приятной. Для тестировщика такой насмотренностью будет своя база кейсов, собранных из различных источников.
К примеру, два инженера QA тестируют расчет алиментов. Один проверил, как они заводятся в системе, как начисляются, каковы варианты ведения данных в полях. Проверил и смоделировал выплату.
Второй тестировщик взял и завел алименты женщине от двух разных мужчин с двумя разными способами перечисления. Проверил, смоделировал выплату.
Какой результат будет более объемным?
Совет № 7. Пишите понятно, подтверждайте красиво
Все записанное имеет силу. Нет ничего надежнее задокументированных результатов тестирования. Недостаточно сказать «работает не так»: приложите скриншот, лог программы, видео или трассировку. Чем больше наглядных подтверждений, тем выше шансы, что вас поймут правильно и не попросят переформулировать.
Совет №8. Освойте отладочные меню и системы баг-трекинга
Обучение инженера QA включает работу с отладочными меню для облегчения тестирования. Системы баг-трекинга Jira, Redmine и Bugzilla помогают управлять процессом и координировать работу.
Совет № 9. Проводите стресс-тестирования
Заполняйте оперативную память полностью, создавайте условия максимальной нагрузки для приложения, чтобы понять, как оно поведет себя в стрессовой ситуации. Вы проверите на практике, с какой скоростью приложение выполняет операции, как восстанавливается, сохраняет ли данные, при какой нагрузке зависает непоправимо.
Совет № 10. Пройдите стажировку
Расширяйте горизонты. Обучение тестировщика идет непрерывно: новые проекты, новые разработки, новые задачи. Не стоит учиться только чтобы учиться – у вас должна быть цель, тогда продуктивность повысится. Книги, коммьюнити и курсы – хорошая помощь в развитии. Нет ничего лучше постоянного общения в профессиональной среде.
Что стоит почитать для расширения кругозора:
· Гленфорд Майерс, Том Баджетт, Кори Сандлер «Искусство тестирования программ»
· Тобиас Клейн «Дневник охотника за ошибками. Путешествие через джунгли проблем безопасности программного обеспечения»
· Ron Patton «Software Testing»
· Джеймс Уиттакер, Джейсон Арбон, Джефф Каролло «Как тестируют в Google»
· Кэти Сьерра и Берт Бейст «Изучаем Java»
· Линн Бейли «Изучаем SQL»
· Роман Савин. «Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах»
· Святослав Куликов «Тестирование программного обеспечения. Базовый курс»
· Алан Купер «Психбольница в руках пациентов»
· Борис Бейзер «Тестирование черного ящика. Технологии функционального тестирования программного обеспечения и систем»
· Константин Азарский «Тестирование. Легкий старт»
Хочу научиться программировать с нуля, но не знаю, с чего начать. Что делать?
Можно учиться самостоятельно (долго) или пойти на курсы с преподавателями (быстро). Плюс нужно учитывать, что джунов много, конкуренция выше и работодатели повышают порог вхождения при найме на работу. Чтобы получить актуальные знания, мы в proglib.academy запустили курсы:
- Основы программирования на Python.
- Профессия Python-разработчик.
- Алгоритмы и структуры данных.
- Математика для Data Science.
- Профессия Data Science.
- Frontend Basic: принцип работы современного веба.
- Профессия Фронтенд-разработчик.
- Обработка естественного языка. Полный курс.
На подходе еще больше 10 курсов для взрослых и детей.