ПРЕАМБУЛА 
Всем известна бородатая шутка из «Журнала 
невоспроизводимых результатов» о том, сколь 
вредны огурцы: «среди людей, родившихся в 1839 г. и 
питавшихся впоследствии огурцами, смертность 
равна 100%», «99,9% всех людей, умерших от рака, при 
жизни ели огурцы» и т.д. и т.п. 
Так вот, данная презентация вообще не об 
этом. Какие к черту шутки?! Умирают люди!
ЭЙНШТЕЙН И АВТОМАТИЗАЦИЯ 
Работая над своей общей 
теорией фреймворков 
автоматизации 
тестирования, Эйнштейн 
якобы сказал: «Две вещи 
бесконечны: Вселенная и 
человеческая глупость; и 
насчет Вселенной я не 
уверен».
СЛЕДСТВИЕ КАПИТАНА ХАОСА 
Мы не знаем, кто в действительности является автором 
этого, безусловно, справедливого, наблюдения. 
Тем не менее, возьмем на себя смелость 
сформулировать так называемое следствие Капитана 
Хаоса: 
ЕСЛИ ВЫ СТРЕМИТЕСЬ К ТОМУ, ЧТОБЫ ВАШИМ 
ФРЕЙМВОРКОМ МОГЛИ ПОЛЬЗОВАТЬСЯ ДАЖЕ 
ДЕБИЛЫ, ИМЕННО ОНИ ИМ И БУДУТ ПОЛЬЗОВАТЬСЯ.
ЗНАЙ ВРАГА В ЛИЦО!
ИТАК, CUCUMBER 
Вся низость и коварство этого инструмента проявляется в том, 
что на бумаге все выглядит охуенно. 
• Бизнес-аналитики, не напрягаясь, описывают желаемые фичи 
на человеческом языке; 
• Счастливые разработчики тут же запускают полученные 
сценарии и, убедившись, что ничего не работает, пишут 
тестовый код; 
• Покончив с этим, усталые и довольные разработчики 
добавляют в продуктовый код парочку констант и 
захардкоданных магических чисел, чтобы тесты стали 
зелеными; 
• Cucumber генерирует аккуратные отчеты во всевозможных 
форматах, взглянув на которые, начальство тут же повышает 
всем зарплаты и уезжает на месяц играть в гольф; 
• После чего вся команда резвится на залитом солнцем лугу, 
играя с котятами, щенками и утятами.
ГДЕ ПОДВОХ? 
Что же происходит в реальности? 
• Бизнес-аналитики чхать хотели на какие-то там 
Cucumber-сценарии. «Мы наняли команду 
автоматизаторов, вот они пускай и пишут тесты»; 
• Матерясь и наступая на все возможные грабли, 
разработчики и автоматизаторы пишут сценарии и 
степы к ним, которые потом все равно никто не читает; 
• По мере того, как в команде сменяются кадры, общая 
архитектура тестового фреймворка асимптотически 
стремится к модели Big ball of mud.
ГДЕ ПОДВОХ?
К ЧЕМУ ВСЕ ЭТО ВЕДЕТ? 
• «Так, напишем с десяток сценариев про нашу фичу. Да это же 
настоящая живая документация! Ништяк!» 
• «Ну вот, автоматические acceptance-тесты у нас есть. Но надо 
бы нахуячить и всяких там еще других. Зачем выбирать какой- 
то другой инструмент, ведь есть же Cucumber? Что плохого, 
если начальство и прочие двоечники смогут читать наши 
интеграционные тесты? Ничего плохого, погнали!» 
• «End-to-end-сценарии? Где-то мы уже слышали это слово 
«сценарий». Cucumber спешит на помощь! Да и опять же, 
начальство сможет почитать. Ну, если захочет, конечно…» 
И вот у вас уже полноразмерная автоматическая сюита на 
Cucumber’е, покрывающая решительно все, что только есть в 
вашем приложении.
ГДЕ ПОДВОХ? 
Вся печаль ситуации заключается в том, что Cucumber в 
принципе не предназначен для тестирования. Он 
вообще непонятно для чего предназначен: для решения 
какой-то полумифической проблемы коммуникации, 
которой в большинстве команд просто нет, либо она 
успешно решается другими, менее хипстерскими 
способами. 
Не верите мне, так послушайте хотя бы дядю Аслака.
ВОНМИ АСЛАКУ 
«Не вздумай тестировать с помощью Cucumber», как бы говорит нам Аслак.
ЛЕММА КАПИТАНА ХАОСА 
Позволим себе скромно сформулировать следующую 
лемму: 
ОГУРЦЫ СЛЕДУЕТ УПОТРЕБЛЯТЬ 
ТОЛЬКО В ПИЩУ. 
ДЛЯ ВСЕГО ОСТАЛЬНОГО ЕСТЬ 
СООТВЕТСТВУЮЩИЕ 
ИНСТРУМЕНТЫ.
ВОПРОСЫ?

The Dangers of Cucumber

  • 2.
    ПРЕАМБУЛА Всем известнабородатая шутка из «Журнала невоспроизводимых результатов» о том, сколь вредны огурцы: «среди людей, родившихся в 1839 г. и питавшихся впоследствии огурцами, смертность равна 100%», «99,9% всех людей, умерших от рака, при жизни ели огурцы» и т.д. и т.п. Так вот, данная презентация вообще не об этом. Какие к черту шутки?! Умирают люди!
  • 3.
    ЭЙНШТЕЙН И АВТОМАТИЗАЦИЯ Работая над своей общей теорией фреймворков автоматизации тестирования, Эйнштейн якобы сказал: «Две вещи бесконечны: Вселенная и человеческая глупость; и насчет Вселенной я не уверен».
  • 4.
    СЛЕДСТВИЕ КАПИТАНА ХАОСА Мы не знаем, кто в действительности является автором этого, безусловно, справедливого, наблюдения. Тем не менее, возьмем на себя смелость сформулировать так называемое следствие Капитана Хаоса: ЕСЛИ ВЫ СТРЕМИТЕСЬ К ТОМУ, ЧТОБЫ ВАШИМ ФРЕЙМВОРКОМ МОГЛИ ПОЛЬЗОВАТЬСЯ ДАЖЕ ДЕБИЛЫ, ИМЕННО ОНИ ИМ И БУДУТ ПОЛЬЗОВАТЬСЯ.
  • 5.
  • 6.
    ИТАК, CUCUMBER Всянизость и коварство этого инструмента проявляется в том, что на бумаге все выглядит охуенно. • Бизнес-аналитики, не напрягаясь, описывают желаемые фичи на человеческом языке; • Счастливые разработчики тут же запускают полученные сценарии и, убедившись, что ничего не работает, пишут тестовый код; • Покончив с этим, усталые и довольные разработчики добавляют в продуктовый код парочку констант и захардкоданных магических чисел, чтобы тесты стали зелеными; • Cucumber генерирует аккуратные отчеты во всевозможных форматах, взглянув на которые, начальство тут же повышает всем зарплаты и уезжает на месяц играть в гольф; • После чего вся команда резвится на залитом солнцем лугу, играя с котятами, щенками и утятами.
  • 7.
    ГДЕ ПОДВОХ? Чтоже происходит в реальности? • Бизнес-аналитики чхать хотели на какие-то там Cucumber-сценарии. «Мы наняли команду автоматизаторов, вот они пускай и пишут тесты»; • Матерясь и наступая на все возможные грабли, разработчики и автоматизаторы пишут сценарии и степы к ним, которые потом все равно никто не читает; • По мере того, как в команде сменяются кадры, общая архитектура тестового фреймворка асимптотически стремится к модели Big ball of mud.
  • 8.
  • 9.
    К ЧЕМУ ВСЕЭТО ВЕДЕТ? • «Так, напишем с десяток сценариев про нашу фичу. Да это же настоящая живая документация! Ништяк!» • «Ну вот, автоматические acceptance-тесты у нас есть. Но надо бы нахуячить и всяких там еще других. Зачем выбирать какой- то другой инструмент, ведь есть же Cucumber? Что плохого, если начальство и прочие двоечники смогут читать наши интеграционные тесты? Ничего плохого, погнали!» • «End-to-end-сценарии? Где-то мы уже слышали это слово «сценарий». Cucumber спешит на помощь! Да и опять же, начальство сможет почитать. Ну, если захочет, конечно…» И вот у вас уже полноразмерная автоматическая сюита на Cucumber’е, покрывающая решительно все, что только есть в вашем приложении.
  • 10.
    ГДЕ ПОДВОХ? Всяпечаль ситуации заключается в том, что Cucumber в принципе не предназначен для тестирования. Он вообще непонятно для чего предназначен: для решения какой-то полумифической проблемы коммуникации, которой в большинстве команд просто нет, либо она успешно решается другими, менее хипстерскими способами. Не верите мне, так послушайте хотя бы дядю Аслака.
  • 11.
    ВОНМИ АСЛАКУ «Невздумай тестировать с помощью Cucumber», как бы говорит нам Аслак.
  • 12.
    ЛЕММА КАПИТАНА ХАОСА Позволим себе скромно сформулировать следующую лемму: ОГУРЦЫ СЛЕДУЕТ УПОТРЕБЛЯТЬ ТОЛЬКО В ПИЩУ. ДЛЯ ВСЕГО ОСТАЛЬНОГО ЕСТЬ СООТВЕТСТВУЮЩИЕ ИНСТРУМЕНТЫ.
  • 13.