The Art of Unit Testing, Second Edition guides you step by step from writing your first simple tests to developing robust test sets that are maintainable, readable, and trustworthy. You’ll master the foundational ideas and quickly move to high-value subjects like mocks, stubs, and isolation, including frameworks such as Moq, FakeItEasy, and Typemock Isolator. You’ll explore test patterns and organization, working with legacy code, and even “untestable” code. Along the way, you’ll learn about integration testing and techniques and tools for testing databases and other technologies.
About this Book
You know you should be unit testing, so why aren’t you doing it? If you’re new to unit testing, if you find unit testing tedious, or if you’re just not getting enough payoff for the effort you put into it, keep reading.
The Art of Unit Testing, Second Edition guides you step by step from writing your first simple unit tests to building complete test sets that are maintainable, readable, and trustworthy. You’ll move quickly to more complicated subjects like mocks and stubs, while learning to use isolation (mocking) frameworks like Moq, FakeItEasy, and Typemock Isolator. You’ll explore test patterns and organization, refactor code applications, and learn how to test “untestable” code. Along the way, you’ll learn about integration testing and techniques for testing with databases.
The examples in the book use C#, but will benefit anyone using a statically typed language such as Java or C++.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
Create readable, maintainable, trustworthy tests
Fakes, stubs, mock objects, and isolation (mocking) frameworks
Simple dependency injection techniques
Refactoring legacy code
About the Author
Roy Osherove has been coding for over 15 years, and he consults and trains teams worldwide on the gentle art of unit testing and test-driven development. His blog is at ArtOfUnitTesting.com.
Table of Contents
PART 1 GETTING STARTED
The basics of unit testing
A first unit test
PART 2 CORE TECHNIQUES
Using stubs to break dependencies
Interaction testing using mock objects
Isolation (mocking) frameworks
Digging deeper into isolation frameworks
PART 3 THE TEST CODE
Test hierarchies and organization
The pillars of good unit tests
PART 4 DESIGN AND PROCESS
Integrating unit testing into the organization
Working with legacy code
Design and testability