Что необходимо для внедрения автоматизации тестирования ПО |
26.02.2009 16:51 |
Автор: Панкратов Вячеслав Для внедрения автоматизации тестирования ПО необходимы всего три вещи:
Если чего-то из этого нет – лучше не начинать, на выходе всё равно получится «дохлая лошадь». Почему? Небольшой дисклеймер Про тулы я буду говорить совсем мало, потому что это на самом деле не главное: тул или подходит технологически или нет. Если подходит два тула и оба вендора стоят под дверью в костюмах и с толпой «технологических консультантов» - выбирайте более зрелый тул, как если бы выбирали новую машину. Смотрите на частоту выхода новых версий, на количество плагинов и аддонов, торгуйтесь и смотрите, кто больше сбросит (скидка на лицензии до 40% это не сказка), возьмите триал и задайте 5 одинаковых вопросов в саппорт обоих вендоров, попросите дать вам на две недели технического специалиста, который в вашем присутствии напишет и отладит 5-10 скриптов. Ничего сложного, вы же как-то покупаете новый мобильный телефон или новую машину? Да, ещё в этой статье я не буду доказывать очевидных для меня вещей: можете верить, можете - нет Зачем нужен процесс тестирования, если мы как раз внедряем инструменты?Нельзя автоматизировать то, чего нет. Процесс тестирования должен существовать, работать, поддаваться изменениям и анализу, а для этого процесс должен быть зафиксирован письменно и любые процессные изменения должны фиксировать тоже письменно. На процесс, который строится, ставить автоматизацию сверху нельзя – развалим. Расписывать не буду – получится глава книги. Выделенные под автоматизацию людиАвтоматизация тестирования, как и любой другой процесс автоматизации деятельности не внедряется и не применяется по «остаточному принципу». Нужно выделенное подразделение для функционального тестирования и выделенные люди для нагрузочного тестирования: у них разные задачи, подходы и часто и инструменты. Тест лабы у них тоже разные, угу. Когда речь идёт об автоматизации бухгалтерского учёта, почему-то никому в голову не приходит картинка вести часть учёта на бумаге, а часть в системе: тут или взлетели или не взлетели, не сойдётся ведь. С тестированием чуть проще: не всё нужно автоматизировать и можно совмещать ручное и автотестирование – поэтому тут надо быть более категоричным, иначе «не взлетит». Возможно, где-то есть умельцы, автоматизирующие левой рукой и выписывающие налоговые накладные правой, но это исключения: я не играю в лотереи и вам не советую. Всё, других аналогий не будет – есть желание проверить и доверить автоматизацию «всем по чуть-чуть» - проверяйте, но пока ни у кого из тех кого я знаю-видел не получилось. Драйвер процессаНачнём с близкого и понятного… с фанатов Откуда таких людей брать? Растить внутри или покупать снаружи. Желательно чтобы человек был физически большой (в идеале толстый!) и немного страшный – это только пойдёт на пользу делу: попробуйте спихнуть со стола человека весом более 100 кг, также непросто с ним неаргументированно поспорить. Зачем и какие права нужны Менеджеру подразделения автоматизации На человеческом языке это звучит так: Менеджер подразделения должен иметь права набирать и увольнять людей, а также давать премии. Если этого нет – он кто угодно, но не менеджер подразделения. «Все на пожар!» Отсюда ещё одно требование к человеку на роль менеджера подразделения автоматизации (скорее уже личного характера, хотя неплохо бы это и зафиксировать в описании позиции и каком-то формальном «статусе подразделения»): умение послать халявщиков из других проектов у которых «горит». Если проект горит – это проблема менеджера проекта, у которого он горит. В нашем бизнесе никого за срыв проекта не расстреливают – так что непротянуть руку помощи не приравнивается к «неоказанию первой неотложной помощи при аварии», а если погорельца «штрафанут» то это обычно исключительно прочищает мозги и заставляет шевелиться. Политическая воля и мотивация руководстваРуководство должно являться инициатором и политической волей, которая давить на процесс сверху. Банальный пример – сотрудников занятых в автоматизации никто не должен иметь права взять никто другой. Тут у меня есть одно серьёзное допущение и шаткий вывод, в который я верю. Допущение: руководство - люди умные. Лошади дохлые, обыкновенныеРазновидности «лошадей» могут быть разными – от формального «ТУЛ установлен на всех компах тестеров» (и что?) до «по результатам пилотного применения на 20 проектах выбран 1, на котором автоматизация достигает 10% тестового покрытия» (то есть покупка лутов и усилия по внедрению не окупяться никогда) – роднит этих лошадей только одно: класс «дохлых». Собственно всё Обсудить на форумеTags: |