I am a manual tester, does that mean I am an old dinosaur from an era long gone? does that mean my skills and experience are no longer valid?
At times it feels that way, mostly when looking for a job, if you ever find yourself in that position you will find many many testing jobs being advertised but almost all of them say automated, the few that say manual tester tempt you in but then include a line that says automation testing experience also required, there is a lot of buzz around automation testing and the job market seems to have picked up on that but it does not and should not mean that us manual testers are out of a job.
But why should I be kept around? Automated testing is great, one server can run thousands of tests on many different operating systems, mobile platforms and web browsers, for me to be able to do the same I would need dozens of PCs and hundreds of mobile devices and I would have to perform the same test on each and every one, 100% accurately, all the time, as a human being I accept that is beyond me especially given the ever tightening deadlines we have to live by.
However as a human being I can fight back with other abilities, I have eyes, I have opinions, I have learned experience, I have fingers that operate keys, I can see the way a page looks, sure the computer can tell you if an object is on a page and even if it is located to the nearest pixel of where it is meant to but it can’t offer an opinion on whether or not that location is good for a user to use, does that object fit in with the page design, does the colour scheme look aesthetically pleasing, does the object allow the user to follow a logical workflow down the page. There may be detailed specifications that can be programmed into a computer so that it tells you if the application matches the required design but even if the design is met, the computer can not tell you if the application feels right to a user.
As a human who has spent many years manually testing I have built up a lot of experience, some of it is good and some of it is bad, I can tell you if the user interface is intuitive to use or if I find myself staring at the screen wondering what I need to click on next, I can tell you about an application I tested at another company years ago and how well something worked for them that perhaps we can learn from, that is not something you will get from a computer.
Another advantage to the human race is our infallibility, we can’t be trusted to do the same thing 100% accurately time and time again, there are many times when accidentally clicking on the wrong button or typing the wrong character can throw up all sorts of problems, your computer will use it’s permitted data set and it will never get it wrong and it’ll miss those bugs that come from human error.
A computer will do what it is told, as a human, I won’t, I can experiment and explore and try new scenarios all made up as I go along. If you place an object in the application that should not be clicked until something else is completed first then the computer will never click on it because it has not been told to, I will, I will happily click on it just because it is there, in fact I will click on everything on the screen to see what it does regardless of what the user manual may say, if I don’t test in this way then you can guarantee a user will do it and you don’t want them to be the first ones finding a problem.
And who has to define all the automated tests in the first place? Again this is down to the humans, we are the ones who work out what needs to be done, we are the ones who ask questions, who have spoken to the business, to the users, to the developers, to anyone else involved in the project to find out what needs to be done and how the application should work, during these discussions we may well have identified problems that can be fixed at this very early design stage before the application or even the automated tests are built, another point scored for humans.
A computer can replicate my actions but it can not replicate my brain and all the knowledge and experience I have gained.
Does this mean I am suggesting we ditch automated testing and all go back to doing everything manually? Not at all, automation testing is a very valuable tool because it is great for doing the boring repetitive side of testing, running those regression packs a thousand times over and over again is one thing I am happy to pass over to the machines.
But the machines are only a tool, something we testers can use to make certain aspects of our job easier, they can not do everything and their limitations are too great for them to be relied on totally, automation is not testing, it is part of testing, a valuable part of testing but it is not all of testing.