При сдаче сертификации нужны две вещи: собственно, знания предметной области и второе — умение сдавать конкретную сертификацию. ISTQB — не исключение. Тут мало знать тестирование и SDLC — нужно уметь думать, как те, кто составлял эти тесты.
Тесты не так просты, как кажется на первый взгляд: тут обычный вопрос, не вызывающий бурю возмущений, — скорее исключение. Чаще или два правильных ответа сразу, или все не подходят. Есть еще одна категория «Мы решили спросить то, о чем не говорили вообще нигде» — чтобы вы не расслаблялись :)
Но обо всём по порядку.
На что обращать внимание при подготовке
Чтобы подготовиться к тестированию нужно следующее:
— выучить Cиллабус (78 стр);
— прочитать, понять (и простить) книгу Foundations of Software Testing ISTQB Certification (207 стр). Даже для меня, гуманитария, в книге много водянисто-водяной воды;
— прочитать (частично выучить) словарь к ISTQB;
— прорешать «500 Sample questions». Sample, к сожалению, не Simple;
— прочитать дополнительные ресурсы, решить прочие тесты, установить приложениена телефон (почти все дублируют «500 Sample questions», так что малоинформативны, но всё же);
— и так как побороть весь этот scope и победить всех и вся сложно в одиночку, то я бы очень рекомендовала пойти на курсы. Там люди, уже прожившие этот ужасопыт, подскажут и пояснят теоретические и практические моменты, а также собственным примером покажут, что сдать эту сертификацию всё же реально и не нужно всё бросать (даже если временами хочется).
В процессе подготовки накапливается свой собственный словарь — словарь синонимов. Те, кто сдавал, понимают, о чем я. Иногда создается впечатление, что все эти термины (полностью дублирующие друг друга) вводятся специально, чтобы запутать. К примеру, всем понятное Black-box тестирование (или техники тест дизайна) имеет такие синонимы, как Specification-based, Input/output driven, Behavioral. А White-box — то же самое, что Structural, Structure-based, Clear-box и Glass-box. Это отнимает много сил — запоминать разные названия одного и того же явления.
Другая история — это очень похожие по написанию, но совершенно разные по смыслу понятия. Например, Maintenance Testing и Maintainability testing — совсем разные вещи. При ограничении во времени такие слова вообще не читаются по буквам, а воспринимаются целиком, при этом спутать их становится проще простого. Или другой пример: Decision condition testing и Decision table testing — примеры совершенно разных подходов, где первый просматривает код на предмет всех возможных исходов условий, а второй — Black-box техника построения таблиц конкретных решений на основе разных (многочисленных) условий. В общем, тренировка внимания включена в курс молодого бойца.
Какие новые знания может дать сертификация
Из действительно полезного и интересного в процессе подготовки:
— структурирование информации (теории);
— подкрепление теории практическими задачами и заданиями;
— проработка всех аспектов тестирования — как в работе с самим ПО, так и аспекты работы менеджера, учет рисков, взаимодействие в команде, модели работы в целом;
— виды статического и динамического тестирования, виды Black-box и White-box техник тестирования;
— фундаментальный процесс тестирования в подробностях и с примерами;
— задачи (обязанности) тест лида и тестировщика;
— тест план — что, как, зачем;
— риск-менеджмент в разрезе тестирования.
При подготовке были обнаружены действительно полезные и интересные фразы (из «Foundations of software testing. ISTQB certification»и «Standard glossary of terms used in software testing»):
— «Мы должны понимать, что пользователь понимает под качеством и каковы его ожидания».
— «У нас есть выбор: протестировать всё, не тестировать ничего, протестировать часть функциональности (мы принимаем во внимание оценку рисков, чтобы определить, сколько тестирования потребуется)».
— «Тестирование — процесс, содержащий в себе все активности жизненного цикла, как динамические, так и статические, касающиеся планирования, подготовки и оценки программного продукта и связанных с этим результатов работ с целью определить, что они соответствуют описанным требованиям, показать, что они подходят для заявленных целей и для определения дефектов».
— «Один из семи принципов „Заблуждение об отсутствии ошибок“ гласит: обнаружение и исправление дефектов не помогут, если созданная система не подходит пользователю и не удовлетворяет его ожиданиям и потребностям».
— «Исчерпывающее тестирование недостижимо».
— «Основной процесс тестирования состоит из следующих направлений деятельности: планирование и управление; анализ и проектирование; внедрение и реализация; оценка критериев выхода и создание отчетов; действия по завершению тестов».
— «Тест „oracle“ — это источник ожидаемого результата (не код) для сравнения с фактическим результатом тестируемого функционала».
— «Необходимые навыки тестировщика: приложение или бизнес домен, технология, тестирование».
— «Риск — это фактор, который может привести к негативным последствиям в будущем, обычно выражается через вероятность и влияние».
— «Риск проекта — это риск, относящийся к управлению и контролю проектом или тестированием в проекте. Например: нехватка персонала, жесткие сроки окончания, изменения требований и т.д.».
— «Риск продукта — это вероятность, что система или программное обеспечение может не оправдать некоторых рациональных ожиданий заказчика, пользователя или стейкхолдера».
И после того, как выходишь с экзамена, получив из принтера лист А4 с надписью «pass», — понимаешь, что всё это было не зря.
А вы знаете разницу между error, mistake, bug, defect, fault, failure? Затрудняетесь? Тогда ISTQB ждет вас ;) И да пребудет с вами Сила!
От редакции: также советуем прочитать статью «Как я сдавал ISTQB Advanced Level».