Opinion: Automated testing is not testing.
- You don’t write scripts – you write software
- Accelerating your SDET career.
- Opinion: Automated testing is not testing.
- “Testing is harder than Development” : Gerald Weinberg 1933-2018
QA and testing: Is it time for a new glossary?
Sorry it’s been a while. I have my final bit of Java coding written ready to write up, but I then had a fantastic two week vacation driving around Croatia with my family. I came home to find my test infrastructure had fried itself in the unusual summer heat, so I have some major reconstruction to do: Losing my grid is one thing, but losing the media server at the start of the school holidays is a complete disaster! Coding at home will have to take a break whilst I get stuff back together.
Towards the end of the holiday I started to catch up on what I’d missed in the world if testing and think about how to improve my work. I was particularly amused by this article on the SimpleProgrammer blog titled “The Different Roles Within the Field of QA and Testing.” It takes the form of a discussion between Kayleigh Oliver and Daniel Sayer, a pair of fellow British QA and bloggers about the many and varied job titles that currently exit in the job market for test roles. (Here in the UK at least!)
What does that job title actually mean?
I won’t go through the list adding a third opinion to their conversation, but it got me thinking what a ridiculous state of affairs this is. To me there are really two distinct but related functions in Software Quality Assurance.
Software Testing
QA / QA Analyst / Tester / Test Analyst
From the studying of specifications and writing of test cases through to the clicking of buttons on an interface, this is classic software quality assurance. From functional ‘black box’ testing of a user interface to performance and load testing this is quite definitively the process of checking that your developers have produced something that you can release to customers.
Unfortunately this side of QA has something of an image problem at the moment, with companies desperate to increase test automation. In my experience, and I receive a LOT of enquiries from recruiters, this is most likely to be what is required for most QA and Test job titles. Don’t get me wrong, they will chew your arm off if you have coding skills to work on automation, but it is unlikely to be the focus.
I want to be clear here. I do not think that this is a simple or easy role. It is the QA / test team who will be asked to gauge the risk of releasing a particular version of your product. I personally think that a really good manual tester, who knows your product, understands your domain and has the confidence to explain why this particular solution is no good is worth their weight in gold.
Development of Automated Tests – “Automated Software Validation”
Automation Engineer / Developer in Test / Software Development Engineer in Test (SDET)
This is where all the action is in the job market right now as test automation is seem as essential for making frequent releases of quality software. Clearly defined expected behaviour and failures are tested for in coded tests that can be run when needed. That could be every time a developer checks in a change of code through to just running against release candidates.
Unfortunately, I don’t think that ‘test’ is really the right word to describe this. A good tester will not only ‘test against the spec,’ but has a sharp eye for stuff that’s just not right, and is expert at breaking things. For now at least, automation cannot manage that.
I have seen a move towards calling this “validation” rather than testing and I think this is a good idea. One that I will try to use in future.
So what does “insert job title here” do?
In reality, anyone with any experience in QA is likely to be doing a mix of both functions. In reality as Kayleigh and Dan concluded, it is really important to read both the job description and talk to the recruiter / employer about exactly what they are looking for.
In my experience, better to be in the right role with an odd title, than take the cool job title but doing work that does not let you grow and develop.
I think I may add a few more posts about how to build your career in QA. I never set out to become an SDET, but the challenges suit me. As a capable coder with a tester’s mindset there are a heap of companies out there desperate for your skills. Make sure that your CV and most importantly your LinkedIn profile are clear and up to date with your (actual) skills so that they can find you!
TLDR:
- Automated testing is a misnomer: Test Automation is really Automated Software Validation.
- QA / QA Analyst / Tester / Test Analyst will spend most of their time performing (mostly manual) software testing.
- Automation Engineer / Developer in Test / Software Development Engineer in Test (SDET) will spend most of their time developing automated tests and writing test frameworks to enable Automated Software Validation.
- Always check the job description and talk to the employer / recruiter as the above may not be true.
- Make sure that your LinkedIn profile reflects your true skills.