As Marc Andreessen once wrote, the software is eating the world and almost every company needs to become a software company. Competition is fierce and there is no room for error. If you slip up and release faulty software, you will feel chill breath of competition on your neck.
Software testing is an integral part of the whole software development process, but for most companies, it is not their core activity. That’s why it makes sense to let software testing go into the hands of professionals so you can focus on what’s important – innovating and building new features.
Even though it is not that hard to hire some qualified software testing engineers, it can be very expensive to build and maintain a high performing and specialized in-house quality assurance team.
But how do you choose the most appropriate and qualified software testing service provider? This simple 6-step guide sums up the most important criteria that should be taken into account when choosing a quality assurance partner. Keep reading! 🙂
1. Understand Your Needs and Ask Around
OK, how do you even start the search process? First of all, you should perfectly understand what kind of service provider are you looking for. Do you need software testing or development as well? In the latter case, you will need to look for full-cycle service providers. But if you require only testing services, I would suggest choosing experts in the field.
Ask your friends from the industry about service providers that they can recommend. Most probably they will have a few stories to share and they will give you a great insight on how these providers work in real life. How technically experienced are they? What’s the communication? Are they delivering their work on time?
Gather a list of companies that are worth investigating further. Actually, you can find ready-made lists of leading software testing providers like one from TEST magazine. Then go through their web pages and look at what they have on offer and how they are presenting themselves.
Contact them to schedule a call to better understand their availability and possible cooperation options.
2. Development of Custom Solutions
Every testing project is different and while engineers most likely will use industry standard tools and techniques, usually there is a need for custom development to integrate testing into clients CI/CD pipelines. Ask your candidates for their experience and aptitude for creating custom testing frameworks or integrations with your existing systems. If you find a testing provider with strong software development capabilities, most likely they will be able to come up with a solution for every roadblock they will encounter by creating products and testing solutions with high added value, for example, audio/video quality, battery/data usage testing labs. In this case, your cooperation will be richer comparing to simple outsourcing of testing resources.
3. Engagement Models
When it comes to engagement models look for a flexible service vendor that can offer its services that suit your needs. Depending on project size, complexity, estimated duration, technologies that need to be used, the engagement model could change or even be a mix of some. There are two main engagement models with its own specifics
- Main location in client’s premises
- Engineer with particular knowledge and skill set
- Physically available
- Main workspace – from a vendors office location
- Reduced overall costs
- All necessary infrastructure freely available
Resources can be outsourced for short-term involvement or long-term projects that include test process creation, setup of tools and frameworks and ongoing testing. Ask your candidates about the availability of engineers. What is their lead time and what amount of resources can they provide?
Plus, take into account the location of the service provider. In some cases, it can create unwanted delays because of time zones, legal issues, slow process of getting travel visas. Remember, the ultimate goal of outsourcing is not only decreasing costs but improving the quality of your product by engaging with experienced professionals.
4. The Team and Its Capabilities
Keep in mind that the team of QA engineers, leads and managers will be responsible for your product quality and future success. Before signing an agreement, make sure that your product is in good hands. Ask your candidates if their engineers are certified and follow best practices. ISTQB (International Software Testing Qualifications Board) is a worldwide leader in the certification of competences in software testing. Possession of ISTQB certifications shows that the quality assurance specialist follows best practices when testing and filing bug reports.
Ask for CV’s of specialists before signing them to your project and you can even conduct interviews to test their technical, language or cultural capabilities.
Even if you are working with certain technologies, you can benefit from an experienced partner who has extensive experience of various testing tools, frameworks, practices and can help you choose the right solution for your project and combine a team of engineers that ticks every box on the list of your technical capabilities and experience needs.
Look for appropriate industry expertise. It is one thing to be an expert in software testing, but something else to understand the industry of said product. The more your testing partner understands the business you are operating in, the better the outcome of testing will be.
Whether you are willing to build your QA team from the ground up or looking for additional workforce, don’t be afraid to ask for a pilot project. It will be a great preview of the real outcome and quality.
5. High-Quality Reports
The pilot project is a good way to go, but very often these pilot projects don’t come for free. If the paid pilot project is not for you, no worries, there is a plan “B”, which might come in handy – test report examples. Every QA service provider should have a bunch of different test reports that can be shared with potential clients and reflects the real outcome of provided services. Pay attention to both data and how they are represented.
6. Service Level Agreement
OK, the company looks good and team interviews went well. Now it is important to sign a contract and start working. Contract signed between the service provider and the client defines the output expected from cooperation. It is important to align goals between both parties, so your contract should include at least these items: product quality measures (KPIs), reporting and project management approach, knowledge transfer, intellectual property protection, and core business know-how. As business needs can change overnight, try not to lock yourself into long term agreements.
TestDevLab – Your Software Quality Assurance Partner
We’ve been in the software testing business for close to 10 years and by working with both startups and Fortune 500 companies like Microsoft, Skype, Twilio, we have grown our team to over 120+ ISTQB-certified engineers. We work with a wide spectrum of technology testing solutions starting from manual to automated testing across mobile, desktop, and web, and help our clients ship better products faster.
We take pride in our custom testing frameworks, audio/video quality testing and battery/data usage testing labs, performance and load testing solutions mobile applications and web applications using our custom built testing products like Loadero and Apimation. Plus, we have >600 real physical devices for testing.
Contact us and let’s schedule a call to discuss our potential cooperation.