Test Planning: The second phase of the software testing life cycle. Part 2 of the series!
Welcome back to our miniseries on the Software Testing Life Cycle. For the uninitiated, check out our first post in the series, Software Testing Life Cycle Requirements and Design Review.
For the rest of you, we’ll be covering the importance of test planning as it is the second phase in the SLTC.
Scope it out!
First and foremost test planning is critical to confine the scope of the software project/product to be tested. Guardrails are set up similar for client facing projects, and test planning a suite/feature is exactly the same. Without a clearly defined scope of features to test and break this phase of the software testing life cycle can run on far longer than intended.
Who and How of the software testing life cycle
On top of determining the scope of the tests, the method for testing the software is critical. This includes the roles of your testers for this phase of the lifecycle. Are you going to have developers testing the features? Will you need beta teams? Do you have a dedicated QA team taking on the bugs/UI Recommendations? For mobile especially your team needs to know its way around the iOS Human Interface Guidelines. The members involved and your plan of attack for testing go hand in hand. So, besides the question of “who’s testing?”, you need know the “how”. How are you reporting bugs? How are you defining a bug/UI Rec.? How are you ensuring two testers aren’t wasting time testing the same features? All of these are of great importance so dig deep and define these early in your test plan.
The Tools for the Job
The tools of the trade are the next critical part of the test planning phase in the software testing life cycle. Here are some of our favorites for reporting and picking up on bugs:
Basecamp is a great tool for keeping the high level points afloat in the midst of a test phase. When the project comes through a test phase make sure you and your teams/clients are using Basecamp to capture all the necessary notes.
If you’re in the software business and you aren’t using GitHub yet then you’ve got some catching up to do. For teams young and old you can’t dismiss the power of a good version control tool. Use Git to break down features amongst teams, test branches of your main feature set and keep the lines clear between multiple teams of developers.
Pivotal Tracker is a final noteworthy tool we use for our QA/Test cycles. Devs, PMs and QA teams use it seamlessly to plan features/releases, pull up the next feature and, for QA, report bugs and UI Recommendations. It is a full-service tool for software companies to ensure they’re shipping quality product.
Devices, Android & Device Labs
Having the right devices for the QA team is essential. More often than not, however, the tools go missing when it’s time to test. Some teams make the mistake of just assuming the test devices will be ready when their build is ready for QA. This can lead to some intense squabbling. Set up a check in/check out policy for your devices and make sure you’ve reserved the iPads when your team is expecting a build soon! This can be tricky with tons of devices running around your workspace so label correctly, keep the would-be thieves in check and guard your devices like buried treasure.
Another key point to note here is that if you’re building software for the Android platforms you better have plenty of room in the office. If your clients are wanting Android apps on all their phones you’ve got a lot of devices to test for so stock up.
Finally, on the subject of devices, see if your city has a local device lab! We will be doing our best to set one up near our Houston offices for you Houstonians following this series.
The Deliverables for this phase of the software testing life cycle
Your final job (your reading this so it’s definitely your job now) is to prep and deliver the test plan document. This does not have to be as messy as the image above, and it certainly doesn’t have to leave a carbon footprint. However, it better be thorough. In it you will need to cover each one of the previous points. Your stakeholders are looking for a doc that reassures them of just how solid the product is pre-launch. If you can’t deliver that, you better cover exactly why the product has some leaks (they all do, let’s be honest) and what you’re doing to fix them.
On the final topic of deliverables in this phase of the software testing life cycle, don’t forget your test estimations and test schedule. For the estimations, make sure the person doing the testing/debugging is the one providing the estimation. No one else will estimate as clearly, and the same is true of development and design. For the test schedule you better have your whole team in the room to knock that out and make sure all parties are on the same page.
So, in summary, keep your test planning for software to the following items:
- Define the scope of features to be tested very clearly.
- Define the method for testing an understand the roles involved.
- Make sure all teams/parties are up to speed on the chosen test tools.
- Make sure your test devices are all in order (mobile, desktop, laptop, etc.).
- Wrap up the test planning phase of the software testing life cycle with your completed Test Plan Doc for stakeholders & team members.
Here’s what’s next in our miniseries on the Software Testing Life Cycle!
- PixelRocket: Software Testing Life Cycle Part 3 – Test Designing
- PixelRocket: Software Testing Life Cycle Part 4 – Test Environment Setup
- PixelRocket: Software Testing Life Cycle Part 5 – Test Execution
- PixelRocket: Software Testing Life Cycle Part 6 – Test Reporting
- PixelRocket: Software Testing Life Cycle Part 7 – Software Release!