My name is Itamar, and I'm working on a book about software testing. When you start learning about testing you will hear a number of strong opinions, some of which contradict each other:

Myth: Only automated tests can ensure software quality! Reality: While manual testing can be expensive, for a small project it may suffice... and in some cases it will uncover problems automated testing cannot.

Myth: Only unit tests can ensure software quality! Reality: Depending on what you're building unit tests may be a waste of time.

Myth: I've got functional tests (or acceptance tests, or end-to-end tests), so unit tests are a waste of time. Reality: Unit tests may reduce your costs massively... sometimes.

Myth: There's no such thing as too much testing! Reality: Unnecessary testing can keep your project from shipping on time; bad testing can cost you unnecessary time and money when you change your code.

The truth is software testing is all about trade-offs. This book will help you understand the variety of testing methods available to you, their strengths and weaknesses, and their costs. Once you understand your options, you can choose the ones best suited to your project's goals and the resources (time, money, expertise) availble to you.