4 ms·
100% test coverage is an ambiguous term. Is it line coverage, branch coverage, and do the branches include arithmetic nonlinearity branches and exception flags?
by obstinate 9y ago
100% test coverage is an ambiguous term. Is it line coverage, branch coverage, and do the branches include arithmetic nonlinearity branches and exception flags? Are all possibly syscall error states tested?
One hundred percent line coverage is admirable, but it's just a start! (Edit: I see that they had far more than just 100% line coverage, but as you can see even this is not enough to find all cases.)
- deleted 9y ago[deleted]
- masklinn 9y ago> 100% test coverage is an ambiguous term. Is it line coverage, branch coverage The linked document answers that both repeatedly and at length: > The SQLite core, including the unix VFS, has 100% branch test coverage under TH3 in its default configuration as measured by gcov. [follow half a dozen paragraph explaining what they mean precisely by branch coverage]
- obstinate 9y agoAnd my edit denotes that I saw that and acknowledged it! :)
- Dor1s 9y agoEven with 100% coverage, there might be the following code (just a one of numerous examples): char buffer[15]; ..... memcpy(buffer, source, strlen(source)); Depending on the `source`, the bug can be triggered or not, but the coverage is the same for different `source` values.