Agile Testing – Programmer perspective
I meet programmers everywhere I go, it kind of goes with the job as tester. They are of very different caliber and mindsets, so just as with my other posts in the series, I will generalize alot. There are many good programmers out there, and many of the people I have worked with really care about these things, just sayin.
I do acknowledge that there are different programmer communities, although when I have engaged with them they look very much alike from my tester perspective. Many of them gather around specific platforms and programming languages like Ruby, .Net, iOS, Java etc, while others are more narrow surrounding specific tools like Selenium and Cucumber.
There are also the more process aware programmers that are found in the Agile and Software craftsmanship movements. The latter in my opinion being the programmers trying to re-take the flag of software development that the Agile wave stole from them. Then there are those that reject processes completely and think that “programming motherfucker” is the best practice of all.
I meet all kinds everywhere. In my day to day work at Jayway and any of the clients we work with, as well as during events like Öredev and other developer conferences.
If I say the words Agile testing to programmers, there are a couple of different reactions. Here are some examples.
“Does it differ from regular testing? Why do you have to put the word Agile in front of everything? Development team will continue to throw parts of the product over the wall to the testers.”
“Agile testing is the same testing as usual, but without any documentation. Since we don’t need the documentation, we don’t need the testers whose sole purpose is creating that documentation.”
“Agile testing is what I can do with this new tool <insert any name here> that comes with this new version of my platform <insert platform here>. ”
“Its what we are doing when pair programming and doing TDD. Actually, Agile testing is just a rephrased version of XP. The testers are not needed anymore since the programmers are carrying out the testing.”
“TDD/BDD/ATDD/SBE are all examples of Agile testing. The documentation is created by itself in business language. And its all automated so we will never need to test anything else.”
I was actually amazed when James Bach just the other day tweeted towards this guy, a former QA that had this standpoint. I am very curious about what type of QA he had been doing before taking the leap into working with continuous integration/continuous delivery. Cause I am not sure he was doing any testing.
- whatever testing you can think of is just checking
- all testing equals automation
- testing is just there for documentation
- nothing related to testing evaluates the actual user value in the product
Do you actually care about anything that relates to Agile testing?