Бесконечное путешествие: обучение, тестирование, изучение |
29.12.2017 00:00 |
Автор: Адам Ховард (Adam Howard) Оригинал статьи: https://www.testingcircus.com/documents/TestingTrapeze-2014-February.pdf#page=16 Перевод: Ольга Алифанова Вот экзамен для вас как для тестировщика: научите кого-нибудь тестировать за три дня. Эта задача встала передо мной, Катриной Клоки, Аароном Ходдером, Джорджией Чанн в январе 2014 года. Нас попросили трое суток поучаствовать в выпускной программе Assurity, которая дала миру немало тестировщиков. Ответственность была высока, и все мы волновались. В конце концов, это было первое, что десяток выпускников узнают о тестировании. Некоторые из них изучали программирование, но большинство было новичками не только в тестировании, но и в IT в целом. К счастью, трое суток пролетели как стрела, выпускникам все понравилось, мы много веселились, но самое главное – птенцы нашего гнезда действительно узнали что-то о тестировании. Как мы этого добились? Мир удивительных открытийПеред нами стояла задача впихнуть десятилетнюю мудрость и размышления в свеженьких радостных выпускников. Конечно, мы могли просто забросать их информацией – трех дней нам хватило бы. Наполни их идеями и надейся, что они хоть что-то запомнили. В конце концов, кто мы такие, чтобы знать, с какими проблемами они столкнутся, когда станут тестировщиками? Когда они начнут развиваться и расти как тестировщики, их окружение поддержит их, все они пойдут разными дорогами, получат различный опыт, столкнутся с различными ситуациями и проблемами. В этой связи идея вооружения нашей группы максимально возможными знаниями, чтобы наилучшим образом подготовить их к различным проблемам, с которыми они неминуемо столкнутся, была очень привлекательной. Однако это означало, что выпускники были бы перегружены свирепым количеством информации. Такой тип обучения вместо того, чтобы укреплять веру в себя, упирает на то огромное количество информации, которое тебе еще неведомо. Курс был бы непрерывным, но скучным, информативным, но невнятным, обучающим и дающим знания, но не дающим понимания вопроса. Мы выбрали иной подход. Вместо того, чтобы рассказывать им, что такое тестирование и почему мы мы им занимаемся, чтобы говорить о тест-анализе и тест-дизайне, оракулах, эвристиках, оформлении багов, стратегиях тестирования, тест-кейсах, идеях кейсов и исследовательском тестировании, мы не сказали им ничего. Ну, как ничего – голодный минимум, который смог прокатить. Для начала мы спросили их, что такое тестирование с их точки зрения. Они поделились своим пониманием понятия, а затем мы дали им задание на тестирование. Мы даже не пытались начинать их учить – они узнавали все сами, и это создало прецедент для последующих дней обучения. Прежде чем мы открыли рты и начали делиться с ними информацией – потому что, безусловно, хоть что-то о тестировании мы должны были им рассказать! – мы просили их подумать о текущей задаче и попробовать выполнить ее. Тестирование, в конце концов – это мыслительный практический процесс. Мы хотели, чтобы они размышляли и что-то делали сами. Мы не говорили им ничего – мы спрашивали их. Мы спрашивали их, что они думают о тестировании. Мы просили их потестировать реальное ПО. Таким образом мы справились с задачей. Мы не пытались чему-то научить этих людей – вместо этого мы решили, что наилучший способ использовать такой короткий срок – это не бессмысленное впихивание знаний в мозг, а вовлечение их в процесс и вдохновление их на развитие в направлении тестирования после окончания тренинга. Они не обучались тестированию с нашей помощью – они открывали его для себя. Рог изобилияБезусловно, успех такого мероприятия зависит от того, что вы найдете на берегу вашего свежеоткрытого континента. К счастью, действия наших выпускников почти сразу начали приносить ощутимые результаты. Из этого последовало два вывода. Во-первых, для того, чтобы упростить обучение тестированию, мы дали студентам потестировать. Это было верно не только дословно – в смысле практических задач по тестированию – но и на более фундаментальном уровне. Тестирование – это извлечение и передача информации, и именно этим и занимались наши студенты. Другими словами, чтобы научить тестированию, мы тестировали, и это было нашей основной целью во время работы с выпускниками. Многие курсы по тестированию пытаются выхолостить практичную, активную дисциплин до пассивных теоретических знаний. Мы не хотели просто передать людям эти знания – мы хотели передать им опыт. В конце концов, выпускники никогда ранее не тестировали. Для них это был новый пугающий мир, и они знали, что вскоре их попросят потестировать. Когда этот момент настанет, неплохо уже иметь какой-никакой опыт! Когда мы просили их приступить к тестироваию, они не подкачали. После всего лишь двух дней мы дали им задачу разработать стратегию для сложной и очень напряжной задачи по тестированию. Полет мысли, креативности, глубина ответов студентов нас по-настоящему потрясли. Они действительно открыли для себя тестирование. Во-вторых, в пользу выпускников сыграло то, что открытие – это по определению поиск чего-то нового. Для выпускников этой новостью было тестирование, и мы хотели, чтобы они открыли его для себя. Мы хотели увидеть радость от встречи с чем-то неизведанным и гордость от его постижения. Однако мы также хотели дать им понять, что они тут не одни открывают для себя тестирование. Мы пытались сообщить им, что тестировщики, которые работают много лет, постоянно открывают для себя новые идеи, которые критически важны для развития нашего ремесла. Чтобы добиться понимания в этом вопросе, мы не только опрашивали студентов. Мы просили их задавать вопросы нам, друг другу, программам. Мы давали им определения – многие из которых считаются классикой жанра – и приглашали их оспаривать эти определения. Они читали работу уважаемых авторов, в то время как мы сознавались, что его аргументы не убедили нас окончательно. Мы были счастливы, когда они подхватили суть. Их восхитила мысль, что они попали в мир, где сделать что-то можно массой разных способов, в мир, который они могут изменить. Это необычное чувство для выпускника – плавал, знаю. Выпускник вначале планирует запомнить целую кучуразнообразных правил. По сравнению с экспертом ты ничтожество. Ты ожидаешь, что пройдешь долгий и тернистый путь подмастерья, пока наконец начнешь приносить хоть какую-то пользу в своей профессии. Я не верю, что тестирование относится к подобным наукам, и я хотел донести это до выпускников, позволяя им открывать для себя тестирование самостоятельно, с уважением и вниманием относясь к их идеям и мыслям, и оспаривая более каноничные подходы к тестированию. Надеюсь, мы справились с этой задачей. Око тайфунаВ течение курса мы следили за тем, чтобы не заразить студентов специально собственным образом мыслей. Согласно общему подходу к обучению, мы стремились добиться, чтобы они самостоятельно размышляли о том, что и как тестировать. Конечно, наши предубеждения против ряда подходов к тестированию иногда давали о себе знать. Однако мы стремились быть объективными, давая информацию, и специально включили в курс секцию, сравнивающую предварительно подготовленный, основанный на тест-кейсах и нацеленный на верификацию подход с более исследовательской, свободной разновидностью тестирования. Включать оба подхода в обучение, честно говоря, было очень трудно, так как лично я предпочитаю второй вариант. Но этот опыт оказался крайне интересным как для меня, так и для моих коллег. Мы наблюдали, как десяток не связанных предубеждениями в области тестирования, умных и критичных людей пробовали два различных подхода. Первое, что я отметил, случилось еще до наших подсказок о том, как тестировать – студенты начали исследовать и разбираться в деталях. Многие данные ими определения тестирования кружили вокруг соответствия бизнес-требованиям, но они тут же начали противоречить сами себе, как только встала задача реально что-то протестировать. Мы предоставили им требования, а они вышли за их рамки. Мы спрашивали, работает ли что-либо, и они говорили нам, в каких случаях оно не работает. Мы наблюдали, как они открывают для себя новую информацию и используют ее для того, чтобы изменить свои следующие действия и сообщить об этом коллегам. Никто из них (до того, как мы заговорили о тест-кейсах) не стремился документировать процедуры, которым нужно следовать до того, как начинать тестировать. От них исходила особая энергия, когда они тестировали этим ничем не ограничивающим их методом. Мы не говорили им ничего о том, как тестирование может проводиться, поэтому они подошли к нему, используя свое естественное оружие – любопытство, изобретательность, инстинкты. Комната гудела от дискуссий, радостных выкриков, и периодической эйфории от удачной находки. Затем, утром второго дня, мы рассказали им о тест-кейсах. Выполняя различные задания, они выполняли кейсы, а затем писали и выполняли как свои, так и чужие кейсы. Внезапно мы обнаружили перед собой совершенно других людей. Энергия и хаос предыдущего дня сменились нервной, подозрительной атмосферой. Учебная комната стала экзаменационной. Изменилась даже их осанка и концентрация – теперь они сгорбились, притихли, сфокусировались на своих распечатанных или написанных от руки кейсах, позабыли про мышки и мониторы. Против тест-кейсов как наилучшей практики тестирования существует множество теоретических аргументов – кейсы чересчур конкретны, умаляют тест как таковой, вызывают слепые пятна внимательности, предполагают опасные и ведущие в никуда уровни эквивалентности тестовых данных, и слишком просты для подсчета, и так далее, и тому подобное – но то, что наблюдали мы, было в основном поведенческими аргументами. Во второй половине второго дня мы официально познакомили студентов с идеей исследовательского тестирования и вновь дали им практические задания. Их энергия и энтузиазм вернулись незамедлительно. Мы вздохнули свободно – мы хотели, чтобы нашим студентам нравилось то, что они делают. Мы хотели, чтобы они, обучаясь на собственном опыте, сталкивались с вызовами их способностям и трудностями, но мы стремились к тому, чтобы они наслаждались этим. Мы хотели, чтобы они были полностью погружены в задачу. Когда они пользовались кейсами, ничего подобного не происходило. Казалось, что мы озвучили им не задание, а приговор. Попутный ветерИменно это влияние подхода, основанного на кейсах, заставило лично меня через пару месяцев после начала карьеры обнаружить, что есть и другой способ тестировать. Мне было скучно тупо писать тесты на соответствие требованиям, и я задавался вопросом, неужели в этом и заключается профессия тестировщика. К счастью, этим она не ограничивается. Раздражение, вызванное кейсами, привело меня к открытию школы контекстного тестирования. Она гласит, что миссия тестирования – это не подтверждение требований, а выявление угроз ценности проекта посредством наиболее приемлемых методов. Все это подкреплялось теоретической аргументацией против предварительно подготовленного подхода, основанного на кейсах и описанного выше. Это открытие было очень важным для меня – оно изменило не только мой подход к тестированию, но повлияло и на других. В результате я внедрил новый подход в проекте, над которым я работал, и я познакомил коллег с этой методикой, оспаривая достоинства нынешнего подхода. Стоило мне узнать об альтернативе для тест-кейсов, как я сосредоточился на теоретической стороне споров между «подтверждением» и «исследованием». Мне повезло – я смог изменить свое окружение и прогнать скуку и фрустрацию. Мой опыт со студентами был приятным напоминанием о другом важном аспекте этих споров. Любой подход к тестированию будет наиболее эффективным тогда, когда люди, использующие его, вовлечены в процесс. Это справедливо практически для чего угодно – если нам нравится то, что мы делаем, если мы вкладываемся в это эмоционально или сознательно, мы более внимательны, сконцентрированы, и лучше стараемся. Когда мы делаем что-то только потому, что должны, мотивация падает. В тестировании можно довольно легко «отключиться» от процесса. Джеймс Бах описывает тестировщиков как «фары» тест-проекта, а Майкл Болтон называет их глазами и ушами. Мы – это те органы чувств, благодаря которым вскрывается информация о проекте. Но если мы не вовлечены в то, что мы делаем, мы похожи на камеру с грязным объективом – мы менее эффективны и даем более расплывчатую, неполную картину происходящего. Работая с выпускниками, мы своими глазами увидели корреляцию снижения вовлеченности при применении тест-кейсов. Меж тем люди, с которыми мы работали, были молоды, свежи и полны энтузиазма. Их поведение, язык тела, но особенно обратная связь, данная ими по результатам упражнений говорили о скуке и фрустрации при использовании кейсов. Исследовательские сессии, напротив, описывались как интересные и увлекательные. Таким образом, важность вовлеченности в тестирование работает сразу на два фронта. Мы не только предоставляем наилучший из возможных сервис нашим клиентам – мы следуем по пути, который значим почти для всего, что мы вообще делаем в жизни, мы ищем счастье. Рассматривая тестирование, как исследовательскую, любознательную деятельность, а не верификацию и подтверждение, вы станете лучше как тестировщик – и, возможно, более довольным человеком. Мы уже приехали?Это путешествие, безусловно, будет продолжаться. Впереди у выпускников множество приключений, и они куда больше узнают о тестировании. Скорее всего, они обнаружат, что то, чему учили их мы, спорно или изменилось. Но и для меня это обучение было только началом. Мне не только нужно узнать о тестировании еще больше – мне надо научиться преподавать тестирование, в чем лично я очень заинтересован – ведь это поможет изменить мир и нынешний подход к тестированию. Конечно, множество идей этой статьи пришли мне в голову пост-фактум. Даже цели и техники, с которыми мы приступали к обучению, были абстрактными или невнятными позициями и инстинктами до момента, пока я не увидел, как оно работает на практике. Следовательно, если что и стоит вынести из нашего приключения в мире тестирования – так это то, что путь исследователя бесконечен – неважно, новичок вы, выпускник курсов тестирования или убеленный сединами эксперт. Как только вы утратите инстинкт исследования и стремления к новым открытиям, вы замрете – а мир продолжит двигаться вперед. |