There are several ways to go about software testing. Some companies test entirely in-house, some outsource all their testing, some rely on beta programs, others use crowdsourcing. Many companies use a combination of testing scenarios.
“According to a recent report from analyst company Pierre Audoin Consultants (PAC), software testing is one of the most important tasks for 91% of IT departments, and almost all believe it is crucial to outsource this activity. The report also revealed that three-quarters of companies already use service providers with onshore and offshore capabilities to provide testing services,” wrote Computer Weekly.
So if you’re not keeping all the testing in-house, how can you be sure it will see be successful and up to your standards? It starts by being prepared, knowing what you need and having continued dedication to your choice.
Here are a few particular focus areas to make sure the integration of your in-house testing and outside testing goes smoothly and ends in success.
- Know why you’re considering outside help
There are several reasons companies seek outside testing help:
- Limited in-house testing team
- Working with tight time frames
- You need an expert you don’t have on staff
- To free up your in-house team to deal with more important testing tasks
- To cover a wider testing matrix
- To ensure your product works in-the-wild
Knowing why you’re seeking outside help is vital to choosing the correct auxiliary company, having a successful experience and successfully integrating your in-house efforts with the outside testing.
- Clearly define roles
Figure out what you’re going to keep in house and what you’re going to move to the new team. Redundant testing and small tasks (like regression testing or bug fix verification) are ideal for an outside team and will free up vital in-house testers to work on pain points, new features and critical bug fixes. Moving a portion of testing out of house is a great way to ensure testing is comprehensive and complete while allowing your in-house team to focus on what’s most important. Clearly defining the roles of each team with help keep everyone on task and avoid unintentional work overlap.
- Have realistic time goals
Software testing is often rushed as it is. Be aware that you are working with an outside company and that will take extra time. If you’re working with a good company that has a slew of testers ready and waiting your project could get up and running fairly quickly. But don’t forget to factor in ramp-up time and time to review the bugs once they come in, plus time to go back and ask questions if necessary. When choosing an outside company, ask them about their ramp up time and about general time frames.
That being said, integrating outside testing into your overall testing plan will eventually reduce the time needed to complete tests. To achive this, you’ll nee to choose an outside company that provides personal a project or account manager and stick with them. As time goes on your project manager will learn your business and gain an on-going understanding of your testing needs. This will often allow them to get a test case underway faster and with less on-ramping. They will also have a better understanding of your other testing activities, be able to write better, more accurate testing instructions and better ensure testing stays in scope and helpful.
You are working with a company that does not know your product or your testing practices. You need to tell them exactly what you need, what you’re looking for, what you’d like testers to do, the time frame you’re working with, what’s out of scope and any other small piece of information you can think of. Don’t assume anything or you could end up disappointed and frustrated. Open channels of communication will help ensure your outside testing experience is successful. It’s equally important to continue communicating throughout your collaboration, not just at the beginning. Check in regularly to ensure everything is on schedule, being completed as you need/expect and that there were no miscommunications at the beginning of the process. It’s better to catch a problem halfway through a test cycle than when the work is “complete.” It also might be that the testing instructions you initial gave were too broad or you decide that it’s best to change course or refocus the outside testing efforts. Good communication is key to a successful relationship.
- Have a dedicated in-house point-person
Designate one person (or a small team of people) to be the point person for the outside team. This person will work with the outside team to define testing requirements and monitor the outside team’s work to make sure it is what the company is looking for. This person should also serve as a go between for the in-house and outside team. He/She should know that is happening with each team at all times to make sure work on both sides are complimentary and useful. If you don’t have a dedicated point person something will definitely fall through the cracks.
- Evaluate tools, not just services
If you’re doing in-house software testing, odds are you have a set of tools you’re already using. Don’t forget to factor these into your decision. Keeping in-house tools in mind can help you identify testing gaps and decide what kind of testing you need help with. Be sure the data and test results generated by the outside company can integrate with your in-house bug tracking system or any other tools you are using. Don’t forget to consider tools provided by the outside company. Many testing companies have their own custom testing tools that can be a giant help.
- Pick the right company
This is the most important factor when it comes to a successful in-house and outside services testing collaboration. Before you start shopping around, meet with all the important players at your company to decide what you want to achieve with outside testing and what your expectations are. Does your company subscribe to the Agile methodology? Then you’ll need a company that can keep up with that fast-paced environment. There are a range of crowdsourced and outsourced testing companies to fit a variety of needs. Some let you run the entire show, some provide staff to help you along the way. Some companies let you put your project out there and wait until testers claim it, some let you invite or pick the testers, some create a custom team for you. Be sure to shop around and pick the company that will best match your needs and has a demonstrable, successful track record.
Use this list as a guide to help you identify key factors in a successful in-house/outside pairing. Before you commit to an outside company, be sure you’re prepared in-house and choose a company that will help you, not slow you down.