
code-coverage-with-gcov
by gadievron
Raptor turns Claude Code into a general-purpose AI offensive/defensive security agent. By using Claude.md and creating rules, sub-agents, and skills, and orchestrating security tool usage, we configure the agent for adversarial thinking, and perform research or attack/defense operations.
SKILL.md
name: Code Coverage with gcov description: Add gcov code coverage instrumentation to C/C++ projects version: 1.0 author: Claude tags:
- coverage
- gcov
- testing
Code Coverage with gcov
Purpose
Instrument C/C++ programs with gcov to measure test coverage.
How It Works
Build with Coverage
gcc --coverage -o program source.c
Run Program
./program
# Creates .gcda files with execution data
Generate Reports
Text report:
gcov source.c
# Creates source.c.gcov with line-by-line coverage
HTML report:
gcovr --html-details -o coverage.html
Coverage Flags
--coverage(shorthand for-fprofile-arcs -ftest-coverage -lgcov)- Add to both
CFLAGSandLDFLAGS
Build System Integration
Makefile
ENABLE_COVERAGE ?= 0
ifeq ($(ENABLE_COVERAGE),1)
CFLAGS += --coverage
LDFLAGS += --coverage
endif
CMake
option(ENABLE_COVERAGE "Enable coverage" OFF)
if(ENABLE_COVERAGE)
add_compile_options(--coverage)
add_link_options(--coverage)
endif()
When User Requests Coverage
Steps
- Detect build system (Makefile/CMake/other)
- Add
--coverageto CFLAGS and LDFLAGS - Clean previous build:
make cleanorrm -f *.gcda *.gcno - Build with coverage:
make ENABLE_COVERAGE=1orcmake -DENABLE_COVERAGE=ON - Run tests:
make testor./test_suite - Generate report:
gcovr --html-details coverage.html --print-summary - Present summary and path to HTML report
Output
Text (.gcov files):
-: 0:Source:main.c
5: 42: int x = 10;
#####: 43: unused_code();
5:= executed 5 times#####:= not executed-:= non-executable
HTML: Interactive report with color-coded coverage
Metrics
- Line coverage: Executed lines / total lines
- Branch coverage: Taken branches / total branches
- Function coverage: Called functions / total functions
Target: 80%+ line coverage, 70%+ branch coverage
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 1000以上
3ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon