Содержание
1.QA (QUALITY ASSURANCE) ИЛИ ДРУГИМИ СЛОВАМИ ОБЕСПЕЧЕНИЕ КАЧЕСТВА. У ЭТОГО ПРОЦЕССА ЕСТЬ ДВА ОСНОВНЫХ НАПРАВЛЕНИЯ
2.АВТОМАТИЗИРОВАННОЕ ТЕСТИРОВАНИЕ
3.КАКИЕ ПЕРВООЧЕРЕДНЫЕ НАВЫКИ ПОНАДОБЯТСЯ ТЕСТИРОВЩИКУ
4.НАЧАЛЬНЫЕ ЗНАНИЯ, КОТОРЫЕ ПОНАДОБЯТСЯ МОЛОДОМУ СПЕЦИАЛИСТУ, КОТОРЫЙ ХОЧЕТ СТАТЬ JUNIOR’ОМ
QA (quality assurance) или другими словами обеспечение качества. У этого процесса есть два основных направления:
- Первая это когда разработчики показывают заказчикам, что созданная ими программа полностью соответствует всем требованиям;
- А вторая это найти места, где программа ведёт себя не так как нужно или не соответствует спецификации.
Таким образом QA можно назвать обеспечением качества продукта желательно на всех этапах разработки и естественно основным компонентом данного понятия является тестирование.
Первое, что встретит на своем пути QA Engineer — это функциональное тестирование, которое включает в себя составление тестов по таскам, их прокрутку или прохождение уже готовых тестов, обновление, написание баг-репортов и т.п. QA Engineer выполняющий такие задачи считается тестировщиком. Качества присущие такому специалисту — развитая логика, нестандартный подход, внимательное изучение поставленных задач и способность правильно задавать вопросы: что будет, если это будет работать так? а если так?
Смотря в каком направлении тестировщик работает, ему могут понадобится новые навыки более специфично направленные, такие как разработка программного обеспечения, мобильный приложений или веб-разработка. В каждой из этих технологий есть свои особенности и баги, именно поэтому тестировщик так важен.
Однако понятие QA на этом не заканчивается и оно гораздо шире, чем просто тестирование. Процесс quality assurance также включает анализ документации и требований, т.е. поиск подводных камней в реализации, поиск багов в интерфейсе и функциональности другими словами юзабилити тестирование, еще есть тестирование производительности и другие.
Автоматизированное тестирование.
Следующее понятие из которого состоит QA Engineer — это автоматизация тестирования. Реализация этого вида тестирования в разных компаниях индивидуальное. Данную работу может производить как и автотестер, который только что узнал, как использовать тестовый фреймворк, так и квалифицированный разработчик, который выполняет задачу, которую просят его сделать тестировщики. Очевидно, что требования разительно отличаются.
Помимо тестирования топовый QA Engineer помогает и руководит процессом разработки продукта. Он следит за качеством продукта и если оно начинает ухудшаться, то QA инженер выявляет ошибки в рабочем процессе и исправляет их.
Таким образом QA Engineer — это такой тестировщик, который занимается не только тестированием, но и разработкой продукта, вкладывает много усилий для того, чтобы сделать проект лучше для всех: для заказчика, для пользователей и для самих себя, кто продукт разрабатывает. Следовательно путь к QA инженеру стоит начинать с тестирования.
Какие первоочередные навыки понадобятся тестировщику:
- Умение быстро понять каким образом разрабатываемая программа или продукт работают сейчас и умение представлять как это должно выглядеть в конечном итоге
- Говорить — нет (менеджерам и разработчикам) и даже если дедлайны горят, но какой-то баг не пофиксили, заставить разработчиков его исправить и попросить менеджера обговорить эту ситуацию с заказчиком.
- Другие направления работы могут негативно влиять на основной продукт и ухудшать качество продукта
Начальные знания, которые понадобятся молодому специалисту, который хочет стать Junior’ом:
- Разбираться во всех этапах создания и тестирования продукта, в общем всё связанное с обеспечение качества
- Иметь понятие о том, как самостоятельно писать тесты для продуктов, а также знать, что такое тест-план, тест-сьют, тест-кейс, тест-степ, Definition of Done, ожидаемый результат и т.п.
- Разбираться в разновидностях дефектов, таких например как Severity и Priority, уметь описывать дефекты и т.д.
- Понимать зачем нужны техники тест-дизайна, как они выглядят, зачем необходимы и для чего они применяются
- И конечно же иметь основные навыки владения SQL