cluacov:Lua 分支覆盖率工具
cluacov 是 LuaCov 的 C 扩展,提供两种分支覆盖率实现:行级钩子(兼容 Lua 5.1-5.5 / LuaJIT)和指令级钩子(Lua 5.4+)。指令级路径通过 LUA_MASKCOUNT count=1 实现,能精确检测短路条件下的分支,并输出 LCOV 格式报告。支持生成 HTML 覆盖率页面。
- 静态分支发现:通过遍历 Proto.code[] 识别所有分支点
- 指令级路径:每条 VM 指令触发一次回调,按 PC 记录命中,避免行级近似导致的歧义
- 性能:行级钩子整体约快 1.25-1.34x,但指令级钩子在紧循环场景下由于回调更轻量可能更快
- 安全设计:首次写入时快照 Proto 元数据,避免 GC 期间解引用原始指针
项目报告:原文链接
原文
#开发者 #工具
📢 频道:@DevToolboxHub
Post #360
1
