SlideShare une entreprise Scribd logo
1  sur  20
УЧЕНИЕ ЛАО-ЦЗЫ 
Основоположник Дао автоматизации, Лао-цзы, учил: 
• Если можешь не автоматизировать – не 
автоматизируй. 
• Хороший автотест – тот, который не нужно писать. 
• Падает один тест – напрягается вся команда. Падает 
сто тестов – напрягается один автоматизатор. 
• Одна фича покрыта пятью автотестами. Другая 
фича покрыта пятьюдесятью. Какая протестирована 
лучше? Никакая, но у второй солиднее тест-репорт. 
• Есть красный автотест и есть зеленый автотест. Но 
лишь переход от одного к другому приносит и 
пользу, и достижение.
УЧЕНИЕ ВОРОБЬЯ ЛОХМАТИКА 
А вот, что говорит по 
этому поводу другой 
известный апологет Дао 
автоматизации, воробей 
Лохматик: 
• Чирик-чирик!
СТУПЕНИ ДАО АВТОМАТИЗАТОРА 
Все мы были когда-то начинающими 
автоматизаторами. 
(Кто не был – вон из 
аудитории! У нас тут своя 
тусовка!) 
Следовательно, каждый из нас находится на одной 
из ступеней совершенствования себя как 
автоматизатора.
СТУПЕНИ ДАО АВТОМАТИЗАТОРА 
1. «Я ничего не знаю об автоматизации. Это типа 
нажимаешь кнопку и уходишь заниматься своими 
делами, да?» 
2. «Ух ты, скажите, и в магазине можно так же стенку 
приподнять? Сейчас заавтоматим что-нибудь 
эдакое!» 
3. «Я охуенно крут. В автоматизации я как рыба в 
воде. Возможно автоматизировать все!» 
4. «Автоматизация - дорогое удовольствие. Но в 
нашем распоряжении масса тулов и подходов. 
Побольше тестов, хороших и разных!» 
5. «Это проще протестировать руками. И это тоже. А 
это проверять вообще смысла нет».
ПЕРВАЯ СТУПЕНЬ ДАО 
Люди на этой ступени, как правило, не 
шибко соображают, что к чему. 
Подавляющее большинство остается 
здесь на всю жизнь. 
• «Я вообще-то не технический человек. 
Программирование – это не мое». 
• «Не доверяю я этим автоматизаторам 
с их скриптами. Мне проще пройти 
сценарий руками, чем разбираться в 
этих глупых тест-репортах». 
• «Ой, а на чем это лучше заавтоматить, 
на WebDriver или на Java?»
ВТОРАЯ СТУПЕНЬ ДАО 
На этой ступени часто 
встречаются бывшие ручные 
тестировщики, а также 
девелоперы, которых по тем 
или иным причинам 
подписали заниматься 
автоматизацией.
ВТОРАЯ СТУПЕНЬ ДАО 
• «Ого, тут можно записывать свои действия, а потом их 
воспроизводить! Надо срочно добавить новый скилл в 
CV!» 
• «Этот xpath на три строчки не может быть неверным, я его 
записал через Selenium IDE». 
• «Ура, я выучил новый паттерн Singleton! Куда бы его 
теперь впихнуть?» 
• «Да, я захардкодал эти урлы в тесте, но это временное 
решение. Да, этому коммиту уже скоро год, я просто был 
занят другими вещами». 
• «Я девелопер со стажем! Я знаю NServiceBus и BizTalk как 
свои пять пальцев, что для меня эта ваша автоматизация! 
Ну и что с того, что здесь Ruby, а не C#? throw – оно и в 
Африке throw, не так ли?»
ЛИРИЧЕСКОЕ ОТСТУПЛЕНИЕ 
Честно говоря, судя по 
описанию, на ступенях 1 и 2 
находятся какие-то бестолковые 
личности. 
Не знаю как вы, лично я начал 
сразу с третьей.
ТРЕТЬЯ СТУПЕНЬ ДАО 
Ах, эти третьеступенчатые деньки. 
• «Язык программирования? Инструмент автоматизации? 
Непринципиально, освоим!» 
• «Автоматизировать UI, Web-сервисы, API? Да без 
проблем!» 
• «DOM, Flex, нативные интерфейсы, Swing, Siebel, что-то 
еще? Какая к черту разница? прикрутим JavaScript, AutoIt, 
распознавание изображений!» 
• «Я знаю кучу паттернов и намерен применить их все!» 
• «Мои тесты будут работать на всех комбинациях 
браузеров, ОС и аппликейшн-серверов без каких-либо 
дополнительных телодвижений!»
ТРЕТЬЯ СТУПЕНЬ ДАО 
• «Мы создадим фреймворк, который будет 
поддерживать data-driven, keyword-driven и behavior-driven 
подходы, причем одновременно!» 
• «Мы принесем людям свет! Мы заколбасим 
универсальный проектонезависимый фреймворк, 
который потом будем матчить матчерами, 
декорировать декораторами и плагинить плагинами! И 
все это будет доступно каждому желающему!» 
• «Мы обеспечим любую требуемую степень покрытия, 
которая во всяком случае будет не ниже 100%! Мы 
заавтоматим все: от нажатия на среднюю кнопку мыши 
до эмуляции отключения питания в серверной!»
ТРЕТЬЯ СТУПЕНЬ ДАО 
Примерно так выглядит автоматизатор на третьей 
ступени Дао. Куча зерна символизирует написанные 
им автотесты.
ЧЕТВЕРТАЯ СТУПЕНЬ ДАО 
А вот так выглядит он же, перейдя на четвертую 
ступень.
ЧЕТВЕРТАЯ СТУПЕНЬ ДАО 
Это сложный период в становлении автоматизатора. 
Многие ломаются, кто-то уходит в запой. 
• «Что-то больно до хера у нас получилось тестов, да 
и выполняются они несколько дней». 
• «Господи, как разгрести все эти репорты?! А они все 
прибывают и прибывают!» 
• «Все заавтоматить к концу спринта не успею, но это 
никого не парит. Фича в любом случае уйдет в 
релиз».
ЧЕТВЕРТАЯ СТУПЕНЬ ДАО 
• «Разобьем-ка мы всю кучу тестов на кучки 
поменьше и будем гонять не все сразу, а 
поочередно. Количество автотестов – наша 
основная метрика, и избавляться от них мы не 
можем!» 
• «Распараллелим нашу регрессию на 10 потоков, так 
что вместо 72 часов она будет работать всего 13. 
Это, между прочим, на 80% быстрее, чем прежде!» 
• «Сейчас забацаем CI-сервер с фермой удаленных 
агентов и кастомной веб-мордой, и любой 
желающий сможет одним нажатием кнопки 
запустить билд автоматизации, а потом получить 
красивый репорт с графиками и пай-чартами».
ПЯТАЯ СТУПЕНЬ ДАО 
Это апогей становления личности как автоматизатора. Такие 
люди – на вес золота. Цените их! 
• «Да, это можно автоматизировать, но тест получится 
нестабильный и выполняться будет минут десять. Стоит ли 
игра свеч?» 
• «Что проверяет этот тест? На это вообще были хоть какие- 
нибудь требования, или вы просто наворачиваете тест-кейсы 
ради количества?» 
• «UI-тесты будут долгими. Backend-тесты будут непонятными 
для не-технарей. Выбирайте». 
• «Слой абстракции этот не нужен тебе. Зачем паттерн здесь 
всобачил ты?» 
• «На QTP пишите сами».
ПЯТАЯ СТУПЕНЬ ДАО 
Как же выглядит этот автоматизатор, достигший пятой стадии 
просветления? А вот как:
ЧТО ДАЛЬШЕ? 
Существует еще и шестая 
ступень: «Ищу работу». 
Но ее мы здесь рассматривать 
не будем.
ЛАО-ЦЗЫ УЧИТ 
«Девелопер сражается с косяками требований, 
технологии и легаси-кода. Автоматизатор 
сражается с косяками требований, технологии, 
легаси-кода, тест-кейсов, серверного 
окружения, клиентского окружения и 
инструмента автоматизации. Пожалейте 
автоматизатора. Ему и так в жизни не повезло».
ВОПРОСЫ?

Contenu connexe

Tendances

Алексей Лупан - Да перестаньте уже автоматизировать
Алексей Лупан - Да перестаньте уже автоматизироватьАлексей Лупан - Да перестаньте уже автоматизировать
Алексей Лупан - Да перестаньте уже автоматизировать
Alexei Lupan
 
QA Club Kiev #2 Vision of TL and PM
QA Club Kiev #2 Vision of TL and PMQA Club Kiev #2 Vision of TL and PM
QA Club Kiev #2 Vision of TL and PM
QA Club Kiev
 
Programmers' Mistakes for Dummies
Programmers' Mistakes for DummiesProgrammers' Mistakes for Dummies
Programmers' Mistakes for Dummies
COTOHA
 
Heavy metal testing Part 3
Heavy metal testing Part 3Heavy metal testing Part 3
Heavy metal testing Part 3
Roman Ivliev
 
Так говорят программисты
Так говорят программистыТак говорят программисты
Так говорят программисты
prigarov
 

Tendances (20)

The Dangers of Cucumber
The Dangers of CucumberThe Dangers of Cucumber
The Dangers of Cucumber
 
Как же научиться программировать, в конце концов?
Как же научиться программировать, в конце концов?Как же научиться программировать, в конце концов?
Как же научиться программировать, в конце концов?
 
Алексей Лупан - Да перестаньте уже автоматизировать
Алексей Лупан - Да перестаньте уже автоматизироватьАлексей Лупан - Да перестаньте уже автоматизировать
Алексей Лупан - Да перестаньте уже автоматизировать
 
Фреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriverФреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriver
 
Итак, вы тимлид
Итак, вы тимлидИтак, вы тимлид
Итак, вы тимлид
 
Usability: практические приёмы
Usability: практические приёмыUsability: практические приёмы
Usability: практические приёмы
 
Как мы админа увольняли, или тонкости организации корпоративной безопасности ...
Как мы админа увольняли, или тонкости организации корпоративной безопасности ...Как мы админа увольняли, или тонкости организации корпоративной безопасности ...
Как мы админа увольняли, или тонкости организации корпоративной безопасности ...
 
Проблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestCompleteПроблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestComplete
 
“Обезьянье тестирование” в мобильных проектах
“Обезьянье тестирование” в мобильных проектах“Обезьянье тестирование” в мобильных проектах
“Обезьянье тестирование” в мобильных проектах
 
Совершенный тестовый фреймворк
Совершенный тестовый фреймворкСовершенный тестовый фреймворк
Совершенный тестовый фреймворк
 
QA Club Kiev #2 Vision of TL and PM
QA Club Kiev #2 Vision of TL and PMQA Club Kiev #2 Vision of TL and PM
QA Club Kiev #2 Vision of TL and PM
 
The most common mistakes in the first game session and how to avoid them
The most common mistakes in the first game session and how to avoid themThe most common mistakes in the first game session and how to avoid them
The most common mistakes in the first game session and how to avoid them
 
A1QA Summer 2014 - Alien bugs
A1QA Summer 2014 - Alien bugsA1QA Summer 2014 - Alien bugs
A1QA Summer 2014 - Alien bugs
 
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхКурс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
 
Алексей Лянгузов
Алексей ЛянгузовАлексей Лянгузов
Алексей Лянгузов
 
Elevator Pitch
Elevator PitchElevator Pitch
Elevator Pitch
 
Гадкий я. Или как не попасть в "ловушки" на пути к успеху
Гадкий я. Или как не попасть в "ловушки" на пути к успехуГадкий я. Или как не попасть в "ловушки" на пути к успеху
Гадкий я. Или как не попасть в "ловушки" на пути к успеху
 
Programmers' Mistakes for Dummies
Programmers' Mistakes for DummiesProgrammers' Mistakes for Dummies
Programmers' Mistakes for Dummies
 
Heavy metal testing Part 3
Heavy metal testing Part 3Heavy metal testing Part 3
Heavy metal testing Part 3
 
Так говорят программисты
Так говорят программистыТак говорят программисты
Так говорят программисты
 

En vedette

Part II. How to automate properly
Part II. How to automate properlyPart II. How to automate properly
Part II. How to automate properly
Þorgeir Ingvarsson
 
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
QAFest
 

En vedette (6)

Part II. How to automate properly
Part II. How to automate properlyPart II. How to automate properly
Part II. How to automate properly
 
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?
 
Метод No-Tests-Cases: избавьтесь от тест-кейсов в тестировании
Метод No-Tests-Cases: избавьтесь от тест-кейсов в тестированииМетод No-Tests-Cases: избавьтесь от тест-кейсов в тестировании
Метод No-Tests-Cases: избавьтесь от тест-кейсов в тестировании
 
Моделирование угроз для приложений
Моделирование угроз для приложенийМоделирование угроз для приложений
Моделирование угроз для приложений
 
Безопасность мобильных приложений. Что тестировать?
Безопасность мобильных приложений. Что тестировать?Безопасность мобильных приложений. Что тестировать?
Безопасность мобильных приложений. Что тестировать?
 
Priority Inversion on Mars
Priority Inversion on MarsPriority Inversion on Mars
Priority Inversion on Mars
 

Similaire à Tao and Test Automation

как инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесукак инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесу
Andrey Rebrov
 
История проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей ШетухинИстория проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей Шетухин
Ontico
 
Юнит тестирование в Web. Как получать пользу и удовольствие.
Юнит тестирование в Web. Как получать пользу и удовольствие.Юнит тестирование в Web. Как получать пользу и удовольствие.
Юнит тестирование в Web. Как получать пользу и удовольствие.
Sergey Ryabenko
 
Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)
Ontico
 

Similaire à Tao and Test Automation (20)

Joker2014
Joker2014Joker2014
Joker2014
 
как инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесукак инженерные практики помогают экономить бизнесу
как инженерные практики помогают экономить бизнесу
 
SECON'2016. Васильков Василий, Серверное программирование сегодня
SECON'2016. Васильков Василий, Серверное программирование сегодняSECON'2016. Васильков Василий, Серверное программирование сегодня
SECON'2016. Васильков Василий, Серверное программирование сегодня
 
Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy Samilyak
 
SoapUI one key to all doors
SoapUI one key to all doorsSoapUI one key to all doors
SoapUI one key to all doors
 
Экономически эффективный процесс тестирования (Codefest 2015)
Экономически эффективный процесс тестирования (Codefest 2015)Экономически эффективный процесс тестирования (Codefest 2015)
Экономически эффективный процесс тестирования (Codefest 2015)
 
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем суть
 
Юрий Цыганенко, QA как услуга
Юрий Цыганенко, QA как услугаЮрий Цыганенко, QA как услуга
Юрий Цыганенко, QA как услуга
 
Экономически эффективный процесс тестирования
Экономически эффективный процесс тестированияЭкономически эффективный процесс тестирования
Экономически эффективный процесс тестирования
 
История проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей ШетухинИстория проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей Шетухин
 
ребров андрей - Автоматизация QA это модно
ребров андрей - Автоматизация QA это модноребров андрей - Автоматизация QA это модно
ребров андрей - Автоматизация QA это модно
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»
 
Установка: скрипты VS гайдов: что проще и что лучше?
Установка: скрипты VS гайдов: что проще и что лучше?Установка: скрипты VS гайдов: что проще и что лучше?
Установка: скрипты VS гайдов: что проще и что лучше?
 
Володимир Дем’яненко, «How to become a Test Automation Engineer. My way»
Володимир Дем’яненко, «How to become a Test Automation Engineer. My way»Володимир Дем’яненко, «How to become a Test Automation Engineer. My way»
Володимир Дем’яненко, «How to become a Test Automation Engineer. My way»
 
Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)
Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)
Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)
 
Юнит тестирование в Web. Как получать пользу и удовольствие.
Юнит тестирование в Web. Как получать пользу и удовольствие.Юнит тестирование в Web. Как получать пользу и удовольствие.
Юнит тестирование в Web. Как получать пользу и удовольствие.
 
Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)
 
Всему своё время Highload Junior 2016
Всему своё время   Highload Junior  2016Всему своё время   Highload Junior  2016
Всему своё время Highload Junior 2016
 
16 HappyDev-lite'14 Серик Бейсенов. Введение в тестирование ПО
16 HappyDev-lite'14 Серик Бейсенов. Введение в тестирование ПО16 HappyDev-lite'14 Серик Бейсенов. Введение в тестирование ПО
16 HappyDev-lite'14 Серик Бейсенов. Введение в тестирование ПО
 
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLabМастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
 

Dernier

ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
Ирония безопасности
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
Хроники кибер-безопасника
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Ирония безопасности
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
Хроники кибер-безопасника
 
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
Хроники кибер-безопасника
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
Хроники кибер-безопасника
 

Dernier (9)

ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
 
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdfMalware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
 
MS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdfMS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdf
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
 
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
 
Ransomware_Q3 2023. The report [RU].pdf
Ransomware_Q3 2023.  The report [RU].pdfRansomware_Q3 2023.  The report [RU].pdf
Ransomware_Q3 2023. The report [RU].pdf
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
 

Tao and Test Automation

  • 1.
  • 2. УЧЕНИЕ ЛАО-ЦЗЫ Основоположник Дао автоматизации, Лао-цзы, учил: • Если можешь не автоматизировать – не автоматизируй. • Хороший автотест – тот, который не нужно писать. • Падает один тест – напрягается вся команда. Падает сто тестов – напрягается один автоматизатор. • Одна фича покрыта пятью автотестами. Другая фича покрыта пятьюдесятью. Какая протестирована лучше? Никакая, но у второй солиднее тест-репорт. • Есть красный автотест и есть зеленый автотест. Но лишь переход от одного к другому приносит и пользу, и достижение.
  • 3. УЧЕНИЕ ВОРОБЬЯ ЛОХМАТИКА А вот, что говорит по этому поводу другой известный апологет Дао автоматизации, воробей Лохматик: • Чирик-чирик!
  • 4. СТУПЕНИ ДАО АВТОМАТИЗАТОРА Все мы были когда-то начинающими автоматизаторами. (Кто не был – вон из аудитории! У нас тут своя тусовка!) Следовательно, каждый из нас находится на одной из ступеней совершенствования себя как автоматизатора.
  • 5. СТУПЕНИ ДАО АВТОМАТИЗАТОРА 1. «Я ничего не знаю об автоматизации. Это типа нажимаешь кнопку и уходишь заниматься своими делами, да?» 2. «Ух ты, скажите, и в магазине можно так же стенку приподнять? Сейчас заавтоматим что-нибудь эдакое!» 3. «Я охуенно крут. В автоматизации я как рыба в воде. Возможно автоматизировать все!» 4. «Автоматизация - дорогое удовольствие. Но в нашем распоряжении масса тулов и подходов. Побольше тестов, хороших и разных!» 5. «Это проще протестировать руками. И это тоже. А это проверять вообще смысла нет».
  • 6. ПЕРВАЯ СТУПЕНЬ ДАО Люди на этой ступени, как правило, не шибко соображают, что к чему. Подавляющее большинство остается здесь на всю жизнь. • «Я вообще-то не технический человек. Программирование – это не мое». • «Не доверяю я этим автоматизаторам с их скриптами. Мне проще пройти сценарий руками, чем разбираться в этих глупых тест-репортах». • «Ой, а на чем это лучше заавтоматить, на WebDriver или на Java?»
  • 7. ВТОРАЯ СТУПЕНЬ ДАО На этой ступени часто встречаются бывшие ручные тестировщики, а также девелоперы, которых по тем или иным причинам подписали заниматься автоматизацией.
  • 8. ВТОРАЯ СТУПЕНЬ ДАО • «Ого, тут можно записывать свои действия, а потом их воспроизводить! Надо срочно добавить новый скилл в CV!» • «Этот xpath на три строчки не может быть неверным, я его записал через Selenium IDE». • «Ура, я выучил новый паттерн Singleton! Куда бы его теперь впихнуть?» • «Да, я захардкодал эти урлы в тесте, но это временное решение. Да, этому коммиту уже скоро год, я просто был занят другими вещами». • «Я девелопер со стажем! Я знаю NServiceBus и BizTalk как свои пять пальцев, что для меня эта ваша автоматизация! Ну и что с того, что здесь Ruby, а не C#? throw – оно и в Африке throw, не так ли?»
  • 9. ЛИРИЧЕСКОЕ ОТСТУПЛЕНИЕ Честно говоря, судя по описанию, на ступенях 1 и 2 находятся какие-то бестолковые личности. Не знаю как вы, лично я начал сразу с третьей.
  • 10. ТРЕТЬЯ СТУПЕНЬ ДАО Ах, эти третьеступенчатые деньки. • «Язык программирования? Инструмент автоматизации? Непринципиально, освоим!» • «Автоматизировать UI, Web-сервисы, API? Да без проблем!» • «DOM, Flex, нативные интерфейсы, Swing, Siebel, что-то еще? Какая к черту разница? прикрутим JavaScript, AutoIt, распознавание изображений!» • «Я знаю кучу паттернов и намерен применить их все!» • «Мои тесты будут работать на всех комбинациях браузеров, ОС и аппликейшн-серверов без каких-либо дополнительных телодвижений!»
  • 11. ТРЕТЬЯ СТУПЕНЬ ДАО • «Мы создадим фреймворк, который будет поддерживать data-driven, keyword-driven и behavior-driven подходы, причем одновременно!» • «Мы принесем людям свет! Мы заколбасим универсальный проектонезависимый фреймворк, который потом будем матчить матчерами, декорировать декораторами и плагинить плагинами! И все это будет доступно каждому желающему!» • «Мы обеспечим любую требуемую степень покрытия, которая во всяком случае будет не ниже 100%! Мы заавтоматим все: от нажатия на среднюю кнопку мыши до эмуляции отключения питания в серверной!»
  • 12. ТРЕТЬЯ СТУПЕНЬ ДАО Примерно так выглядит автоматизатор на третьей ступени Дао. Куча зерна символизирует написанные им автотесты.
  • 13. ЧЕТВЕРТАЯ СТУПЕНЬ ДАО А вот так выглядит он же, перейдя на четвертую ступень.
  • 14. ЧЕТВЕРТАЯ СТУПЕНЬ ДАО Это сложный период в становлении автоматизатора. Многие ломаются, кто-то уходит в запой. • «Что-то больно до хера у нас получилось тестов, да и выполняются они несколько дней». • «Господи, как разгрести все эти репорты?! А они все прибывают и прибывают!» • «Все заавтоматить к концу спринта не успею, но это никого не парит. Фича в любом случае уйдет в релиз».
  • 15. ЧЕТВЕРТАЯ СТУПЕНЬ ДАО • «Разобьем-ка мы всю кучу тестов на кучки поменьше и будем гонять не все сразу, а поочередно. Количество автотестов – наша основная метрика, и избавляться от них мы не можем!» • «Распараллелим нашу регрессию на 10 потоков, так что вместо 72 часов она будет работать всего 13. Это, между прочим, на 80% быстрее, чем прежде!» • «Сейчас забацаем CI-сервер с фермой удаленных агентов и кастомной веб-мордой, и любой желающий сможет одним нажатием кнопки запустить билд автоматизации, а потом получить красивый репорт с графиками и пай-чартами».
  • 16. ПЯТАЯ СТУПЕНЬ ДАО Это апогей становления личности как автоматизатора. Такие люди – на вес золота. Цените их! • «Да, это можно автоматизировать, но тест получится нестабильный и выполняться будет минут десять. Стоит ли игра свеч?» • «Что проверяет этот тест? На это вообще были хоть какие- нибудь требования, или вы просто наворачиваете тест-кейсы ради количества?» • «UI-тесты будут долгими. Backend-тесты будут непонятными для не-технарей. Выбирайте». • «Слой абстракции этот не нужен тебе. Зачем паттерн здесь всобачил ты?» • «На QTP пишите сами».
  • 17. ПЯТАЯ СТУПЕНЬ ДАО Как же выглядит этот автоматизатор, достигший пятой стадии просветления? А вот как:
  • 18. ЧТО ДАЛЬШЕ? Существует еще и шестая ступень: «Ищу работу». Но ее мы здесь рассматривать не будем.
  • 19. ЛАО-ЦЗЫ УЧИТ «Девелопер сражается с косяками требований, технологии и легаси-кода. Автоматизатор сражается с косяками требований, технологии, легаси-кода, тест-кейсов, серверного окружения, клиентского окружения и инструмента автоматизации. Пожалейте автоматизатора. Ему и так в жизни не повезло».