Большую часть времени работы в сфере тестирования на пространстве СНГ не очень то ценились навыки специалистов по тестированию.
Казалось, всегда можно взять с улицы целеустремленного человека и попросить взглянуть на продукт с точки зрения пользователя.
Но системы начали усложняться, а именно их логика и те процессы, которые происходят под капотом.
Поэтому тестирование наконец-то начали ценить:
Сейчас, чтобы качественно протестировать такое ПО нужна:
-определенная доля погружения в предметную область;
-понимание взаимодействия компонентов ПО друг с другом;
-понимание каналов, по которым двигаются данные;
-учет и понимание критериев качества, таких как:
- функциональная пригодность;
- производительность;
- совместимость со средой эксплуатации;
- удобство;
- надежность;
- защищенность;
- сопровождаемость;
- переносимость.
Тестировщик сейчас решает задачи не только непосредственного тестирования, но и :
- Разворачивание среды окружения(эта задача настолько серьезна, что иногда ее отдают отдельным devops специалистам )
- Подготовка к релизу(документация, сбор и аккумулирование информации со всех участников процесса разработки)
- Отслеживание метрик качества ПО(количество перекрытия задач, количество багов на ПРОМе, количество критичных багов на регрессе и т.д.)
Наряду с привычными видами тестирования на первый план начали выходить: безопасность и нагрузочное тестирование.
Особенно актуально для web mobile продуктов с доступом для любого пользователя в интернете.
Поэтому даже начинающим нужны азы тестирования безопасности и нагрузки.
Про самодисциплину, умение объяснять, договариваться и другие личностные качества специалистов я уже молчу. Это считается само собой разумеющимся.
Из вышесказанного хочется донести мысль: тестировщик это уже давно не просто любой человек с улицы, который может работать с базовыми функциями Операционной системы. Это скорее специалист с необходимыми базовыми знаниями без, которых он врядли будет востребован на текущем рынке.
Какие базовые знания важны на первом этапе, чтобы начать?
Для каждой компании это будет немного своя вариация.
Для примера, составленная мной карта развития для начинающего джуна(может называться в компании "младший тестировщик" или как-то по другому) может помочь вам понять какой примерный объем знаний и навыков от вас могут ожидать:
Уверенный джун:
*В графе "Тестирование производительности" "Введение" означает, понимание основ тестирования производительности: для чего, какие возможные кейсы и т.д.
Данные таблицы можно рассматривать как карта развития сотрудника.
Т.е. смОтрите, что есть на следующем уровне и изучайте данную тему. При изучении необходимого пула можно с большей уверенностью просить пересмотр контракта=)
Предложенные карты развития тестировщика всегда будут несколько специфичны для каждой компании.
Кто-то делает больший упор на инструментарий и написание различных скриптов, элементы автоматизации, кому-то важнее качественный тест-дизайн. Вобщем каждому свое.
Любите то, что делаете и развивайтесь!