It can be challenging to make a game plan for the future without knowing where you've been, and a great way to track your progress is Key Performance Indicators (KPIs). They're also a great way to show your higher-ups solid metrics if they wonder whether test automation is worth it (spoiler alert, it is). But that's not their only goal; KPIs can also help you make key business decisions. But if you're wondering what KPIs you can measure for test automation and how they help your company, then this is the article for you!
A quick overview on KPIs in case you're unfamiliar with them: KPIs are a way to measure performance and evaluate general success, usually with analytics and numbers, but not always. For automated testing specifically, KPIs can help track progress on what is being tested and see if there are any goals that you haven't met. Other benefits of KPIs include demonstrating exactly how much you test each sprint/month/quarter/whatever-time-period-you-like and how many of those tests are passing and failing (performance metrics). Maybe those KPIs reveal a spot in your Application Under Test (AUT) where tests are more likely to fail, and DevOps needs to take a closer look. These are just some general examples, but you should tailor what KPIs you track to fit your needs and ensure that your testing efforts are being spent in the right places.
KPIs aren't a "one size fits all" deal. Each organization is different, and only your testing and development teams can really know what you need to measure. Now, you probably shouldn't track everything. You should carefully choose what kind of metrics you want to track throughout your automation testing process to stay as efficient as possible.
A good place to start is the business goals. Now if you work for an insurance company, there probably isn't anything in the company objectives about test automation, but you need to know your tests' pass rate if you have a client portal or forms to fill out on your website. If you have a concerning fail rate in a certain area, it could be indicative of a larger problem.
KPIs should also serve a purpose beyond looking good — they should be actionable, so if there's an area of testing that isn't up to scratch, improving them will help your organization achieve milestones. Quality KPIs are key. Instead of overwhelming your spreadsheet with all the metrics for automation testing you can think of, focus on targeted KPIs that will help you make decisions. Ok, time to focus on some specific test automation metrics.
If you've recently switched over from manual tests to automated tests, this can be a great metric to ensure that you really have sped up your testing process (one of our favorite metrics is that Virtuoso makes test authoring 9x faster!).
As mentioned earlier, this common metric (also called failure rate) is good for ensuring that a huge part of your site hasn't broken all at once, and it's generally a good number to keep in your head.
You can do a few things with this KPI, including comparing the rate of bugs to your fail rate to ensure that you're writing robust tests (though with an automation tool like Virtuoso, the elimination of flaky tests means that these numbers should be pretty even), noting the percentage of bugs repaired, or tracking which areas bugs show up in the most.
No two bugs are alike (I'm sure there's a Dev out there who'd like to argue with me about that), and some are much more devastating than others. Tracking this percentage will keep you up-to-date about how often a major bug rears its head or makes it into production.
On that note, if you're testing your application both before and after production (which you should be!), this KPI will tell you how many bugs slipped through your net. A higher percentage here can tell you when it's time to reevaluate your testing strategy.
Not every test that is written is necessarily run, but if the difference between those two numbers gets too high, then you could have an efficiency problem on your hands.
This metric measures how long a bug remained in production without being detected by starting with the latest release and ending when a test catches the bug. This can also speak to your test automation efficiency while improving your software quality over time by working to reduce the time a bug survives in the wild.
I've bundled several KPIs into this one: you can track the number of tests run per team member, the number of bugs caught per team member, and the time each member spends authoring tests. Again, these all tie back to efficiency. Even if all you're running is a website, there's still a lot to be tested, so you need to make sure your testing teams are using their time wisely.
If you're an Agile team that works in sprints, this KPI is great for checking that you're getting all your required testing done each sprint. Ideally, all work assigned in sprint planning should be complete by the end for peak efficiency.
This is a number that you can probably easily pull from your testing platform, but it's also a very important KPI. You can use it in several different ways from figuring out how much time it takes to run your entire test suite to getting the average run time per test. If this number is too high, then it may be time to look at a platform that can run your test suite faster.
As I may have mentioned, we love a good KPI here at Virtuoso, and another good one is that Virtuoso makes your test execution time an average of 10x faster through robust tests and parallel testing. Plus with our reporting features, we generate a lot of common KPIs for you! You can check them out for yourself by writing some tests for free (and enjoying a faster test authoring experience) or talking directly to our team about making your testing more efficient. Happy metric tracking!