183
edits
Mnandigama (talk | contribs) No edit summary |
Mnandigama (talk | contribs) No edit summary |
||
| Line 14: | Line 14: | ||
Code coverage data in isolation is a very incomplete metric in itself. Lack of coverage in a given area may indicate a potential risk but having 100% coverage does not indicate that the code is safe and secure. Look at the following example provided below. This is code coverage data grouped by component in the Firefox executable and the data is collected from automated test suites run only. Additionally there are a bunch of manual test suites that provide extra coverage. | Code coverage data in isolation is a very incomplete metric in itself. Lack of coverage in a given area may indicate a potential risk but having 100% coverage does not indicate that the code is safe and secure. Look at the following example provided below. This is code coverage data grouped by component in the Firefox executable and the data is collected from automated test suites run only. Additionally there are a bunch of manual test suites that provide extra coverage. | ||
[[Image:Covdata.png|center|Firefox Code Coverage Trends over time , grouped by Component.]] | [[Image:Covdata.png|center|683x433px|Firefox Code Coverage Trends over time , grouped by Component.]] | ||
Given the above information, one tends to gravitate towards low code coverage components to develop tests to improve product quality. | Given the above information, one tends to gravitate towards low code coverage components to develop tests to improve product quality. | ||
| Line 20: | Line 20: | ||
However, if you are provided an additional data point, like size of the component, you may realize that filling a 40% coverage gap in say '''Content''' gives you a bigger bang for the buck than improving 100% code coverage in '''xpinstall'''. [Side note: This data is generated on Linux so, there would be no coverage for '''xpinstall'''] | However, if you are provided an additional data point, like size of the component, you may realize that filling a 40% coverage gap in say '''Content''' gives you a bigger bang for the buck than improving 100% code coverage in '''xpinstall'''. [Side note: This data is generated on Linux so, there would be no coverage for '''xpinstall'''] | ||
<br> | |||
[[Image:Covdatafilesize.PNG|center|Component sizes : Number of files in a component]] | |||
[[Image:Covdatafilesize.PNG|center|Component | |||
== How == | == How == | ||
edits