Test Metrics to die for

[frame_left][/frame_left] Yes, there are a few of them you would want to die for. Here are some examples from our Test Collab application in order of their importance (but order varies for different type of organizations):
1. Average time taken per test execution: This tells you efficiency of testers. And a sudden rise or fall can be a bad news for software managers.
Why is it important?
Keeping close eye on this will help managers knowing if something is changed abnormally in the project or if suddenly there’s a communication problem in team or if just testers are not working productively.

2. Defects Reported: Total number of failures/defects in project reported since creation.
Why is it important?
Every defect reported from your test case management tool is a cost expense which needs to be paid before you deliver. Keeping in close touch with this metric will keep you connected with project’s target date and budget and make smarter decision when need arises. Sudden rise of this metric means your project health is coming down and your developers might not be doing a good job.

3. Average success % per execution: No of passes / No. of total test cases executed * 100 (Ideal value: 100%)
Why is it important?
This metric tells you what % of cases are passed and failed on average. Higher value indicates the project is going great and there’s a great communication between developers and testers. Rising value indicates team is improving itself and paying more attention to the quality. Declining or a low value is bad sign and that’s when a manager should jump in to take necessary steps to fix it. Make a rule for lowest value in your organization and tell your developers to maintain this. If they don’t jump in to find out the reason.

4. Test Cases: Total number of test cases in a project.
Why is it important?
A greater number of test cases usually suggest that team has worked well identifying what to test as end-user in a particular feature or the whole project. A greater number early while development and with slow rise during development also suggests that project is in good direction.

5. Test Executions: Total number of test executions in project. Don’t forget that each execution contains various set of tests.
Why is it important?
At lower level this metrics tell you how much testing has been performed on a project, not in terms of the time but total number of instances. Comparing this value with your other projects can suggest you if there were greater/lesser effort spent on testing. And sometimes, depending on project outcome, you can acknowledge if this worked in your favor or against (even though a project failure can be occur by various reasons).

6. Time spent on testing: Total time spent on testing in a project.
Why is it important?
For very obvious reasons. This can tell you how much time you’re spending on testing (excluding your test management time though). You can compare this with your planned cost of testing or cost of project. If that tells you that you’re spending 60% of allotted time of a project in testing, you can focus on improving your testing process and thereby reducing the time.

There are several other important metrics which you should not forget:
1. Defects per size: Defects detected / system size
2. Cost to report a defect: Cost of testing / the number of defects reported
3. Defects detected in testing: Defects detected in testing / total system defects
4. Defects detected in production: Defects detected in production/system size
5. Quality of Testing: No of defects found during Testing/(No of defects found during testing + No of acceptance defects found after delivery) *100
6. Effectiveness of testing to business: Loss due to problems / total resources processed by the system.

This list covers some major standard testing metrics. There can be several metrics in your organization. So which metrics do you die for? We’ll appreciate your input.

P.S. See also how we do it in Test Collab:

Involve everyone in team to your testing process

Your testing process includes creation of new test cases, execution of tests and compiling the stats into important business conclusions. Be it your developer, designer, tester, manager or CEO. In some companies, I’ve observed it is completely left on testers to maintain and execute tests. Don’t be one of them.

I think you should involve everyone to your testing process and here’s why:

1. More members mean more cases. It also means more time to execute, but prioritising tests will overcome that issue.

2. Developers alone can’t lay down all the test cases. For UI testing, it’s equally important for a designer to submit some test cases which shall be checked from time to time.

3. Every team member has different set of interests where they are at their best. Let them think over what tests should be performed on such areas.

4. An idea for test case can strike at the speed of light in every other team member’s brain anytime. If you will have a ready to use platform, they will use it which will add to the product’s quality. Also, see a hypothetical case study on this.

5. Everyone sees things differently, so if you get more team members to execute tests you will see different type of feedback coming.

At the end, what matters is your commitment to testing. But Test Collab automatically encourages whole teams to take part in testing process once you start using it, and tries making testing a habit in organization.

Start of our Test Case Management software

Not too long ago, we realized that we don’t have a very efficient testing procedure in place along with our release cycles. We were infact doing worst at testing when compared to other processes. The problems were:

1. Testing was done by testers in isolation and reporting was terrible manual using spreadsheets. There was nothing concrete which we could refer as “Test Execution report”.

Continue reading

1 5 6 7