关于 check-rust-coverage
用于查找 Rust 源码中未被测试覆盖行的技能。可接收一个或多个 crate 路径及目录,并从 `cargo llvm-cov` 输出中列出未覆盖行号。
主要功能
- 01接收一个或多个 crate 路径
- 02处理包含 Rust crate 的目录
- 03按文件报告未覆盖行
适用场景
- 01定位 Rust crate 中未测试的代码行
- 02检查多个 crate 的覆盖情况
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ redisearch/ redisearch --skill check-rust-coverage安装后在 Claude Code 中输入/check-rust-coverage确认已加载。
详细介绍
检查 Rust 覆盖率
确定哪些 Rust 代码行未被 Rust 测试覆盖。
参数
<path>:Rust crate 的路径。<path 1> <path 2>:多个 crate 路径。
如果路径不包含 src/,则假定其位于 src/redisearch_rs 目录中。例如,numeric_range_tree 对应 src/redisearch_rs/numeric_range_tree。
如果路径指向一个目录,则检查该目录中的所有 Rust crate。
说明
运行
cargo llvm-cov test --manifest-path <crate_directory>/Cargo.toml --quiet --json 2>/dev/null | jq -r '"Uncovered Lines:",
(.data[0].files[] |
select(.summary.lines.percent < 100) |
.filename as $f |
[.segments[] | select(.[2] == 0 and .[4] == true) | .[0]] |
unique |
if length > 0 then "\($f): \(join(", "))" else empty end
)'
获取目标 crate 中每个文件的未覆盖代码行列表。
评论
支持 Markdown