Well, this is an old question, but Google made me here, so I’ll just add my views.
Software inclusion and associated ratings are related to testing coverage, but I would say more than just a percentage of the code. This is an indicator of how good your tests are in troubleshooting. So you enter 100 errors and your tests find 60 of them. You missed 40% of the errors. Perhaps you had 100% code coverage in the tests and still missed these errors. If you had a set of tests that said to state (1 == 1), you would have missed 100% of your errors.
Of course, then the question arises about the quality of the injections (i.e., they cause observable errors, it is an error that is important enough to check, the code is available, etc.). But that is another matter.
Finally, another aspect is reliability testing, with tools like Chaos Monkey, which kills VM instances from your live system to evaluate how your system handles failures, recovery, etc. But this is a slightly different point of view, as you introduce errors at the system level, and I assume that this question was at the / unit test code level.
source share