Time and time again, I hear project managers struggle when it comes to the testing phase of their project because there isn’t enough time allocated to get the work done.
Scheduling time for testing is always a challenge, because you don’t know what you don’t know.
You might find zero defects (unlikely, but theoretically possible!).
You might find dozens more than you were expecting. How can you estimate time for something like this?
The truth is that you can’t.
Allocate as much time as you think is appropriate based on the length of the execution phase. Plan for at least two test cycles (a test cycle is test – fix – retest). Keep some flexibility, and test as much as you can while you go along so that the overall burden of testing is as small as possible because you’ve been picking up and fixing some errors along the way.
Here are some more tips for managing project testing.
1. Use A Test Plan
If you take nothing else away from this article, take this: you have to plan your testing. A structured test plan means that nothing is overlooked. All your tests should be included on the plan. You should also include who is going to do the testing (and make sure they are the right person to do so) and the dates that the testing is scheduled for. Use your project planning software to build out this section of your schedule, and use other documentation to supplement your schedule. Then everyone will know what is expected of them and what they should be working on at any given time.
2. Include Non-Functional Tests
When you ask your team what to test, they will always talk about testing the functionality. It’s what the user sees. It’s the most obvious thing that needs to be tested. You can cross-reference what was in the product specification. However, you might have to prompt a bit harder to get the team to discuss what else needs to be tested. Non-functional requirements are things that don’t relate to what the deliverable does, but how it performs. For example, on a website it would be the speed of the site, its reliability and back up plans. For a physical product it might be durability, compliance with safety regulations or waterproofing. These are really important aspects to test to ensure the final product is fit for purpose.
3. Test for Failure
Often we approach testing to check if something works. That’s great, and is a good starting point. But also test to destruction! Try to break what you have made. Click the website features in the wrong order to see what happens. Use your product in a way that it shouldn’t be used to check it still operates in a safe and reliable way, with clear error messages as required.
4. Get Users Involved
The project team and any dedicated testers you have will be key to the testing process. But you can also benefit from having end users join you with the testing. Ask them to test out the product. Does it work for them? Can they follow the process adequately? What are they doing that you wouldn’t have expected? You’ll get valuable feedback from asking users (or their representatives) to be involved with this part of product development. Be prepared to support them through the testing phase. You may have to prepare test scripts or have one of the experienced members of the team sit with them while they are using the product.
5. Keep Great Records
You’ve got a test plan and people to test. You have the right attitude for testing and are going to look at all elements. It’s unrealistic to assume that all your tests will pass. The point of testing is to uncover issues so you can fix them before the product goes live, so every error is a win! It means you have the opportunity to correct something before it reaches the customer. However, you need a way to record what happened and what you are going to do about it. Keep really good, detailed records of your test activity. Record what you did that generated an error, what the defect was, and provide details so that someone else can replicate the problem. This information goes to the team responsible for fixing the issue. Then you can test again, following exactly the same steps that led to the defect in the first place, to assure yourself that the bug is corrected. The better you are at logging errors, the easier it is to fix them and retest them. Project testing is an important part of your overall work on a project. Spend enough time on it, and do it thoroughly to get the best results.
This article was written by Elizabeth Harrin.