I keep seeing the same job advertised, in which the company wants someone to test its software from “unit tests to regression tests”.
Now, to my mind, unit tests are something the dev always does. I’m willing to be wrong about this (let’s face it, being wrong is almost my superpower), but it just struck me as odd. I keep seeing the advert, and I’m fairly sure the unit test thing is why the position hasn’t been filled in a couple of months.
It sounds like the company might need a hand in crafting a better job description for this role.
You are right - unit testing has traditionally been a developer task, but I think there’s room and value for a tester to also write and/or run unit tests. Maybe the role could be made more clear if they explain what they expect the tester to do w/unit tests. Or maybe the recruiter who wrote the job advert doesn’t realize there are differences in testing software between devs and testers.
I prefer developers to cover all scripted tests including UI ones so for me yes the unit layer by someone who did not develop the code in the first place seems a bit inefficient.
No issues with a tester with coding skills to help out at all layers including unit coverage but likely a sign something else is wrong or was wrong in the development process if its the main role for a tester to focus on scripted testing.
The argument in favor though is that its fairly common for products to get developed without good automation coverage practices at all, they get to a stage where regression risk is the most important risk the testers can cover.
Changing development practices to do it right at this point is hard and time consuming so that regression risk coverage gets passed on to another group.
Starting with unit tests is a very very sensible move here for the tester covering this risk. Its something that testers can often miss and many will start the very first automation coverage at the madness of the UI layer.
So my guess is this company is likely in that state where they never had regression risk coverage so for them getting the full stack coverage is what they need, makes good sense if this is the case assuming they cannot for some reason address the root cause of poor dev practices when they build the software.
With @andrewkelly2555 here. Testers who can “integration” test and write “mocks” are rare, and all of them were invariably “coders” in a previous life.
It makes sense for testers to create test cases that are not flakey, and most system tests are flakey, so someone who understands unit test code at the app code level and can build and maintain mocks for flakey external dependencies is always going to be an attractive option. However I believe that mocks should be maintained by developers, but tests that consume them be maintained by testers. The advertiser might just not be at that maturity level yet.
Remember to most job ads are written for people who do not understand testing and, very often, also don’t understand software development. E.g., ads commonly say that people will be automating testing.
I would say to not worry much about it and use the interviews to discover what the role will be about in reality.
There is also the incredibly remote possibility that this is an initiative test.
Being a good tester, and keen on reviews, I have emailed the agency asking if they’ll have the client clarify the requirement, because the terminology used might not be entirely accurate. Everything in the UK has stopped for the rest of the week to celebrate Brenda’s Jubilee, so I expect a reply next week - if at all.
I have never seen this in practice, but who knows maybe there are some technical QAs who are helping to write unit tests.
This is an unusual job description. There could be a few explanations.
The first explanation is that a non-technical person wrote the job advertisement and doesn’t understand what the terms “unit test” or “regression test” means. They just see the word “test” and assume it is all the area of QA. In this case, they’ll never find someone.
The second situation is they want someone who is a software developer but handles everything. This person will be rare but they exist.
At some of my clients I do encourage the testers and the developers to pair. The tester might be a SME and know what needs to be tested and the developer will have knowledge of how to automate the tests. Many companies have two much testing at the end. The automation is system level and hard to maintain. In order to balance the test pyramid, we want to have a lot more unit testing and more intermediate testing (contract, integration, etc.). A good tester with automation experience might be able to read unit tests and understand how they test for every specific scenarios. Thus eliminating the need for certain steps in the higher level testing.
A number of unit level test frameworks are adapting a gherkin like format. It is entirely possible that we will see people who can fill this role. I’ve been working with clients for 10 years now. There are old clients out there with testers and developers who have been pairing together. Strong possibility they have learned each others jobs.
I’ve seen it advertised in a job before. The ad also listed off their modern practices, like TDD.
I would never expect to write unit tests unless I was writing the story. I do like the idea of pairing with someone though. That could be a valid reason for unit tests.
Well, it’s been a week now since I sent in the query. I’m assuming the recruitment agency doesn’t look at their inbox that often.
Maybe this company is looking for some tester that can use his knowledge for help the developer team to do better unit test. I think that LIke tester, we knows techniques and approaches that can help for obtain unit test with bettercover and quality
For me this sounds like an Engineering team that does not have a clear Test Documentation. Where the responsibilities of each test levels are described. When working with start up companies who are up scaling fast this seems to be a common trend. I have often had engineering managers ask me in these type of companies/projects if testers can write the unit tests so the developers can produce more work. This is a big no no for me, I am flexible with testers helping out if needs be but their time is better suited to bolstering other parts of our tests. I also feel that scrum masters sometimes get a bit carried away with the agile methodology that everyone in a team can fill in every role which gives me heebie-jeebies, I’m not the biggest fan of engineers conducting exploiting testing