Did you know that there are different types of testing that should be done on your new online web platform or mobile app? Each type of testing has an important role to play in making sure that your end product works the way that you expect it to. In this article, I’ll describe the different types of testing so that you know what you have to do for your platform or app.
Imagine that your launch your product and your first users can’t sign in. Imagine you have a massive growth spurt and your product can’t support the number of users trying to access the platform. In the life of a new product, this is bad news!
There is a good bet that your development team will not test your product in a way that will ensure that it works the way that you want it to – probably because you haven’t paid them to. Testing is a specialist activity so your developers are not likely to have the skills to do parts of it properly (their specialty is coding!) This means it’s up to you to drive the testing phase of your project.
So, before you launch your product to the world, what types of testing do you need to do?
At a high-level, there are 5 different types of testing that you’ll want to look at:
- Application (or System) testing is about making sure everything within the platform/app works correctly from a features and functions point of view.
- Integration testing is for making sure that the platform/app talks with all other applications correctly (think payment gateways, email automation, CRMs, etc.)
- Performance testing is used to check the speed and responsiveness of the platform/app under different conditions.
- User acceptance testing allows the business (e.g. you) to check that the platform/app works in the way that it's expected to in view of all of the surrounding operational processes.
- Beta testing puts your platform/app in the hands of “real” users so they can put it through the rigours of everyday use.
Traditionally, in large corporates, the technology department will do the system, integration and performance testing. In your case, you’ll have to own this and you’ll probably combine system, integration and user acceptance testing all into one. The developers should be able to run performance testing (as it needs specialised tools to do this), but you’ll have to tell them what you expect should happen.
There is one more type of testing that you’ll have to do. This is called “regression testing”. Regression testing is about making sure that any changes to a platform or app don’t affect what’s already there. So, if your developer fixes something, you’ll want to test that what was fixed now works, but you’ll also want to re-test some of the functionality that is related to that feature to make sure that the fix hasn’t broken something else.
Testing under a waterfall methodology
If you’re developing your platform or app using a waterfall methodology, then testing occurs after the “build” phase. You’ll probably do a combined system, integration and user acceptance test at that time for all of the functionality that has been built. In the meantime, your development team should do some performance testing to make sure your platform or app can deal with the volumes of users that you expect. Once all of that’s completed, you’ll want to do some beta testing as well.
Testing under an agile methodology
If you’re using an agile methodology to build your platform or app, then you’ll be doing some testing along the way. As each component is built, you’ll do some system testing and maybe some integration and user acceptance testing to make sure that each piece works. What you test will depend on the component being built and what has been built before it. For example, if you want a user to be able to create an account and then you want to send those details to an email automation tool, you can only test the “integration” after both of those pieces have been built.
You’ll only be able to test your operational processes as part of your user acceptance testing (e.g. sending a welcome email) after you’ve added that to your email automation too. What this means is that you should do some integration and user acceptance testing after all of the coding has been completed. This will ensure that everything works together. Finally, look at doing some beta testing, so that you can get real people to put your product through its paces.
You need to test your product to make sure that it works! There is nothing worse that launching a product only to have key features and functionality that don’t work properly.
There are different types of testing to do and each has a different purpose. Testing is a lot of work and the amount of effort should not be overlooked as you build your product. It’s such an important step to ensuring a successful launch. You’ll need to decide what types of testing that you want to do, so make sure you factor it into your timelines.
Next week, we’ll look at how you actually do the testing.
Want to learn more about how to test your platform or app? Sign up for a free 30-minute discovery session* to make sure your users can use your app!