I read a post on LinkedIn today which made me wince. I know that sounds extreme, but it really made me feel a mixture of sadness, annoyance and disappointment that even after so much work over the past few years trying to advance the thinking around testing, we are still having posts which elevate those who can write automated tests and put down those who spend more time performing exploratory testing (ie manual testing).
How is it that we still cannot get away from the thinking that those who write lots of code are more valuable? I agree that there is value in automating the right tests, those that we want to run repeatedly either overnight or on each build, and there can be time savings associated with this. However, what I keep seeing are people within the tech industry deliberately playing down the role of other testers who are not writing code. Why?
As far as I can see, a tester needs to use a lot of analytical skills to review a requirement (or user story), understanding what the user needs in context with the application, They do this by using prior knowledge, common sense and by asking questions to gain a good understanding. Then the tester needs to determine what test scenarios are needed in order to meet the acceptance criteria – both functional tests and non-functional. A tester needs to consider the types of devices that are in scope, the browsers, the user types, the desired behaviours, anticipating what could go wrong, test for accessibility, for performance, security etc. The list goes on. There is a lot of thinking that sits behind a set of test cases.
An automation tester typically picks up the test cases after someone else has already thought about them and defined what is needed. The automation tester may select the tests needed for regression, or have them passed over to them to automate. There is of course a skill involved in writing tests that are efficient, cover the scenarios needed, can report on pass/failure with evidence, and update their team with the results via a dashboard or some sort of notification. The automation tester needs to investigate tests that fail – is it a data issue, is it a genuine defect, or has the application changed and the automation code is out of date. Its a different set of skills.
Comparing a tester performing the non-automation tasks with a tester performing automation tasks is like comparing apples and pears – they do not use exactly the same skillsets. There is some overlap but its not a direct comparison. So why do we insist on comparing one with the other and devaluing one set of skills?
I suppose it was naïve of me to expect that we as an industry had started to move forward in this discussion, and that is one of the reasons why I am disappointed that there are those who still post this kind of ‘thing’ (I was thinking of something less polite!!).
If you are a leader in IT, and you really do understand the equal value that testers bring, can I ask that you do one thing to help please? When you see the next post or hear a conversation where testers who are not writing code are devalued, please speak up or reply to the post, and point out the value that the testers bring. Remind whoever it is that there are different ways to measure the value, and that it is demotivating to testers to see/hear/read this kind of thing, and we should be building people up not tearing them down.
I’d like to know if you agree or disagree – please feel free to reply.
Thanks for reading.