Programming Books C Java PHP Python Learn more Browse Programming Books
Quality Code and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $44.99
  • Save: $8.47 (19%)
Only 14 left in stock (more on the way).
Ships from and sold by
Gift-wrap available.
+ $3.99 shipping
Used: Like New | Details
Sold by Bookbyte123
Condition: Used: Like New
Comment: Orders ship the same or next business day. Expedited shipping within U.S. will arrive in 3-5 days. Hassle free 14 day return policy. Contact Customer Service for questions. Almost new condition. SKU:9780321832986-2-0
Access codes and supplements are not guaranteed with used items.
Sell yours for a Gift Card
We'll buy it for $2.47
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Quality Code: Software Testing Principles, Practices, and Patterns Paperback – December 14, 2013

ISBN-13: 978-0321832986 ISBN-10: 0321832981 Edition: 1st

Buy New
Price: $36.52
34 New from $24.57 14 Used from $24.55
Amazon Price New from Used from
"Please retry"
"Please retry"
$24.57 $24.55
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Frequently Bought Together

Quality Code: Software Testing Principles, Practices, and Patterns + Clean Code: A Handbook of Agile Software Craftsmanship
Price for both: $72.64

Buy the selected items together

Holiday Deals in Books
Holiday Deals in Books
Find deals for every reader in the Holiday Deals in Books store, featuring savings of up to 50% on cookbooks, children's books, literature & fiction, and more.

Product Details

  • Paperback: 256 pages
  • Publisher: Addison-Wesley Professional; 1 edition (December 14, 2013)
  • Language: English
  • ISBN-10: 0321832981
  • ISBN-13: 978-0321832986
  • Product Dimensions: 7 x 0.6 x 9 inches
  • Shipping Weight: 12.8 ounces (View shipping rates and policies)
  • Average Customer Review: 4.1 out of 5 stars  See all reviews (8 customer reviews)
  • Amazon Best Sellers Rank: #1,863,700 in Books (See Top 100 in Books)

Editorial Reviews

From the Author

As I've coached software engineering teams on testing practices I've found that often the obstacle is not whether they believe they should test or whether they understand the concepts of testing, but the concrete understanding of what testable code looks like and knowledge of the implementation patterns of how to bring code under test.

Looking around, I realized that no one had written squarely on this topic. There are lots of great books by the likes of Bob Martin, Michael Feathers, Lasse Koskela, Kent Beck, Steve Freeman and Nat Pryce, Martin Fowler, Joshua Kierevsky, and others that address approaches to testing, the importance of testing, and so forth. In the process they show techniques for bringing code under test, but it's usually secondary to the points being made. The only exception to this is Michael Feathers' "Working Effectively with Legacy Code" but it has a very specific focus that necessarily limits the techniques discussed.

Many of the examples of the book are in Java, although overall I use a dozen or so languages for examples. This is largely an artifact of the language I was most immersed in when the seed of the idea was planted. There are many examples from JavaScript, including one of the worked example chapters. With a few exceptions that I tried to point out, almost all of the techniques can be applied in most languages with only a little adaptation, so if Java and JavaScript are not your primary tools, you should still be able to leverage the techniques.

Happy testing!

About the Author

Stephen Vance has been a professional software developer, consultant, manager, mentor, and instructor since 1992. He has practiced and taught code-level, automated testing techniques since 1997. He has worked across a broad range of industries for companies ranging from start-ups to Fortune 100 corporations. He has spoken at software conferences throughout the United States and Europe. Stephen lives with his wife near Boston, Massachusetts.

More About the Author

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

Customer Reviews

4.1 out of 5 stars
Share your thoughts with other customers

Most Helpful Customer Reviews

4 of 4 people found the following review helpful By Trent Richardson on December 20, 2013
Format: Paperback
The first part of the book lays a foundation of why to test, approaches, and how to handle different situations. The book touches a lot of scenarios I would have not thought of before hand like parallelism, factories, events, and even error testing (before this book I thought error handling was considered testing). He then polishes it off with a couple real world projects and applying the principles covered to bring them under test.

The examples are Java, Javascript, and Perl. I know very little Java and Perl but the examples were clear enough that knowing basic programming is enough (I'm a php, coldfusion, javascript developer). The book proves that testing is as much about the approach and theory as the language specifics.

I give it 5 stars because of the book's clarity, the simple and practical examples, it applies the principles into real world code, and the book is reasonable length that you don't give up on it.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By Yvette Francino on June 23, 2014
Format: Paperback
Having worked as a software developer, a QA manager, and an Agile development manager, I've often heard debate about whether or not developers should test their own code. Though certainly developers are expected to unit test, even in Agile environments, I've often seen the separation of roles between developers and testers. I've always been of the opinion that developers were quite capable of testing, and in fact, would ideally create automated tests to be run with each build and deployment.

One thing I really like about this book is that it teaches how to bake quality principals into the code and does not distinguish between a developer and a tester, but teaches these skills to the Agile team member. That being said, the reader should have coding skills in order to gain the benefits of the advice, and the book is more pertinent for the developer who wants to learn testing skills rather than the manual tester who wants to learn test automation skills.

The author does a great job of providing examples and patterns that will help the seasoned coder to thoroughly test and create a high quality application. In our modern world of continuous delivery, we must evaluate for test coverage and automation as a priority. This book will help the software development team learn the necessary skills to guarantee quality from the start.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
4 of 6 people found the following review helpful By Global engineer on January 16, 2014
Format: Kindle Edition Verified Purchase
I am not really sure who this book is intended for.... It assumes you know the basics of testing so it's not for beginners, but there is very little information here for seasoned coders, though actually specifying the principles can be moderately helpful. From the description of the book I was really hoping for coverage of the full test "stack", unit, integration, performance etc, more specifically what domains you should cover and how you should create your testing strategies. Instead we get a bunch of useful, though pretty well-known unit test patterns. I guess if you have just started out writing tests and know the basics of the frameworks but not much else this book could be useful, but everyone else is probably better off with a more thorough treatment of the subject.
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
Format: Paperback
There are many books about software testing, but I will put Quality Code in the best that I have read. It presents a philosophy about software testing that has been mine in my software developer life: the programmer is the main person responsible for the quality of its code. Quality Code is a book that I will strongly recommended to every software developer that is convinced that code quality is his main responsibility and not something that will be eventually managed by a QA department elsewhere before delivery. This is a great book on how to grow code and quality together.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

What Other Items Do Customers Buy After Viewing This Item?