Testing is the step in the development process for making that your online web platform or mobile app works before you launch it. There are different types of testing to look at different aspects of your product, and then there is a process to actually plan and execute the testing.
In this week’s article, I’ll look at 5 steps for planning and executing your testing. These 5 steps primarily apply to application (system) testing, integration testing, user acceptance testing and beta testing. Performance testing is a different beast, as it requires some technical tools to complete.
The 5 steps to make sure your platform or app works properly are:
- Creating a test strategy
- Writing test scripts
- Preparing for testing
- Executing the testing
- Reviewing the results
1. Creating a test strategy
For each type of testing, you want to start by creating a test strategy. This outlines all of the pieces required to do the testing including:
- What you’re going test
- When you’re going to do the testing
- What your goals are
- How you’re going to do the testing
- Where you’re going to test
- What you’ll test each day of the testing
- Who needs to be involved
- How will problems be resolved
- What the entry/exit criteria are (e.g. what must be completed before the testing can start/end)
- How you'll track the progress of the testing
This can be a list of bullet points or it can be a detailed paragraphs. The point is that you think about these things before you start your testing.
Your developer may already have tools and processes in place for some of these things, but it’ll be up to you to find out what these are and to see if they are adequate for your testing.
There’s also such as thing as “over-testing” – where you test until things are perfect. While it seems like the ideal thing to do, one thing you need to know is that most software is launched with known bugs and issues – they’re just not serious ones. As you create your test strategy, factor this into your entry and exit criteria so that you don’t end up testing forever and never launching!
2. Writing test scripts
Once you’ve created your strategy, you need to write some test scripts (or “acceptance criteria”) for what you’re going to test. These scripts describe what you’re testing, step-by-step instructions for completing an activity and what you expect the outcome to be. You need to create scripts for all of the functionality that you describe in your original product definition. This includes all of the “normal” scenarios and any “exception” scenarios.
Doing this is going to be a big task, but it makes things a lot easier during the testing as you know exactly what you need to do and what you’re expecting your platform or app to do.
3. Preparing for testing
This step is about looking at your test strategy and making sure all of the pieces are in place – have you got the resources that you need? Has the issue management process been set up? Is the testing site ready? Have the entry criteria been met? You want to hit the ground running when the testing starts. You don't want to waste time and delay the testing because something isn't ready.
Preparing for testing is extremely important for beta testing if you're coordinating a lot of people. You need to make sure that they have the right setup and proper instructions, so they can perform the testing. It doesn't inspire confidence if people have to wait around for you or if your testers aren't given the right direction!
4. Executing the testing
Execution is about completing your test scripts according to the schedule that you’ve defined. You follow the steps in your scripts and if something doesn’t work, you notify your developer to fix it. You should document your findings – including screen captures – so that if something does go wrong, you can go back and look at what you did.
During the testing, you also need to track and monitor your progress to make sure you meet your timelines, and to make sure your platform or app is working correctly.
5. Review the results
This last step is an important one. You want to make sure you’re happy with the outcome of your testing. As you track and monitor your testing, you get a feel for how well your platform or app is working. You look at the number of issues that you encounter, and see how many test scripts that you’ve been able to complete successfully. If there are lots of issues, then you may want to pause the testing until some of the issues have been fixed. You should keep testing until your exit criteria have been met.
Why do I need to do all of this?
As discussed last week, you want to make sure that your product works! You want to ensure the best experience for users, and broken functions don’t inspire confidence or positive references.
Another reason for going through this process is you need to be clear about what you want to test, so you can be happy your platform or app works properly! You also need to align with your development team on what you expect so that they can meet those expectations.
Finally, in order to be effective, testing needs to be done in a way that is specific and repeatable. If you do something and it doesn’t work, the first thing that the developer is going to want to do is recreate the problem. If you can’t tell them what you did, then they can’t figure out what went wrong. Also, when the problem is fixed, you need to re-test the functionality in the same way to make sure that the fix works.
Testing – despite it’s tediousness – is actually quite rewarding! You get to see your finished product in action, which is always exciting. You also assure yourself that your product works the way that you want it to.
Stuck on how to test your app? Sign up for a free 30-minute discovery session* to get you on the right track.