Programming Books C Java PHP Python Learn more Browse Programming Books
Test-Driven Development in Microsoft .NET and over one million other books are available for Amazon Kindle. Learn more

Sorry, this item is not available in
Image not available for
Image not available

To view this video download Flash Player


Sign in to turn on 1-Click ordering
More Buying Choices
Have one to sell? Sell yours here
Start reading Test-Driven Development in Microsoft .NET on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Test-Driven Development in Microsoft® .NET (Microsoft Professional) [Paperback]

by James W. Newkirk, Alexei Vorontsov, Alexei A. Vorontsov
3.8 out of 5 stars  See all reviews (17 customer reviews)

List Price: $39.99
Price: $28.12 & FREE Shipping on orders over $35. Details
You Save: $11.87 (30%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 4 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
Want it Monday, April 28? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student


Amazon Price New from Used from
Kindle Edition $17.99  
Paperback $28.12  
Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Book Description

April 14, 2004 0735619484 978-0735619487 1

With the clarity and precision intrinsic to the Test-Driven Development (TDD) process itself, experts James Newkirk and Alexei Vorontsov demonstrate how to implement TDD principles and practices to drive lean, efficient coding—and better design. The best way to understand TDD is to see it in action, and Newkirk and Vorontsov walk step by step through TDD and refactoring in an n-tier, .NET-connected solution. And, as members of the development team for NUnit, a leading unit-testing framework for Microsoft .NET, the authors can offer matchless insights on testing in this environment—ultimately making their expertise your own.

Test first—and drive ambiguity out of the development process:

  • Document your code with tests, rather than paper
  • Use test lists to generate explicit requirements and completion criteria
  • Refactor—and improve the design of existing code
  • Alternate programmer tests with customer tests
  • Change how you build UI code—a thin layer on top of rigorously tested code
  • Use tests to make small, incremental changes—and minimize the debugging process
  • Deliver software that’s verifiable, reliable, and robust

Frequently Bought Together

Test-Driven Development in Microsoft® .NET (Microsoft Professional) + Professional Test Driven Development with C#: Developing Real World Applications with TDD
Price for both: $60.16

Buy the selected items together

Editorial Reviews

About the Author

James W. Newkirk, coauthor of Enterprise Solution Patterns in .NET and Extreme Programming in Practice, led the development of NUnit 2.0. He’s currently the development lead for the Microsoft Platform Architecture Guidance team, which provides guidance and reusable assets to enterprise customers through the Patterns & Practices reference series.

Alexei A. Vorontsov has been developing software in a variety of environments—from scientific and mathematical applications to enterprise systems—for more than eight years. He specializes in developing, testing, and managing large distributed software solutions—applying agile development methods for more pragmatic, cost-efficient results.

Product Details

  • Series: Microsoft Professional
  • Paperback: 300 pages
  • Publisher: Microsoft Press; 1 edition (April 14, 2004)
  • Language: English
  • ISBN-10: 0735619484
  • ISBN-13: 978-0735619487
  • Product Dimensions: 9 x 7.4 x 0.7 inches
  • Shipping Weight: 1.2 pounds (View shipping rates and policies)
  • Average Customer Review: 3.8 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #422,991 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
58 of 66 people found the following review helpful
3.0 out of 5 stars Good, but derivate and incomplete June 12, 2004
Format:Paperback|Verified Purchase
If you want to really learn about test driven development, go to the original book by Beck. If you really want to learn about refactoring, go to the original book by Fowler.
This book does try to cover virgin territory with testing apps that use databases and web interfaces - but it really falls apart at the Web GUI interface level (not to be confused with the Web services interface level, which the book covers well). The techniques recommended in the book essentially try to simulate a web GUI interface with nUnit versus actually using an existing web GUI interface. With one Web form, maybe this isn't too much duplication, but with a large Web app, this is just silly - plus it never tests the actual Web client, so the test results are obviously incomplete. The authors neglect how easy it is to truly test a Web GUI interface - with java based tools (JWebUnit & HttpUnit) which build on top of xUnit, and which work fine on any web app (including dot net programmers will need a little understanding of java syntax to use these tools, but java and c# and so nearly identical syntactically for the subset needed, that this is not much of an issue. I hope native ports of these tools to the dot net world are coming soon, but you can live without them and still test Web GUIs easily enough with a little java knowledge, and the authors are remiss in neglecting this.
Plus the blurb on Amazon about the book promised a Windows Form based example - and this is NOT in the book at all!
Comment | 
Was this review helpful to you?
18 of 19 people found the following review helpful
5.0 out of 5 stars You need this book in your Agile Library!!! July 29, 2005
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.
Read more ›
Comment | 
Was this review helpful to you?
16 of 17 people found the following review helpful
3.0 out of 5 stars 7/10 July 18, 2004
I give this book seven out of ten
What I liked about it:
It is easily to read. The topics are well presented and clearly defined.
The book introduces the concepts behind TDD (Test Driven Development)
Some of the less trivial aspects of TDD are discussed, like testing web services or using transactions.
Refactoring is introduced very well in chapter three.
The concepts of FIT are well explained and demonstrated.
In order to get a ten:
The book needs to decide who the target audience is. The material seemed too hard for a first introduction book and too simple for advanced developers.
As the book is about TDD it should have spent more time examining the benefits of developing software using this approach.
I would have liked to have seen more real world (hard to solve) problems tackled.
Comment | 
Was this review helpful to you?
16 of 18 people found the following review helpful
5.0 out of 5 stars Great introduction to TDD on .NET June 28, 2004
Obviously, the best way to learn TDD is by doing it, but a short tutorial like this helps immensely. I bought this book to fill in TDD and NUnit gaps after learning the ropes at work from an experienced TDD Java developer. The book covers the basic principals of TDD and provides a thorough NUnit tutorial. Other reviewers nitpicked the web unit testing section and the depth of coverage, but all neglected to mention that the book is mercifully short. What sort of depth do you want on a very complex and subjective topic like TDD in ~250 pages? In my opinion:
1) A good xUnit tutorial
2) Coverage of the principals of TDD
3) Basic examples of TDD principals and xUnit applied in the target language/platform
This book provides all three. After reading through just a few chapters, I embarked on a TDD-based project at work that now has several hundred tests. The info in the book directly contributed to a solid design for my tests, which has proven to be quite scalable across dozens of classes and an extreme amount of refactoring due to new requirements and bug fixing. I can't ask for more than that from such a short book.
In my opinion, it's not the author's responsibility to dictate the best tools to use for every single TDD situation--NUnit coverage is good enough to get any experienced programmer started, and it's really up to you to experience and discover the right tools for the job. TDD is a fairly new concept for .NETers (so new that MS won't have any tools of their own for TDD until Visual Studio 2005 is released), and tools are popping up almost monthly on SourceForge for testing ASP.NET, WinForms, and for integrating NUnit into Visual Studio.
Cheers to James and Alexei for putting forth such a great, short introduction to TDD for everyone on .NET.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
3.0 out of 5 stars Review
I bought this for someone else and did not read it myself but only want to get this off my review list, sorry.
Published 2 months ago by Anne Martin
2.0 out of 5 stars Expected more in-depth
The book was a decent into to TDD, however given the description I expected it to go more in depth into handling the issues of database access testing, ASP. Read more
Published on December 21, 2009 by Jason Beau Christian
5.0 out of 5 stars Good, simple and descriptive information
I am new to TDD. This book does a very good job for me to get first time insight into test driven development. I highly recommend this book for first timers in TDD. Read more
Published on October 24, 2008 by Ashish Mahajan
4.0 out of 5 stars Great pump-primer for ASP.NET developers
For .NET developers new to test-driven-development who want a recipe for the process, an invaluable book. Read more
Published on September 1, 2006 by Richard J. Cabral
5.0 out of 5 stars First exposure to test driven development
I attended a workshop on test driven development presented by James Newkirk. I was so intrigued with the concept that I had to go out and get his book to find out more. Read more
Published on September 29, 2005 by Amazon Customer
5.0 out of 5 stars Great Book for Experienced Developers
This is a great book for experienced developers. It covers a wide range of realistic uses in .NET and has plenty of detailed examples. Read more
Published on June 20, 2005 by Randy Given
5.0 out of 5 stars Changes Your View
Many people think that Test-Driven Development (TDD) is all about testing software. In fact, test-driven development's main goal is not testing software, but aiding the programmer... Read more
Published on January 28, 2005 by John Matlock
4.0 out of 5 stars Great intro to TDD and more
This books fits in fine with our recent search of .net enterprise devlopment material and we have out it to good use. Some of the chapters seem out of place.
Published on July 7, 2004 by "joannie89"
2.0 out of 5 stars Too shallow
The book provides only shallow explanation of how TDD is supposed to work. Oversimplification may lead to bad code. Read more
Published on June 11, 2004 by Mikhail Arkhipov
Search Customer Reviews
Only search this product's reviews


There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
First post:
Prompts for sign-in

Look for Similar Items by Category