There are a lot of questions related to Unit Testing on stack overflow, but I'm at the moment interested in understanding more about the testing role on a software development project.
So just to make it clear: I'm not looking for books on Unit Testing.
I believe that to be competent software developers we should know a bit about the related disciplines to programming, like Architecture, Configuration Management, User Experience Design, and Testing, to name a few.
I suppose that many of us think that if we understand programming, we already understand most of what a tester does, and think that we could do it ourselves without much problem, but I wonder how many developers really try to learn about the Software Test Engineering discipline and practices from books and other formal resources.
So, my question:
Is there any good introductory book about Software Testing? Ideally, is there one that is written specifically for programmers that want to understand what a Software Test Engineer does and what techniques, processes, theory, tools and skills are needed?