I am often asked for some of my favorite testing books. Here they are. I list these at the risk of offending some of my friends who have written other books. These are not the only books I like, just the ones at the top of my list.

practitioners guide to software test design

A Practitioner's Guide to Software Test Design by Lee Copeland

I like this book because Lee does a great job in explaining many of the classic test design techniques, as well as the newer ones. It's an enjoyable read.

software testing Software Testing, 2nd Ed. by Ron Patton

This is a great book for new testers, although any tester will find it very helpful.
testing computer software Testing Computer Software, 2nd Ed. by Kaner, Falk and Nguyen

This is the bestselling testing book of all time. It has a lot of great ways to test software.
effective methods of software testing Effective Methods for Software Testing, 3rd Ed. by William Perry

Some people love it, others don't. I like this book because it has many templates and examples. It's not the type of book you read from front to back, but is a great reference book for testers.
top ten testing challenges cover Surviving the Top Ten Challenges of Software Testing by William Perry and Randall Rice

Yeah, I had to put my own book on the list. Over the years people have told me about how much it has helped them, so I put it on the list.
software test automation Software Test Automation by Graham and Fewster

This is my favorite book on test automation. Lots of good information here.