Test automation models, dehumanising testers and Agile dysfunctions

This tweet was forwarded to me yesterday:


martinfowler: Manual scripted testing should be a human rights violation

It bothered me on a few levels.

Firstly, the simplicity of phrasing around manual and scripted testing. Secondly, that agile developers might view themselves as the saviour of oppressed testers everywhere, and the perpetuation of the concept of tester as helpless victims. And thirdly, criticism of scripted testing is hardly new, and it’s a bit sad that one of the key proponents of test-driven development and design has taken so long to come to this idea.

Still, his comments make a nice soundbite, and what he states is often true, but until he says *why*, I’m not sure if he knows what he’s talking about. It just seems a perpetuation of simplistic binary models of automation and prescriptive testing.

We can do better. There’s much more we should be talking about when discussing manual testing and the conditions of testing in corporate life.

I start with these ideas –

– Let’s put under computer control and evaluation the elements of our tests which are well suited to manipulation and/or evaluation by computers.
– Let’s put under human control and judgement the elements of our tests which are well suited to human manipulation and evaluation.
– Let’s prefer exploratory approaches when we want to find new things and adapt to the information at hand.
– Let’s make sure that we record the details for important things that we don’t want to forget to do, for things that are confusing that we can’t fix.
– Let’s be aware that any test have elements of exploration and prescription.
– Let’s be aware that the testing model we work from biases the kinds of problems we’ll find and the kinds of things we’ll miss.
– Let’s choose appropriate levels of abstraction to help manage the cost of our test design.
– Let’s have as many ways as possible to model our test designs so that we can effectively solve the problem at hand.

In particular, the first two points suggest different ways of doing things that blur the lines between traditional automated and “manual” tests, as discussed by Kaner, Bach and Kohl:

http://www.kohl.ca/blog/archives/000193.html
http://www.satisfice.com/articles/boost.shtml
http://www.satisfice.com/blog/archives/118

On the dehumanising of work, a lot of testers pulled out of frontline business roles were probably already having their human rights violated for far less money than they now make as testers. That doesn’t excuse things, but there aren’t as many testers complaining about the status quo as one might expect. My observation is that the nature of testing as practiced in most places drives the majority of those who might want to take a more creative approach elsewhere.

Standard business practice continues to be to throw money at staff retention problems in skilled roles rather than consider how work might be made to suck less. This isn’t uniquely a software testing problem, and the world is some way from tackling this as an issue.

One comment on “Test automation models, dehumanising testers and Agile dysfunctions”

  1. Justin Hunter says:

    Jared,

    Great post!

    One “sleeper” in your list that particularly resonates with me right now is: “Let’s choose appropriate levels of abstraction to help manage the cost of our test design.”

    – Justin

Leave a Reply

Your email address will not be published. Required fields are marked *