I just reviewed a book proposal that raised my ire. The skills and techniques that would be taught in the book were fine. The emphasis on context-driven testing was great. But the book appeared to be framed in a setting where testing is all about dealing with crises, trying to figure what testing you can squeeze in to a very short timeframe, making the testers somehow in charge of quality.
Testing skills are important, of course, and we testers add value with our special experience and viewpoint. But we can’t have much impact on quality by ourselves.
On the plus side, I’m seeing more and more teams around the world figure out that the best way to deliver a high-quality product is to move testing to the front, make testing and coding part of one process, have the whole development team take responsibility for quality, and work incrementally, iteratively and at a sustainable pace.
On the minus side, I see things like this book proposal that ignore the evidence of how this new whole-team approach is working, and that keep pushing a way of working that is 20+ years old and hasn’t resulted in consistent, high-quality software.
I don’t care if you’re using a traditional waterfall process, or agile, or something else. There is a pragmatic, practical approach to software development and testing that works. It’s more than specific testing skills and tricks. Discipline, communication and collaboration are the key skills and characteristics we need. Continuous integration and automated build processes that run good regression tests are as just as essential as automated source code control.
Testers do need to learn new skills and techniques. More importantly, they need to get up from their workstations and (physically or virtually) go talk to other development and customer team members. We need to find out how we can all help each other do our best work and delight our customers.
What do you think is the most important thing testers need to do or know? What book is missing that would send newbie testers in the right direction?
4 comments on “Testing is More than Techniques”
I’m not sure it’s missing as I haven’t read every book yet but we need more testing books that give a more rounded and holistic approach to testing.
We need less books that are of the ‘they’re all against’ moaning view of the world, process rigidity as the answer to testing’s woes, etc. Get over it already, it’s not the 70s anymore.
Sure, teach these core/fundamental techniques but then balance them with a wider view. We need books that give readers options and perspectives against which they can decide.
You have already written a book which is going to guide us for sometime :).
Well apart that the most important thing tester in an agile team needs to know or do is open communication, constant reflection and continuous improvement. I believe practices are context sensitive. It is good to share them but practices should not be the base but principles and values should be.
From my point of view respect is a core thing people need to learn about testing. At my company I get the picture that too often testing is confused with “trying out the product”. Good testing – especially Exploratory Testing and User Acceptance Testing – is more than just “trying out the product”. Along with this confusion goes the picture of the tester. The tester does not know anything about software development, she’s just trying out the product. Of course this thinking is crap and we need to work on our profession as a craft to get that picutre in line with what we’re really doing:
Personally I currently adapt to a craftsmanship mindset – influenced by the Software Craftspersons – which state to care, learn, practice and share their craft. Pretty much the same applies for Software Testing since I consider Testing a basic portion of Software Development.
I’m glad there are folks like y’all who are helping to improve our profession. I like the Craftsperson approach. We should all be proud of our work – individually and as a team.