or
Sign in to turn on 1-Click ordering.
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
Have one to sell? Sell yours here
or
Get a $11.30 Amazon.com Gift Card
Test Driven Development: By Example
 
 
Tell the Publisher!
I’d like to read this book on Kindle

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

Test Driven Development: By Example [Paperback]

Kent Beck (Author)
3.9 out of 5 stars  See all reviews (34 customer reviews)

List Price: $49.99
Price: $40.64 & this item ships for FREE with Super Saver Shipping. Details
You Save: $9.35 (19%)
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
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Thursday, September 9? Choose One-Day Shipping at checkout. Details
27 new from $29.05 21 used from $22.22

Frequently Bought Together

Test Driven Development: By Example + Refactoring: Improving the Design of Existing Code + Clean Code: A Handbook of Agile Software Craftsmanship
Price For All Three: $123.09

Show availability and shipping details

Buy the selected items together
  • In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Refactoring: Improving the Design of Existing Code$45.02

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Clean Code: A Handbook of Agile Software Craftsmanship$37.43

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought


Editorial Reviews

Product Description

Quite simply, test-driven development is meant to eliminate fear in application development. While some fear is healthy (often viewed as a conscience that tells programmers to "be careful!"), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the author admits that grumpiness must be worked out individually! In short, the premise behind TDD is that code should be continually tested and refactored. Kent Beck teaches programmers by example, so they can painlessly and dramatically increase the quality of their work.

From the Back Cover

Clean code that works--now. This is the seeming contradiction that lies behind much of the pain of programming. Test-driven development replies to this contradiction with a paradox--test the program before you write it.

A new idea? Not at all. Since the dawn of computing, programmers have been specifying the inputs and outputs before programming precisely. Test-driven development takes this age-old idea, mixes it with modern languages and programming environments, and cooks up a tasty stew guaranteed to satisfy your appetite for clean code that works--now.

Developers face complex programming challenges every day, yet they are not always readily prepared to determine the best solution. More often than not, such difficult projects generate a great deal of stress and bad code. To garner the strength and courage needed to surmount seemingly Herculean tasks, programmers should look to test-driven development (TDD), a proven set of techniques that encourage simple designs and test suites that inspire confidence.

By driving development with automated tests and then eliminating duplication, any developer can write reliable, bug-free code no matter what its level of complexity. Moreover, TDD encourages programmers to learn quickly, communicate more clearly, and seek out constructive feedback.

Readers will learn to:

  • Solve complicated tasks, beginning with the simple and proceeding to the more complex.
  • Write automated tests before coding.
  • Grow a design organically by refactoring to add design decisions one at a time.
  • Create tests for more complicated logic, including reflection and exceptions.
  • Use patterns to decide what tests to write.
  • Create tests using xUnit, the architecture at the heart of many programmer-oriented testing tools.
  • This book follows two TDD projects from start to finish, illustrating techniques programmers can use to easily and dramatically increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. With its emphasis on agile methods and fast development strategies, Test-Driven Development is sure to inspire readers to embrace these under-utilized but powerful techniques.



    0321146530B10172002

    Product Details


    More About the Author

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

    Visit Amazon's Kent Beck Page

    Look Inside This Book
    Browse Sample Pages:
    Front Cover | First Pages | Back Cover


    What Do Customers Ultimately Buy After Viewing This Item?

    Test Driven Development: By Example
    69% buy the item featured on this page:
    Test Driven Development: By Example 3.9 out of 5 stars (34)
    $40.64
    Growing Object-Oriented Software, Guided by Tests
    10% buy
    Growing Object-Oriented Software, Guided by Tests 4.8 out of 5 stars (13)
    $34.05
    Refactoring: Improving the Design of Existing Code
    8% buy
    Refactoring: Improving the Design of Existing Code 4.5 out of 5 stars (140)
    $45.02
    Clean Code: A Handbook of Agile Software Craftsmanship
    8% buy
    Clean Code: A Handbook of Agile Software Craftsmanship 4.3 out of 5 stars (73)
    $37.43

    Tags Customers Associate with This Product

     (What's this?)
    Click on a tag to find related items, discussions, and people.
     
    (19)

    Your tags: Add your first tag
     

    Sell a Digital Version of This Book in the Kindle Store

    If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

     

    Customer Reviews

    34 Reviews
    5 star:
     (13)
    4 star:
     (12)
    3 star:
     (4)
    2 star:
     (3)
    1 star:
     (2)
     
     
     
     
     
    Average Customer Review
    3.9 out of 5 stars (34 customer reviews)
     
     
     
     
    Share your thoughts with other customers:
    Most Helpful Customer Reviews

     
    24 of 25 people found the following review helpful:
    5.0 out of 5 stars Fail, Run, Run Clean, February 4, 2003
    By Thomas Koenig (Chevy Chase, MD United States) - See all my reviews
    This review is from: Test Driven Development: By Example (Paperback)
    The are a small number of writers who can teach programming skills effectively. Kent Beck is one of them. There are a small set of practices that you can adopt on your own that will have an clearly observable impact on the quality of your results and the quality of your work day. Test Driven Develoment (TDD) is one of them. If you are a software developer, you want to buy, read and study this book.

    TDD fits development into a three micro-phase cycle: create a test that embodies your requirement, write code that passes the test, make the code run clean. Each phase has different goals, patterns and pitfalls. Like any good coach, Beck walks you through these in detail. He uses multiple examples: most notably a business model in Java and a unit testing framework in Phython. He follows up with a question and answer section that reviews common patterns in test driven development cycle.

    The level of learning involved in doing TDD is profound. The best way to read the book is to do the book. Skills come from doing not reading. I did the examples (in another language) and it made all the difference in what I learned.

    A footnote for managers: TDD is the opening wedge for a set of practices known as extreme programming (XP) or agile development. Test driven development is powerful enough to work on its own for the single delevoper. If you want to realize its full value, however, you need to embrace the full set of XP practices for the whole organization.

    Help other customers find the most helpful reviews  
    Was this review helpful to you? Yes No


     
    26 of 29 people found the following review helpful:
    4.0 out of 5 stars Good introduction, but light on real-world development, November 28, 2003
    This review is from: Test Driven Development: By Example (Paperback)
    If you've never done or are curious about TDD, this is a great book to carefully walk you through learning how and why to do it. After following its practices a bit, I've also found it an indispensible way to write new projects, modules, and code. However, the book doesn't address what happens when:
    - The code base is old, and doesn't have any tests or isn't designed testable. It makes it hard to do anything other than introduce integration-level tests and tweak to success.
    - You're writing UI code for a serious application. It's straightforward to solve for a dialog framework, but when you're integrating with a major windowing framework that embeds serious functionality (Avalon, in my case), there are a whole set of issues he doesn't talk about.
    - Design is part of your deliverable. I don't disagree that you can get pretty reasonble designs out of TDD & refactor. But I *do* disagree that, in practice, you get designs intended to version well, that your company is willing to support for the next decade or more. I've seen the code produced, and it just doesn't happen.

    A good introduction, nonetheless. But watch out before you put on the preacher-hat after reading it and doing the exercises -- at least try to do it in part of one large, real-world product.

    Help other customers find the most helpful reviews  
    Was this review helpful to you? Yes No


     
    33 of 39 people found the following review helpful:
    3.0 out of 5 stars A decent introduciton, March 12, 2004
    This review is from: Test Driven Development: By Example (Paperback)
    This Kent Beck title is an introduction to the world of Test-Driven Development (TDD). The book teaches the concepts of TDD by working through two complete sample projects. Along the way, Beck gives the reader valuable insight into the thought process and techniques behind successful test-driven development. When the reader has finished working through these sample projects, he should know enough about TDD to get started working on a TDD project.

    The book is divided into three sections. The first two sections are each walkthroughs of the aforementioned sample projects using TDD. The third section is a collection of notes and useful tips to try to get the most out of TDD. If you've ever read anything from Beck, then you should be familiar with his style. If you haven't, Beck is an engaging enough writer, and the text flows smoothly and is fairly pleasant to read.

    It would help to be familiar with some member of the xUnit family prior to reading this book. Beck uses Java and JUnit for the first section, but never really goes into discussing the JUnit API. Readers unfamiliar with xUnit may have no idea how to proceed with writing their own tests using one of these frameworks. True the API is simple enough that its functions may be ascertained simply by reading the code, but this is no reason not to provide explanation. The second sample project is an actual implementation of xUnit, so a bit more information may be gleaned here. Beck made the curious decision to use Python as the language of implementation for the second project, although he does provide explanation of the language's fundamentals. Finally, none of the sample projects are really complicated enough to do more than get us going on the path of TDD. There will still be many hurdles to climb when working on a real-world project.

    If you are seeking a basic introduction to test-driven development, then you might enjoy this title. If you are a Java developer interested in exploring TDD more in-depth, there are better books out there.

    Help other customers find the most helpful reviews  
    Was this review helpful to you? Yes No

    Share your thoughts with other customers: Create your own review
     
     
     
    Most Recent Customer Reviews

    5.0 out of 5 stars TDD
    The book was well written and used examples effectively to demonstrate the main concept.

    I started out as a skeptic, researching only because my company stated that... Read more
    Published 6 months ago by Armando Sandoval

    4.0 out of 5 stars An excellent introduction to TDD
    Before this book, I was doing unit testing - test-after - and had not done any TDD. As a result of reading this book, I am now writing new code in a test-driven fashion - writing... Read more
    Published 7 months ago by B. G. Palin

    1.0 out of 5 stars 2 pages drawn out to 200 pages of bs
    Remember back in college when you would come up with 2 pages of good material then bs it into 5 to meet the length requirement? Read more
    Published 18 months ago by Benjamin A. Hansen

    2.0 out of 5 stars Really not that good.
    I was expecting quite a lot from this book, because it has been recommended so many people and organizations. However this was a disappointment. Read more
    Published 21 months ago by Tommi Lindeman

    2.0 out of 5 stars Another silly development fad...
    TDD "By Example" is a book that tries to persuade you to write tests before writing the code the tests test. Read more
    Published 22 months ago by Edwin F. Zimmerman

    5.0 out of 5 stars Extremely important software development practices
    Excellent book, well paced and informative. You should really go through the examples as you read those sections (part 2), even if they feel a little obvious, because if you are... Read more
    Published 23 months ago by John Wesley Watson

    3.0 out of 5 stars intriguing ideas, irritatingly presented
    The book's scope is well-defined and its methodology (including a running "task list" that is updated at the end of each chapter with strikeouts and new items) is innovative. Read more
    Published on June 28, 2008 by Brendan C. Lefebvre

    4.0 out of 5 stars Good Theory -- But Odd Decisions In Writing
    Overall, this was a great read. I love books with tiny chapters, giving you good stopping points where you can meditate on what you just read while you're busy with life's other... Read more
    Published on May 1, 2008 by John Blanco

    3.0 out of 5 stars Decent Purchase
    This book is good, IF you haven't read the Martin Fowlers refactoring the code ( not back to design patterns, but just refactoring ), other than that it has some cool insights... Read more
    Published on December 21, 2007 by Anirudh

    5.0 out of 5 stars Very inspiring
    This is the most inpiring and thought-provocing book on programming that I have read for many years. Very well-written, short, fun. Read more
    Published on July 30, 2007 by Niels Holst

    Only search this product's reviews



    Customer Discussions

    This product's forum
    Discussion Replies Latest Post
    church on cover 0 September 2009
    See all discussions...  
    Start a new discussion
    Topic:
    First post:
    Prompts for sign-in
     


    Active discussions in related forums
    Search Customer Discussions
       





    Look for Similar Items by Category


    Look for Similar Items by Subject

     

    Feedback

    If you need help or have a question for Customer Service, contact us.
     Would you like to update product info or give feedback on images?
    Is there any other feedback you would like to provide?

    Your comments can help make our site better for everyone.


    Your Recent History

     (What's this?)

    After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.