1. GNATcoverage User’s Guide¶
- 1.1. Getting Started
- 1.2. Specifying Units Of Interest
- 1.3. Producing binary traces with gnatcov run
- 1.4. Producing source traces with gnatcov instrument
- 1.4.1. Setting up the coverage runtime library
- 1.4.2. Instrumenting programs
- 1.4.3. Building instrumented components
- 1.4.4. Extracting a trace from standard output
- 1.4.5. Composed instrumentation
- 1.4.6. Instrumentation of a multi-languages project
- 1.4.7. Instrumentation and coverage of SPARK code
- 1.4.8. Example use cases
- 1.5. Source coverage analysis with gnatcov coverage
- 1.5.1. gnatcov coverage command line
- 1.5.2. Output report formats (
--annotate
) - 1.5.3. Statement Coverage analysis
- 1.5.4. Decision Coverage analysis
- 1.5.5. Modified Condition/Decision Coverage analysis
- 1.5.6. Synthetic metrics
- 1.5.7. Handling source relocation for annotated sources output formats
- 1.5.8. Inlining & Ada generic units
- 1.5.9. Handling Ada assertions and contracts
- 1.5.10. Processing of C macros
- 1.5.11. Optimization and non-coverable items
- 1.6. Object coverage analysis with gnatcov coverage
- 1.6.1. gnatcov coverage command line
- 1.6.2. Output report formats (
--annotate
) - 1.6.3. Object Instruction Coverage analysis (
--level=insn
) - 1.6.4. Object Branch Coverage analysis (
--level=branch
) - 1.6.5. Focusing on subprograms of interest (
--routines
) - 1.6.6. Inlining & Ada Generic units
- 1.6.7. Full object coverage considerations
- 1.7. Object/Source level metrics considerations
- 1.8. Coverage Consolidation
- 1.9. Coverage Exemptions
- 1.10. Using project files
- 1.11. Importing binary traces with gnatcov convert
- 1.12. Using GNATcoverage from GNAT Studio
- 1.13. Appendices
- 1.14. Glossary of terms & concepts