by Microsoft Press
| Average Rating: |
|
| Sales Rank: | 66333 (lower is better) |
| Price as of: | 11/15/2008 4:19:00 AM MST |
| Price Used: | $12.84 |
| Shipping: | Free Shipping on most orders over $25* |
| Availability: | Usually ships in 24 hours |
| Label: | Microsoft Press |
| Pages: | 304 |
| Binding: | Paperback |
| Publication Date: | 2004-04-14 |
| Published By: | Microsoft Press |
| ASIN: | 0735619484 |
| Category: | Book |
Authors
Editorial Reviews and Product Descriptions
Product Description
Learn how to apply the concepts and techniques of Test-Driven Development (TDD) to writing software for Microsoft .NET. Two experts in agile software development teach—using a wealth of pragmatic examples in C# and other .NET development tools—how to use automated tests to drive lean, efficient coding and better design. You’ll focus on .NET-specific issues for TDD, including the best time to employ the inherent features of .NET class libraries and how to use NUnit, a leading unit-testing framework for .NET. And you’ll see real-world examples of TDD-for .NET projects, including a Microsoft ADO.NET relational database, a user interface created with Microsoft ASP.NET and Microsoft Windows® Forms, Web services, and other useful applications.
Customer Reviews
You need this book in your Agile Library!!! - Reviewed on 2005-07-29
15 customers found this review helpful, 1 did not.
Test-Driven Development in Microsoft.NET rises head and shoulders above the other books on the subject. While I know that is a very strong statement to make, the authors have made the focus of the book a very practical one. Don't get me wrong, there are several other great books on this subject, but they all seem to fall down when it comes to real-world situations.
The book is split into two parts; Part I is an overview of Test-Driven Development, and Part II covers using TDD to develop an example application.
Chapter 1 frames the entire discussion with an overview of Test-Driven Development concepts, including some straightforward guidelines for design. I thought it was laid out in very logical fashion.
Chapter 2 throws you right into the process it's a classic stack example, found in many other TDD books. What I liked most about it though, was that the chapter began with discussing HOW you start figuring out WHAT tests to write as you develop an application.
Chapter 3 covers another critical concept of TDD Refactoring. (What's Refactoring? You askread chapter 3 ;) ). Again, the authors walk you through a short yet concise primer using the Sieve of Eratosthenes implemented in C#. They introduce the algorithm and then discuss it in light of code refactoring techniques as implemented originally in Martin Fowler's Refactoring: Improving the Design of Existing Code.
Chapter 4 is the introduction of the example application that will be the focus of the remainder of the book. It lays out the scenario, project features and constraints of the fictitious project.
Chapter 5 covers an area that I've found generates a ton of interest when developers start thinking about TDD, namely data access. I really appreciated the practical approach that the authors took when writing the implementation chapters for the example application. I found the tests surrounding entities and relationships and the resulting explanations to be very good.
Chapter 6 covers how you create tests when implementing Web Services. In the process, the service interface pattern is discussed along with refactoring Web Services. The authors attempt to lead you through a "thought framework" for creating tests through each of the implementation chapters.
Chapters 7, 8, and 9 make a shift from programmer testing to customer testing and cover differing aspects of customer or acceptance testing. This group of chapters starts with an overview of acceptance testing and techniques. The middle chapter deals with driving development up through the implemented layers from a user or customer perspective. Chapter 9 rounds out the discussion by focusing on handling faults and how acceptance testing allows you to tighten things up.
Chapter 10 leads us back to the programmer testing side by dealing with transactions. Following this, Chapter 11 introduces the reader to Service-level refactoring, leading you through the thought process behind different techniques. The story winds down in Chapter 12 with applying the process of TDD to implementing a web client.
All in all, while I'd have like to have seen a both a simpler example and always more "real world" tips and tricks, I can tell you from my own experience that finding that balance is extremely difficult. I believe the authors have made a significant attempt at striking the "real world" / simplicity balance and that the resulting outcome is an excellent resource for learning TDD. When that is combined with the level of effort the authors are putting in to maintaining the code and forums at their GotDotNet workspace, this makes Test-Driven Development in Microsoft .NET an excellent choice for your library.
* - See Amazon
Product Page for shipping and pricing details.
Book Subjects
- Computer Programming
- Programming languages
- Computer software - Testing.
- Computer Programs Testing
- Microcomputer Application Software
- Computers
- Computers - Languages / Programming
- Computer Books: Internet General
- Computers / Programming / Software Development
- Programming - Software Development
- Programming - General
- Programming - Systems Analysis & Design
- Computer software
- Development
- Microsoft .NET
- Testing
- Computing: Professional & Programming