This ebook provides a quick summary of essential concepts in Test Driven Development by following snack sized chapters:
Introduction:
• Introduction • Test First Development (TFD) • Benefits of Test-Driven Development • Process Example to TDD Approach
Introduction to Unit Testing:
• What is Unit Testing? • Method • When is it Performed? • Who Performs it? • Benefits of Unit Testing • Mock Objects • Why Mocking is Important? • Test Double • Types of Test Doubles
A Quick Review of Refactoring:
• What is Code Refactoring? • Overview of Refactoring • Why do You Refactor? • When do You Refactor? • Steps for Refactoring • Two Categories of Benefits to the Activity of Refactoring
Refactoring Examples:
• Refactoring Examples • Rename Class/ Method/ Variables • Method Slicing/Extraction • Architecture Driven Refactoring – Modularity • Movement of Methods or Class • Code to Interface • Constructors Chaining
Phases of Test Driven Development:
• Steps to be followed in Test Driven Development • Test Structure • Shortcomings
Software of Test Driven Development:
• Software for Test Driven Development • CppUTest • csUnit • DbUnit • jMock • JUnit • NUnit • PHPUnit
Integration Testing:
• Integration Testing • Why is Integration Testing Required? • Big Bang • Top Down • Bottom Up • Limitations
GUI Testing:
• GUI Testing • Text Based GUI Testing Framework • Introducing Bailey Testing Framework (Graphic based GUI Testing Framework) • How it Works? • Pseudo Code
.NET TDD Iteration I:
• .NET TDD (Test Driven Development) by Example • Introduction • Development Costs • Sample Code • The Tools • Iteration I • Creating the Libraries • Going Back to the Requirements • First Two Tests – RED • Get the Tests Failing with the Minimal Amount of Code • Using the Test Explorer to View and Run the Tests • Make the Test Pass (Green) • Make Some Changes
.NET TDD Iteration II:
• Iteration II • Introduce More Tests (Red) • Make the Test Pass (a second time; Green) • Debugging Tests
About WAGmob ebooks:
1) A companion ebook for on-the-go, bite-sized learning.