Skip to main content

Getting QA and Developers working closer together as one

Currently where I work there is a lot of discussions around how we can get the QA members to work closer with the developers, almost as 1. A friend demonstrated what they think, and I agree with the following:


It demonstrates where QA and Developers were 5 years ago, where we are now (where we work, I understand that it will vary dependent on the organisation and the methodology) and where we will "hopefully" be within 2 years. I don't think it's unrealistic, however, people need to have buy in and want to improve themselves.

How can we achieve that though is a big question? I think one of the major hurdles is getting QA and Develoeprs on the same level playing field, get them talking the same talk, help QAs get technical... which leads me to the next image, something that I found on the internet:



We as QAs need to get technical, we need to understand code, we need to understand system architecture, we need to be able to discuss technical solutions with developers this will make us better testers and will enable us to work closer with developers.

A common rebuttal of the above is that there are other skills that QAs need such as analysis, problem solving and it would be a shame if we lost them... to which I simply reply, why can't we have both?

How can we get more technical? There are many ways, sooo many courses are online that you can take at your own pace, you can work with the developers and ask them questions about the code they are writing, get involved in writing automated tests, create your own application to practice on the possibilities are endless.

Then there's getting developers more involved in your acceptance test writing, doing ATDD (Acceptance Test Driven Development) where the developers review the test you have written and decide whether they have Unit/Integration/JS tests around that, then you can mark that as appropriate and not have to write a UI test around it for instance. This approach helps the developers feel a part of QA and truly appreciate what it is that we bring to the table, and rather seeing us as someone who finds fault in their code, see us as someone who helps them write better code.

Another one is releasing good quality software on a consistent basis, if the team are being successful and achieving their sprint goals and releasing software then they will feel unified and feel as one. Everyone will see the value in the work everyone else is doing and in doing so, you will all become closer as a group.

Finally, and one that I think gets overlooked, is socialising as a team, going out for lunches, going out after work for drinks, just build a team spirit. It's easy to do and more often than not, it's fun to do as well. Never underestimate the power of being friendly with your coworkers/developers.

So that's some ways of how QAs and Developers can work closely together, are there any ways that you can think of that will help?





Comments

  1. I think ultimately the QA & Dev roles should merge - there is no reason why a good developer shouldn't also be responsible for ensuring the quality of their own work, and there's no reason why a good tester shouldn't be able to apply their natural analysis and problem solving skills to be able to write code. Ultimately, the goal of the two roles is the same - to produce awesome software, and the division of responsibilities between the roles seems primitive to me.

    ReplyDelete
  2. I encourage tester's to "get technical" to improve rapport within project teams, to add benefit at code reviews, and to gain a little credibility. But it is a two way street and I appreciate the challenge of bringing developers and testers together.

    We made a change recently in our organization where developers are responsible for demonstrating requirements. They demonstrate them through unit testing (either manual or automated). Where some requirements are more challenging to evaluate, the development and testing team collaborate on creating tests.

    By making this simple change, quality becomes a team sport and everyone makes a contribution to a great product.

    ReplyDelete
  3. Keep up the great work, I read few blog posts on this site and I believe that your website is really interesting and has loads of good info.
    Selenium Training Chennai
    software testing selenium training

    ReplyDelete

Post a Comment

Popular posts from this blog

What is a PBI?

After my last post, I had the question of what is a PBI... so I thought i'd write a short blog post about what they are and why they are used.

A PBI is an acronym for Product Backlog Item. It is a description of a piece of work that your SCRUM team will develop and deliver. When you have a list of Product Backlog Items, you then refer to that collective list as a Product Backlog.

The product backlog is often prioritised and yourteam will work through each PBI, and release on a regular schedule... I am however going deep into the world of Agile development, which isn't entirely what this post is about, so I will stop myself now.

A Product Backlog Item is made up of the following:

Title - This is often a one liner that gives the team an idea of what the PBI is about, although it can just be an ID for the item and the team work off of that.

Description - Breaks down the PBI in a bit more detail, and can be written in any style, however I prefer it to be written as follows: 



By writin…

Dealing with Selenium WebDriver Driver.Quit crashes (Where chromedriver.exe is left open)

We recently came across a problem with Selenium not quitting the webdriver and this would then lock a file that was needed on the build server to run the builds.

We were using Driver.Quit() but this sometimes failed and would leave chromedriver.exe running. I looked around and found this was a common issue that many people were having. We (I say we, as we came to the solution through paired programming), came up with the following, that would encapsulate the driver.quit inside a task and if this task takes longer than 10 seconds, then it will clean up any processes started by the current process, in the case of the issue on the build server, it would kill any process started by Nunit.

[AfterTestRun]
        public static void AfterTestRun()
        {
            var nativeDriverQuit = Task.Factory.StartNew(() => Driver.Quit());
            if (!nativeDriverQuit.Wait(TimeSpan.FromSeconds(10)))
            {
                CleanUpProcessByInheritance();
            }
       }

        private s…

Advantages of using Test Management tools

Before I start talking about test management tools, let me clarify what I mean by the term test Management tools...  I am not taking about your office excel program where you store your test cases in. I'm talking about bespoke test Management tools, your quality centers or Microsoft test manager...
In the strict case of the term test Management tool, Microsoft Excel can be used as such, but heck, so could a notepad if used in the right way... For the sake of this blog post I am talking about bespoke test Management tools.
Firstly, what test tools are out there? There are many more out there today than when I first started in QA over 5 years ago. When I started the market was primarily dominated by a tool called Quality Center, this would run in a browser (only Ie unfortunately) and was hosted on a server.. Nowadays it's market share has somewhat dwindled, and there are some new kids on the block. 
One of the more popular tools is that of Microsoft Test Manager, it's big…