Подскажите обязательно для начала идти на курсы ручного тестирования а потом уже на курсы автоматизированного? Либо можно начинать сразу с автоматизации на JS?
Владею хорошими навыками в JavaScript, базе данных и языке SQL. Есть несколько мною реализованных web-приолжений.
Но нет никаких навыков в создании чек-листов, разработке тестов, сценариев, документировании обнаруженных дефектов. Т.е всего , что касается ручного тестирования.
Прям обязательных таких требований нет. Многое зависит от того как организована работа на проекте: есть ли там отдельные “ручники” и “автоматизаторы”, либо все инженеры сами проектируют и пишут автотесты.
В целом, придумывать тесты можно и интуитивно, а потом в ходе работы уже освоить какие-то техники тест-дизайна, которые помогут делать это эффективнее. Можно и просто видео и статьи найти по теме тест-дизайна, идеи там достаточно простые, а навык нарабатывается с практикой
Идите сразу на автоматизатора. На Junior позициях все равно не требуется самостоятельно заниматься тест-дизайном, да и про это достаточно дополнительно почитать литературу. А в остальном куда полезнее технические навыки. Даже “манульщику” надо уметь и запросы к базе сделать и что-то в командной строке вызвать.
Очень интересно. Как можно написать интеграционный тест автоматизации не пройдя его в ручном режиме?
Есть у меня знакомый, который из БЭК разработчика ушёл на автоматизатора тестирования. В теории ручного тестирования он не разбирался и до сих пор не разбирается, при этом вполне нормально автоматизирует описанные ему сценарии.
Всё зависит от компании как мне кажется. Если найдёте компанию, в которой не нужны навыки ручного тестировщика для автоматизатора, то смело можно идти.
В крайнем случае изучить вопрос по ручному тестированию можно параллельно, уже работая.
Основы тестирования - имхо - не зависят от того применяете ли вы их в скрипте или в ручном проходе по продукту. Я прошел путь от ручного тестера до продакт менеджера и скажу вам как лицо нанимающее людей - я бы не взял человека на позицию QA если он не понимает основ тестирования. Отличие регресий от смоука в процессе работы приводят к печальным последствиям. Потому подберите материал по основам и удостоверьтесь что хорошо их усвоили (искрене считаю что курсы для этого не нужны) и спокойно идете на автоматизатора (имхо если вы уже умеете писать код - вам и туда идти не стоит:) )
Постараюсь ответить развернуто:
Дело в том, что не в каждой компании вы будете заниматься только автоматизацией, в большинстве из них вы будете принимать непосредственное участие в разработке ПО тестируя новый функционал и паралельно писать автоматизацию на уже написанную тестовую документацию, + различные стадии такие как regression, авто тесты вы запустите, они выявят баг, а как его репортить вы просто не знаете. Так же есть случаи когда вас просят автоматизировать тесты в автоматизации которых нет смысла. На моем проекте было так - до меня работали мануальщики которые писали тест кейсы, когда зашел разговор об автоматизации то компания наняла аутсорс галеру и они написали авто тесты на абсолютно все тест кейсы которые были, через какое-то время, когда я пришел работать я увидел что 90% этих тестов просто бесполезные, одни из них проверяют одно и то же просто на разных страницах, другие из них просто проверяют ничего. И таких проблем множество, поэтому любому тестировщику, не важно автоматизатор он или мануальщик нужно разбираться в тест дизайне, документации, процессах разработки и тестирования. На курсы идти не обязательно, достаточно почитать для общего понимания что такое тестирование и о чем вообще это вот всё ISTQB syllabus например. Это можно сделать паралельно с курсами автоматизации о которых вы спрашиваете, потому что как ни крути но автоматизированное тестирование - это в первую очередь тестирование, а потом уже программирование. Как говорится - почти каждый тестировщик, автоматизатор может с легкостью уйти в программирование, а вот не каждый программист сможет тестировать.
Удачи
Не обязательно, можно сразу начать с автоматизации, но как минимум почитать основы тестирования.
Курсы по автоматизации тестирования научат вас программировать тесты. Курсы по ручному - собственно, тестировать. Два разных глагола и два разных действия. Персонально мое мнение: автоматизатор должен уметь не только программировать, но и понимать принципы тестирования: что тестировать, какими способами, а главное - зачем.
Можно, но не нужно
Что нужно сначала:
- Разобраться, что такое тестирование вообще. Может, это просто не Ваше.
- Разобраться в тестовых фреймворках. То, что Вы на JS слепили пару аппликух - огромный жирный плюс, но не научило Вас даже основам того же Selenium / Protractor.
- Научиться писать мануальные тесты и освоить базовые техники (Equivalence Partitioning + Boundary Values Analysis хотя бы). Даже если Вы никогда в жизни не будете их писать - Вам надо понимать, что такое test coverage и откуда он берётся. Ну и научиться читать требования. Туда же: научиться оформлять баги.
- Понять, как работают процессы разработки / тестирования и почему именно так.
- Много где автоматизатор - это не машина, потребляющая кофе и генерирующая тестовый код из мануальных тестов, а человек, который берет фичу и тестирует её целиком, от требований до написания мануальных и автоматических тестов. Если Вы к этому не готовы - Вы значительно снижаете кол-во доступных Вам проектов.
Можно, но не нужно. Вы просто не будете знать как происходят процессы ручного тестирования и ваши автотесты будут неэффективны. Конечно если 100% времени у вас рядом будет ручной тестировщик, который будет рассказывать и показывать какие проверки нужны - тогда можно и без опыта учится автоматизировать. Но, повторюсь, лучше для себя и для карьеры - погрузиться в ручное вместе или перед автоматизацией
Можно стать, для начала, но дальнейшее развитие будет ограниченным.
Без понимания тестирования как такового, вы остаетесь тем же разработчиком “в тестировании”, то есть можете компетентно делать прикладные инструменты/библиотеки для автотестеров. Со всеми их градациями – джун, миддл, синьор. Это в лучшем случае.
В худшем, будете просто автоматизировать чужие тестовые сценарии, как ретро-машинистки переводили речь в текст
Хех, ну все уже разложили по полочкам
Единственное, что со своей колокольни хочется добавить, что если какой-то курс позиционирует себя как покрывающий темы QA Automation или Test Automation и при этом…
кроме
- Automation – т.е. “чем автоматизировать” (какими инструментами, командами) и “как это делать” (разные шаблоны, практики, принципы именно автоматизации)
… вообще никак не затрагивает темы:
- Test – что покрывать тестами (Тест Анализ), а что нет, какие кейсы (Тест Дизайн), в каком порядке, четко определять тестовую логику: пре- и пост-кондишены, шаги, асерты (что проверять а что нет), тестовые данные
- QA – где (на каком уровне тестирования), когда (в какой момент в процессе разработки)
То грош цена такому курсу.
Не, конечно, автоматизация - все-го лишь инструмент тестирования и QA. Можно выучить основы тестирования в одном месте, и потом пойти на «чистый» курс “по инструментам автоматизации тестирования”. Вот только, если курс будет действительно хорошим, и главное – практическим – то на нем будут такие домашние задания, на которых без навыков тестирования ничего не получится сделать. Получается, либо курс должен эти темы тоже покрывать как-то, либо оговаривать предусловия для прохождения курса, включающие базовые знания в тестировании.
При этом, да, в современном мире, полно курсов, которые учат не автоматизации тестирования а просто автоматизации уже прописаных ранее шагов пользователя по уже существующим тест кейсам. И в большинстве случаев это типа норм, потому что на галерах, обычно, как раз заинтересованы в том, чтобы дробить роли и продавать больше инженеров заказчикам, зарабатывая соответственно больше денег, и в принципе – помогая зарабатывать обычным смертным, которым деньги на первом месте, а качество процессов на проекте - это уже потом Ну норм. Надо же с чего-то начинать
если возник такой вопрос, то лучше потратить время на программирование и пойти сразу в программисты.