The ministry of testing have a bloggers club, and each month they post a different prompt. I’ve not written anything for the bloggers club for a while, and decided to give this months prompt a go.
The prompt: ______ is an underrated skill in testing!
My answer: TESTING!!!
Over the years I’ve spoken to many testers who want to work in test automation – which is completely fine, it is a good career path. However, I fear that this can lead to some not appreciating how experience of manual testing techniques can be beneficial to someone’s career, regardless of their desired career path. There is also a chance that it could lead to someone neglecting to develop some of the most essential testing skills.
Why Testing Skills are important for a Test Automation role?
We should not test using automation alone! It is only one part of the overall testing process. The limitations of test automation means that they should only provide only a general coverage of the software application. This can help alert the team to areas of the application which might not be working as expected.
This leaves the more in-depth test coverage to the testers themselves. They can focus this testing on areas of the application which are known to have changed, and areas which have been flagged by the automated tests. Taking the time for exploring the application can help develop a testers domain knowledge. Without domain knowledge, how can a tester develop any tests for an application – manual or automated!
Experience working within a testing team, building an understanding of the limitations of test automation and developing manual testing skills, can be beneficial to the way a test automation developer designs the tests. A test automation developer not only creates tests. They also need to monitor the test runs and investigate any failed tests. The investigation is not automated. This is where the developer needs those exploratory testing skills to find the cause of the issue.
Testing is often seen as a bottleneck among teams, a very negative attitude that should not be encouraged. Automation can reduce the bottleneck by taking the pressure off the testing team, however some manual testing is still required before a feature can be released. A whole team testing approach has been promoted by some as a way to build mutual respect among developers and testers, and help the team meet deadlines. Even testers whose main role is to develop automated tests (essentially making them a developer) should be available to support testing when required.
Problem with too many Test Automation developers
I’ve worked in teams with several testers desperate to work in test automation. Unfortunately, the opportunities are often lacking, especially when we consider that automation is only a small part of the overall testing process. I’ve seen situations where testers assign themselves to an automation task despite there being outstanding higher priority work. So desperate to do some test automation work, that they neglect other tasks.
The issue is that even if all testers on a team could do automation work, someone still needs to complete the other testing work. Even if a tester succeeds in becoming a test automation developer, it is likely that they will still need to do some non-automation related work.
When I became a senior tester, I was expected to manage the workload. While I encouraged the other testers in my team to pick the tickets based on a mixture of priority, experience and interest, I was careful to ensure that all testers who wanted experience in test automation were offered the opportunity to do some test automation work.
Reality of a Test Automation role
I currently work as a Senior Automation Tester. I’ve only had this role for 6 months. Its the first job I’ve had where I worked almost entirely on the automated tests. Before this, I worked in roles where I did a mixture of manual testing and test automation development. I found both sets of activities useful. In particular, I found it useful understanding how both types of testing complement each other. Despite my job title, I do still do some manual testing. Sometimes I’m called on to support testing when they have a deadline to meet. I’m also required to investigate failed tests. This investigation is not automated.
Creating, maintaining and reviewing automated tests is only one small part of the testing process. In general, automation merely alerts us to areas of an application that might not be working as expected. It rarely finds bugs, and if it does its usually only after a tester has investigated the failure using exploratory testing techniques.
Automated testing shouldn’t be the goal in testing. A good test strategy should be the goal – and this cannot be achieved with ONLY automated testing. All testers should work together to achieve this goal.
Further Reading
If Universities won’t help us, how do we #MakeATester
More information about the #MakeATester hashtag, started by Simon Prior, which follows the universities reluctance to include software testing in their curriculum and identify how we can build awareness of the testing role.
Ask Me Anything – Whole Team Testing
An AMA session which Lisa Crispin took part in about whole team testing.
What are the top 10 software testing skills in demand?
An article by Medium that looks at some of the skills a software tester can develop.
Other blog posts created using “____ Is an underrated skill in testing” prompt
Pairing
Lee Marshal recorded a video instead of writing a blog post. He identifies pairing as being an underrated skill, and discusses how pairing with other testers or developers can improve the quality of the application.
Proactive
It isn’t always a case of pass or fail. Sometimes, a feature might be doing what it’s supposed to do but still be poorly designed. Mirza Sisic discusses how a tester needs to be proactive by analysing the application as a whole and identifying if the overall quality is really as good as it can be.