Семь типов тестировщиков |
03.08.2018 11:47 |
Автор: Джеймс Бах (James Bach) Оригинал статьи: http://www.satisfice.com/blog/archives/893 Перевод: Ольга Алифанова Большая часть моей работы посвящена обучению, тренировке и оценке тестировщиков. Как гуманисту, мне хочется применить тут эвристику разнообразия: наши различия могут сделать команду сильнее. Это означает, что я не могу выбрать один-единственный тип тестировщиков и оценивать людей согласно этому шаблону. С другой стороны, я вижу интересные модели навыков и темперамента у тестировщиков, и имеет смысл обсудить эти модели в широком ключе. Да, все снежинки различаются, но также верно, что все снежинки похожи друг на друга. Итак, я выделяю как минимум семь различных типов тестировщиков: административный, технический, аналитический, социальный, эмпатический тестировщик, пользователь и разработчик. Когда я начну углубляться в объяснения, я хочу, чтобы вы поняли следующее: это модель, а не тюрьма. Это кластеры эвристик или – в некоторых случаях – ролей. Ваш стиль работы или ситуация могут подходить для нескольких моделей сразу. Административный тестировщик. Административный тестировщик стремится двигаться вперед. Выполнять задачи, устранять препятствия, делать дело. Высокоуровневые административные тестировщики хотят присутствовать на совещаниях, отслеживать соглашения, получать ресурсы, подводить итоги. Это координаторы, менеджеры. Низкоуровневым административным тестировщикам часто нравится «бумажный» аспект тестирования – помечать галочки в таблицах и т. п. (Я годами работал тест-менеджером и выполнял множество административных задач). Говоря о высоком уровне, я не обязательно имею в виду высокий ранг. Я подразумеваю тех, кто предпочитает иметь дело с общей картиной тестирования, а не вдаваться в детали каждого теста. «Низкий уровень» концентрируется на каждом клике и клавише, каждом моменте тестирования. Осторожно: административные тестировщики могут «симулировать» процесс тестирования – двигать все вперед за счет снижения качества работы. Технический тестировщик. Технический тестировщик создает инструменты, использует их, и в целом мыслит категориями кода. Они отличные защитники тестируемости, потому что говорят на языке разработчиков. Люди, которых называют «инженеры по разработке в тестировании» (SDET) – это технические тестировщики. Google и Microsoft их обожают. (Как программист, я все время стою одной ногой в этой модели). Осторожно: технические тестировщики зачастую стремятся избегать тестирования того, что непросто тестируется при помощи инструментов под рукой. И они часто не стремятся изучать тестирование как таковое, предпочитая изучение инструментария. Аналитический тестировщик. Аналитическому тестировщику нравятся модели и, как правило (но необязательно), математика. Аналитические тестировщики создают диаграммы, матрицы и схемы. Они читают длинные спецификации. Они тяготеют к комбинаторному тестированию. (Если бы мне пришлось выбирать, то я бы сказал, что в первую очередь я аналитический тестировщик). Осторожно: аналитические тестировщики подвержены параличу планирования. Они зачастую мечтают об оптимальных наборах тестов, а не о достаточно хороших. Если что-то не поддается моделированию, они могут это проигнорировать. Социальный тестировщик. Социальному тестировщику нужен ты! Они выявляют всех тех, кто может помочь им, и предпочитают командную работу одиночному труду. Социальные тетировщики понимают, что кто-то мог уже сделать то, что нужно, и что решение необязательно находится в руках одного-единственного человека. Социальный тестировщик знает, что для тестирования не надо уметь программировать – но знать программиста было бы неплохо. Хороший социальный тестировщик культивирует надежный социальный капитал и знает, что предложить окружающим. (Я во многом следую этой модели. Мой брат Джон – классический социальный тестировщик). Осторожно: социальные тестировщики могут лениться, и тогда кажется, что они паразитируют на тяжком труде окружающих. К тому же они могут налаживать социальные связи чересчур активно, за счет работы. Эмпатический тестировщик. Эмпатические тестировщики глубоко погружаются в продукт. Их первичный подход – это попытка влезть в шкуру пользователя. Это не то же самое, что эксперт по пользователям – есть важное различие между тестировщиками, выступающими в роли адвокатов пользователя, и пользователями, которым довелось тестировать. Этот стиль настолько сильно отличается от моего собственного, что до недавнего времени я не признавал и не уважал этот подход. Он часто применяется людьми, у которых нет технических навыков. Они же часто пробуют себя в административной или социальной модели. Осторожно: эмпатические тестировщики зачастую не знают, как описать, что именно и как именно они делают. Пользовательский эксперт. Заметьте, я не сказал «пользователь-тестировщик». Пользовательских экспертов можно назвать знатоками области или узкопрофильными специалистами. Они не рассматривают себя как тестировщиков – скорее как потенциальных пользователей, помогающих тестированию. Опытному тестировщику это приносит большую пользу. Осторожно: пользовательские эксперты, не ассоциирующие себя с тестированием, не стремятся изучать или развивать необходимые тестировщику навыки. Разработчик. Разработчики довольно часто тестируют. Они идеальные кандидаты для юнит-тестов, а еще они встраивают тестируемость в проектируемые ими продукты. Технический тестировщик может выиграть от времени, проведенного в роли разработчика. Когда разработчики переходят в тестирование, они тоже, как правило, становятся техническими тестировщиками. Осторожно: разработчики, не ассоциирующие себя с тестированием, не стремятся изучать или развивать необходимые тестировщику навыки. Когда я примериваюсь к тестировщику во время тренингов, лично мне полезно думать в ключе этих категорий, чтобы наиболее эффективно догадаться о его сильных и слабых сторонах и помочь ему. |