SlideShare a Scribd company logo
1 of 42
TDD:  A rrange  A ct  A ssert  на примере  Rhino   Mocks СЕРГЕЙ КАЛИНЕЦ http://tdd4.net
Немного обо мне ,[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino   Mocks
План доклада ,[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Почему  TDD  туго идет ,[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks ::  Сергей Калинец
Организация теста :  AAA TDD: Arrange Act Assert  на примере  Rhino Mocks
Зачем нужен ААА ? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Зачем нужен ААА ? ,[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Чистый код  ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Чистый код  ,[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
AAA:  пример (простой) TDD: Arrange Act Assert  на примере  Rhino Mocks
Тестирование зависимостей ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Тестирование зависимостей ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Реальные объекты – просто… ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Реальные объекты – просто… ,[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Нереальные объекты (дублёры) TDD: Arrange Act Assert  на примере  Rhino Mocks
Rhino Mocks ,[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Rhino Mocks:  основы TDD: Arrange Act Assert  на примере  Rhino Mocks
Синтаксис 1 TDD: Arrange Act Assert  на примере  Rhino Mocks
Синтаксис 2 TDD: Arrange Act Assert  на примере  Rhino Mocks
Что тестируем? TDD: Arrange Act Assert  на примере  Rhino Mocks
Тестирование поведения ,[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Тестирование состояния ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Два в одном TDD: Arrange Act Assert  на примере  Rhino Mocks
Проблемы ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Проблемы ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Убираем (ослабляем) тестирование поведения TDD: Arrange Act Assert  на примере  Rhino Mocks
Синтаксис 3 TDD: Arrange Act Assert  на примере  Rhino Mocks
Синтаксис 3 TDD: Arrange Act Assert  на примере  Rhino Mocks Arrange Act Assert
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
А оно точно работает? ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Иногда все же нужно ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Иногда все же нужно ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Иногда все же нужно ,[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
Неоправданная сложность TDD: Arrange Act Assert  на примере  Rhino Mocks
Неоправданная сложность TDD: Arrange Act Assert  на примере  Rhino Mocks
Сухой остаток ,[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks
СПАСИБО! ,[object Object],[object Object],[object Object],[object Object],TDD: Arrange Act Assert  на примере  Rhino Mocks

More Related Content

Viewers also liked

College Mag Screen Shots
College Mag Screen ShotsCollege Mag Screen Shots
College Mag Screen Shotschloeee
 
Identity Of Jesus
Identity Of JesusIdentity Of Jesus
Identity Of JesusFrDoug
 
Spiritual Gifts
Spiritual GiftsSpiritual Gifts
Spiritual GiftsFrDoug
 
10 Fast Facts On The Constitution
10 Fast Facts On The Constitution10 Fast Facts On The Constitution
10 Fast Facts On The Constitutionmwiegand
 
The Power Of The Spirit
The Power Of The SpiritThe Power Of The Spirit
The Power Of The SpiritFrDoug
 
Music Magazine Evaluation
Music Magazine EvaluationMusic Magazine Evaluation
Music Magazine Evaluationchloeee
 
College Magazine Research
College Magazine ResearchCollege Magazine Research
College Magazine Researchchloeee
 
Media magazine powerpoint presentation
Media magazine powerpoint presentationMedia magazine powerpoint presentation
Media magazine powerpoint presentationchloeee
 
Music%20 Magazine%20 Research[1]
Music%20 Magazine%20 Research[1]Music%20 Magazine%20 Research[1]
Music%20 Magazine%20 Research[1]chloeee
 
Id Rather Have A Root Canal Than Pray Out Loud Part Two
Id Rather Have A Root Canal Than Pray Out Loud Part TwoId Rather Have A Root Canal Than Pray Out Loud Part Two
Id Rather Have A Root Canal Than Pray Out Loud Part TwoFrDoug
 
Toturial - Indesign CS4 - Português
Toturial - Indesign CS4 - PortuguêsToturial - Indesign CS4 - Português
Toturial - Indesign CS4 - PortuguêsCarina Lopes
 
Руйнуємо .NET Міфи
Руйнуємо .NET МіфиРуйнуємо .NET Міфи
Руйнуємо .NET МіфиSerhiy Kalinets
 
The Truth Of Gods Word
The Truth Of Gods WordThe Truth Of Gods Word
The Truth Of Gods WordFrDoug
 
Behavior of the secretary and etiquette and protocol
Behavior of the secretary and etiquette and protocolBehavior of the secretary and etiquette and protocol
Behavior of the secretary and etiquette and protocolNiels Olivera Zurita
 
менеджеры против разработчиков
менеджеры против разработчиковменеджеры против разработчиков
менеджеры против разработчиковSerhiy Kalinets
 
Examination Of The Comatose Patient
Examination Of The Comatose PatientExamination Of The Comatose Patient
Examination Of The Comatose PatientSam George
 
Um novo olhar para nova aprendizagem
Um novo olhar para nova aprendizagemUm novo olhar para nova aprendizagem
Um novo olhar para nova aprendizagemcidasantos54
 

Viewers also liked (19)

College Mag Screen Shots
College Mag Screen ShotsCollege Mag Screen Shots
College Mag Screen Shots
 
Identity Of Jesus
Identity Of JesusIdentity Of Jesus
Identity Of Jesus
 
Spiritual Gifts
Spiritual GiftsSpiritual Gifts
Spiritual Gifts
 
10 Fast Facts On The Constitution
10 Fast Facts On The Constitution10 Fast Facts On The Constitution
10 Fast Facts On The Constitution
 
The Power Of The Spirit
The Power Of The SpiritThe Power Of The Spirit
The Power Of The Spirit
 
Music Magazine Evaluation
Music Magazine EvaluationMusic Magazine Evaluation
Music Magazine Evaluation
 
College Magazine Research
College Magazine ResearchCollege Magazine Research
College Magazine Research
 
Media magazine powerpoint presentation
Media magazine powerpoint presentationMedia magazine powerpoint presentation
Media magazine powerpoint presentation
 
Music%20 Magazine%20 Research[1]
Music%20 Magazine%20 Research[1]Music%20 Magazine%20 Research[1]
Music%20 Magazine%20 Research[1]
 
Id Rather Have A Root Canal Than Pray Out Loud Part Two
Id Rather Have A Root Canal Than Pray Out Loud Part TwoId Rather Have A Root Canal Than Pray Out Loud Part Two
Id Rather Have A Root Canal Than Pray Out Loud Part Two
 
Toturial - Indesign CS4 - Português
Toturial - Indesign CS4 - PortuguêsToturial - Indesign CS4 - Português
Toturial - Indesign CS4 - Português
 
Руйнуємо .NET Міфи
Руйнуємо .NET МіфиРуйнуємо .NET Міфи
Руйнуємо .NET Міфи
 
The Truth Of Gods Word
The Truth Of Gods WordThe Truth Of Gods Word
The Truth Of Gods Word
 
Behavior of the secretary and etiquette and protocol
Behavior of the secretary and etiquette and protocolBehavior of the secretary and etiquette and protocol
Behavior of the secretary and etiquette and protocol
 
менеджеры против разработчиков
менеджеры против разработчиковменеджеры против разработчиков
менеджеры против разработчиков
 
Examination Of The Comatose Patient
Examination Of The Comatose PatientExamination Of The Comatose Patient
Examination Of The Comatose Patient
 
Solid code via tdd
Solid code via tddSolid code via tdd
Solid code via tdd
 
Reto final pdf
Reto final pdfReto final pdf
Reto final pdf
 
Um novo olhar para nova aprendizagem
Um novo olhar para nova aprendizagemUm novo olhar para nova aprendizagem
Um novo olhar para nova aprendizagem
 

Similar to TDD: Arrange Act Assert на примере Rhino Mocks

Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...Ontico
 
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обученияКак подготовиться к гигабитной DDoS-атаке при помощи машинного обучения
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обученияQrator Labs
 
kranonit S15 Vladimir Melnik - Ruby on Rails, BDD
kranonit S15 Vladimir Melnik - Ruby on Rails, BDDkranonit S15 Vladimir Melnik - Ruby on Rails, BDD
kranonit S15 Vladimir Melnik - Ruby on Rails, BDDKrivoy Rog IT Community
 
Проблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestCompleteПроблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestCompleteautomated-testing.info
 
Выявление неполадок в Java приложениях
Выявление неполадок в Java приложенияхВыявление неполадок в Java приложениях
Выявление неполадок в Java приложенияхPavel Grushetzky
 
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномКурс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномAndrey Rebrov
 
Создаем работающую сеть безопасности
Создаем работающую сеть безопасностиСоздаем работающую сеть безопасности
Создаем работающую сеть безопасностиVitaly Stakhov
 
Почему это не работает (Записки консультанта)
Почему это не работает (Записки консультанта)Почему это не работает (Записки консультанта)
Почему это не работает (Записки консультанта)Oleksiy Rezchykov
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Fwdays
 
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхКурс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхautomated-testing.info
 
Высоцкий Неортодоксальный дизайн тестов
Высоцкий Неортодоксальный дизайн тестовВысоцкий Неортодоксальный дизайн тестов
Высоцкий Неортодоксальный дизайн тестовqasib
 
Особенности использования машинного обучения при защите от DDoS-атак
Особенности использования машинного обучения при защите от DDoS-атакОсобенности использования машинного обучения при защите от DDoS-атак
Особенности использования машинного обучения при защите от DDoS-атакQrator Labs
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...yaevents
 
Вы VS DDoS. Доступные контрмеры
Вы VS DDoS. Доступные контрмерыВы VS DDoS. Доступные контрмеры
Вы VS DDoS. Доступные контрмерыQratorLabs
 

Similar to TDD: Arrange Act Assert на примере Rhino Mocks (20)

Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения / Игн...
 
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обученияКак подготовиться к гигабитной DDoS-атаке при помощи машинного обучения
Как подготовиться к гигабитной DDoS-атаке при помощи машинного обучения
 
kranonit S15 Vladimir Melnik - Ruby on Rails, BDD
kranonit S15 Vladimir Melnik - Ruby on Rails, BDDkranonit S15 Vladimir Melnik - Ruby on Rails, BDD
kranonit S15 Vladimir Melnik - Ruby on Rails, BDD
 
Проблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestCompleteПроблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestComplete
 
Выявление неполадок в Java приложениях
Выявление неполадок в Java приложенияхВыявление неполадок в Java приложениях
Выявление неполадок в Java приложениях
 
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераномКурс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
Курс молодого бойца-автоматизатора - как остаться в живых и стать ветераном
 
BDD
BDDBDD
BDD
 
Создаем работающую сеть безопасности
Создаем работающую сеть безопасностиСоздаем работающую сеть безопасности
Создаем работающую сеть безопасности
 
TDD
TDDTDD
TDD
 
Why it is not working
Why it is not workingWhy it is not working
Why it is not working
 
Keyword driven testing
Keyword driven testingKeyword driven testing
Keyword driven testing
 
Почему это не работает (Записки консультанта)
Почему это не работает (Записки консультанта)Почему это не работает (Записки консультанта)
Почему это не работает (Записки консультанта)
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"
 
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живыхКурс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
 
Finding Root Causes
Finding Root CausesFinding Root Causes
Finding Root Causes
 
Unorthodox testdesign
Unorthodox testdesignUnorthodox testdesign
Unorthodox testdesign
 
Высоцкий Неортодоксальный дизайн тестов
Высоцкий Неортодоксальный дизайн тестовВысоцкий Неортодоксальный дизайн тестов
Высоцкий Неортодоксальный дизайн тестов
 
Особенности использования машинного обучения при защите от DDoS-атак
Особенности использования машинного обучения при защите от DDoS-атакОсобенности использования машинного обучения при защите от DDoS-атак
Особенности использования машинного обучения при защите от DDoS-атак
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
 
Вы VS DDoS. Доступные контрмеры
Вы VS DDoS. Доступные контрмерыВы VS DDoS. Доступные контрмеры
Вы VS DDoS. Доступные контрмеры
 

More from Serhiy Kalinets

путь Xp практика
путь Xp практикапуть Xp практика
путь Xp практикаSerhiy Kalinets
 
Уберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildУберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildSerhiy Kalinets
 
Путь XP практика
Путь XP практикаПуть XP практика
Путь XP практикаSerhiy Kalinets
 
Xp в brown field разработке
Xp в brown field разработкеXp в brown field разработке
Xp в brown field разработкеSerhiy Kalinets
 
Functional programming in C#
Functional programming in C#Functional programming in C#
Functional programming in C#Serhiy Kalinets
 
Fubu mvc -- нафига оно мне
Fubu mvc -- нафига оно мнеFubu mvc -- нафига оно мне
Fubu mvc -- нафига оно мнеSerhiy Kalinets
 
Даёшь асинхронность в массы, или как ускориться нашару
Даёшь асинхронность в массы, или как ускориться нашаруДаёшь асинхронность в массы, или как ускориться нашару
Даёшь асинхронность в массы, или как ускориться нашаруSerhiy Kalinets
 
Зачем нужны распределенные системы конторля версий
Зачем нужны распределенные системы конторля версийЗачем нужны распределенные системы конторля версий
Зачем нужны распределенные системы конторля версийSerhiy Kalinets
 
вкалывают роботы, счастлив человек (Team city)
вкалывают роботы,  счастлив человек (Team city)вкалывают роботы,  счастлив человек (Team city)
вкалывают роботы, счастлив человек (Team city)Serhiy Kalinets
 
Хотите драйва? Вам в TDD!
Хотите драйва? Вам в TDD!Хотите драйва? Вам в TDD!
Хотите драйва? Вам в TDD!Serhiy Kalinets
 

More from Serhiy Kalinets (15)

CI adventures in .NET
CI adventures in .NETCI adventures in .NET
CI adventures in .NET
 
путь Xp практика
путь Xp практикапуть Xp практика
путь Xp практика
 
Уберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildУберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuild
 
Xp fun
Xp funXp fun
Xp fun
 
Do you speak TDD
Do you speak TDDDo you speak TDD
Do you speak TDD
 
Путь XP практика
Путь XP практикаПуть XP практика
Путь XP практика
 
Xp в brown field разработке
Xp в brown field разработкеXp в brown field разработке
Xp в brown field разработке
 
Functional programming in C#
Functional programming in C#Functional programming in C#
Functional programming in C#
 
Fubu mvc -- нафига оно мне
Fubu mvc -- нафига оно мнеFubu mvc -- нафига оно мне
Fubu mvc -- нафига оно мне
 
Даёшь асинхронность в массы, или как ускориться нашару
Даёшь асинхронность в массы, или как ускориться нашаруДаёшь асинхронность в массы, или как ускориться нашару
Даёшь асинхронность в массы, или как ускориться нашару
 
Clean code
Clean codeClean code
Clean code
 
Зачем нужны распределенные системы конторля версий
Зачем нужны распределенные системы конторля версийЗачем нужны распределенные системы конторля версий
Зачем нужны распределенные системы конторля версий
 
Мой Скрамбат
Мой СкрамбатМой Скрамбат
Мой Скрамбат
 
вкалывают роботы, счастлив человек (Team city)
вкалывают роботы,  счастлив человек (Team city)вкалывают роботы,  счастлив человек (Team city)
вкалывают роботы, счастлив человек (Team city)
 
Хотите драйва? Вам в TDD!
Хотите драйва? Вам в TDD!Хотите драйва? Вам в TDD!
Хотите драйва? Вам в TDD!
 

TDD: Arrange Act Assert на примере Rhino Mocks