Quality Assurance (QA) testing: What is it, why do we do it and how do we do it?
Obviously, testing is a hugely important part in any software development company but here at cloudThing we’ve a dedicated Testing team whose sole job is to ensure all Solutions implemented for a client undergo the highest quality assurance.
The most important thing to remember when testing is that humans are fallible.
In regards to software development, some errors in a code being released can be small and have little impact but some can have large, detrimental impacts to an organisations reputation, security or efficiency.
Mitigating Risk Through Testing
The key point in mitigating the risk of errors in a piece of software to be released is getting a fresh set of eyes on the work.
It’s common in the dev sector for developers to do their own testing and that’s OK to a certain extent but all they’re really doing is verifying that the code they’ve created is functional.
That’s where cloudThing’s Quality Assurance team step in.
A dedicated team of independent testers who have a great understanding of modern, digital test techniques and tools that they employ for both functional and non-functional testing ensuring both the code and User Experience (UX) is of the highest standards.
The problem with testing is that you can’t always test all the things, all the time, to the same standard.
So how do you mitigate against that?
The best place to start is with one of our key solution principles
For cloudThing testers that boils down to three main objectives:
- Proving that the client is satisfied
- Preventing and detecting defects
- Making sure that timely accurate information gets back to all key decision makers
Implementing The Test Strategy
The test strategy is crucial to everything we do and devising something that makes sense to every single project and every single client is what we aim to do.
It’s not a ‘one size fits all’ situation, we tailor it to everything we work on.
We think about the technologies we’ll be working with, what is the essence of the project, what are the core functional requirements, what are the integration points, could you leverage the benefits of testing automation and if so, what is the core of this?
So, we put a test strategy together with all that in mind.
Another key thing to think about and acknowledge are the risks that you may be exposed to and with this, we’ll go to our clients and have a conversation and discussion about what we think they may come across and how to avoid it.
Such risks can include reputational, financial, regulatory, technical, operational, and so on.
Once identified, we can talk about the probabilities of it and the impact it may have on their business.
This is where our test strategy is created in order to mitigate these risks.
Emma Cowley – Head of Testing at cloudThing
How Does Testing Work In Practice?
Where possible the cloudThing test team do all their testing as the solution is being developed (rather than it being a final tick box exercise at the end).
Our ambition is to test as soon as part of the solution is created, raise any possible issues, send the fixes back and then re-test them so that we can give much quicker and more efficient feedback into our development team.
What makes a good QA tester?
A good Quality Assurance tester needs to be both a great communicator and listener.
cloudThing recruits people who are able to listen to our clients and understand what they want from their project as well as being able to listen to the developers creating the solution and make sure the relationship between all three is harmonious.
That leads onto them being a good verbal communicator.
Our testers need to be able to communicate with developers about any issues within their coding and work in a way that keeps a good rapport with them.
Another good quality is having a ‘tester’s sixth sense’, meaning that you are great at sniffing out defects so that you can then figure out how to test them and reduce the risks. Unfortunately, no one has enough time to test everything and so prioritisation is also important.
You need to be able to identify the most critical risks first and act on them.
Finally, a passion for quality and delivering fabulous software to clients is up there as the most important!