动态

最新动态

版本发布与公告,最新的在前。每一条背后的完整技术细节请参阅更新日志。

✉ 通过邮件获得通知

每条公告一封邮件,仅此而已。随时可退订,无需登录。

2026-10-04

fucini-coverage —— 命令行上的 Coverage Studio,免费

VS Code 版和 Visual Studio 版背后的读取器,现在也能在没有编辑器的地方运行:npm install -g fucini-coverage 把它装到 Windows、Linux、WSL 和 macOS 上。fucini-coverage check 是流水线的门禁 —— 行、分支、函数、MC/DC、条件、一个分支相对于 origin/main 改动的行 —— 低于阈值时以退出码 1 结束;export 把运行写成 CSV、Markdown、LCOV、Cobertura 或 SARIF;report 写出 HTML 报告,badge 写出徽章,compare 写出相对于上一次通过的运行有什么变动,mcp 提供 AI 智能体可以询问的六个工具。读入二十七种格式,像编辑器那样合并,数字精确到每一位都相同。

它读取 Visual Studio 版所读的设置文件 fucini-coverage.json,键与 VS Code 的设置相同,因此团队只需设置一次阈值,每个版本和每条流水线都按它来评判。每个命令都自带说明:fucini-coverage help check。它是免费的,随两个版本的 2.2026.0 build 1 一同发布 —— 见 npm 上的 fucini-coverage 和下载页面。

The command line on the demo: --help, summary, check with two gates passing, export as Markdown, compare against a baseline, badge, report and the MCP server's helpScreenshot pending — add assets/img/cli-demo.gif (see SCREENSHOTS.md).
2026-10-04

Coverage Studio 2.2026.0 for VS Code 和 for Visual Studio —— 屏幕上的覆盖率,供 AI 智能体使用

编写测试的智能体以前可以运行测试并读到一个百分比,却无法询问编辑器所知道的内容。从 2.2026.0 起可以了:六个工具分别回答函数的哪些行从未运行、分支的哪一侧没有走到、哪些测试运行了某一行、一份差异是否已被覆盖,以及自上次运行以来有什么变动 —— 依据的是已加载的运行,排除项和数值都与屏幕上的相同。VS Code 自己的智能体无需任何设置即可使用这些工具;凡是使用 MCP 的智能体,都通过一个服务器访问它们,这个服务器在你开启后由编辑器运行,只在本机上,并由你自己的令牌保护。具体做法见用户指南。

两个版本现在使用同一个版本号,并随之带来 1.2026.7 以来的全部内容:失败的测试运行过的行会被标记,Run Tests Affected by My Changes… 只运行改动涉及的测试,新代码的门槛与整个运行的门槛并列,排除可以写明原因,Show Minimal Test Set… 找出仍能运行每一行的最少测试,GCC 14 的条件覆盖率逐行显示,Run This Test with Coverage 支持 Go 和 Rust,新代码可以按作者和日期统计,zip 形式的 CI 工件可以打开,Run App with Coverage… 测量人工操作所到达的范围,Run Mutation Tests Here 则检验测试能否察觉改动。.NET 报告现在会显示其分支覆盖率,此前它被 Coverlet 的写法遮住了:这些数值会有变化。在 Visual Studio 中,订阅的方案现在决定的内容与在 VS Code 中相同。每一步都在更新日志中,两个构建都在下载页面上。

2026-09-29

Coverage Studio 1.2026.7 for VS Code 和 1.2026.6 for Visual Studio —— 哪些测试运行了某一行、每次保存后的覆盖率,以及 CI 基线

本次发布为两个版本各增加了十项功能。Coverage Studio 现在可以指出哪些测试运行了某一行并打开它们,在每次保存文件时运行覆盖该文件的测试,带覆盖率运行光标下的那一个测试,并把每次加载与主分支构建所发布的报告相对照。不应计入的内容可以从树中、按命名空间或特性、或在代码所在之处排除;.NET 运行可以按命名空间、类和方法查看;树上有一个也能理解 < 80% 的搜索框;覆盖率会话会累加多个测试套件的运行,直到你结束它。在 Visual Studio 中,Run Native Project with Coverage 会用 clang-cl 的插桩运行启动 C++ 项目。用户指南为每一项都有专门的章节。

修复包括:测试运行的报告不再带有你的用户名和计算机名,只含宏的头文件不再显示为 100% 的文件,MC/DC 构建的分支数据与 llvm-cov report 一致,五种曾被当作不支持而拒绝的报告格式现在能被识别。全部内容见更新日志,两个构建都在下载页面上。

2026-09-28

Coverage Studio 1.2026.6 for VS Code 和 1.2026.5 for Visual Studio —— 完整路径中的通配符,以及两种重新被识别的报告

把报告写到自己文件夹下的构建 —— build/coverage-merged/*.lcov.info,每个模块一份 —— 现在可以在 coverageFile.paths 中用带通配符的完整路径来指定,在 VS Code 中和在 Visual Studio 中一样;两个版本都会监视这类条目指定的文件夹:下一次构建的报告一落地就会加载,无论项目打开时那里是否已有报告。用户指南列出了条目可以采用的形式。

两种曾被当作不支持而拒绝的报告又能读取了:一份 llvm-cov 的 JSON 导出,其首个文件记录长到把所有可识别的内容都推到了被检查的开头之外;以及一个有十几个函数的 gcov --json-format 文件,它先列出函数再列出行。全部内容见更新日志,两个版本都在下载页面上。

2026-09-26

Coverage Studio 1.2026.5 for VS Code 和 1.2026.4 for Visual Studio —— 两份报告,一个答案

当两份报告有意测量同一份代码时 —— 由 clang 和 GCC 分别构建的同一套源代码,或同一构建的单元测试和集成测试 —— 不必再让最新的那份胜出。按文件选择由哪份报告代表它,或将它们合并:agree 只有每份报告都运行过的行才算已覆盖,并以青绿色标记各报告不一致的行;union 则任一报告运行过即可。在 Coverage 视图中右键单击文件并选择 Choose Coverage Source...;用户指南说明何时使用哪一种,演示项目中还有一个 clang 与 GCC 的示例可供试用。

两个版本还都新增了红-琥珀-绿装订线模式,把已覆盖的行涂成绿色;可在实时预览中设置热力图的色阶;并在状态栏上显示与其打开的卡片相同的数值。全部内容见更新日志,两个版本都在下载页面上。

2026-09-24

Coverage Studio for Visual Studio 1.2026.2 —— 每次测试运行、每种报告,以及什么变动了;还有 VS Code 1.2026.3

首个版本发布一天之后,Visual Studio 版本就有了订阅者在 VS Code 中最常用的功能:每次 Test Explorer 运行后的覆盖率,且不挂钩 Test Explorer;Run Tests with Coverage;显示自上次运行以来变动的三角形、历史和差异覆盖率;把发现放进 Error List 的 Check Coverage Thresholds;独立窗口中的带注释源码、HTML 报告、八种导出和徽章;风险热点和行筛选器;以及解决方案旁的 fucini-coverage.json,供不愿保留 .vscode 文件夹的团队使用。更新日志列有每一项,用户指南的 In Visual Studio 方框说明每一项在哪里。

VS Code 1.2026.3 带来两个版本共有的两项新功能 —— 树下方的风险热点,即复杂代码与低覆盖率相遇的函数,以及排序旁的筛选器,可选有缺口的文件、未测试的文件或自上次运行以来更改过的文件 —— 还有面向 .NET 的三项:无需 Coverlet 包的 dotnet test、从每个总计中排除的生成文件和设计器文件,以及保留最后一次良好覆盖率的失败运行。两者都在下载页面上。

2026-09-24

Fucini DevOps Studio:Coverage Studio 的全部覆盖率都上构建,以免费扩展的形式

Azure DevOps 今天就能在构建上显示覆盖率,但仅限于其自身格式所及:行,以及以百分比表示的分支。Fucini DevOps Studio 将改为把 Coverage Studio 读取的全部内容放到构建上 —— 25 种格式中的每一种,适用于每种语言,带有 MC/DC、条件、区域、综合分数、CRAP 分数和门槛 —— 作为生成它的流水线上的 Coverage 选项卡,数字与编辑器显示的一致,精确到每一位。同一个读取器,在需要它的第三个地方。

10 月 3 日更新:它将免费 —— 整个扩展,在 Azure DevOps Services 和 Azure DevOps Server 上都免费,不会有付费版。这是预告,不是发布 —— 请在上方订阅,以便在它发布时得到通知。

2026-09-23

Coverage Studio for Visual Studio 发布 —— Community、Professional 和 Enterprise,2022 和 2026

同一个读取器,在另一个 IDE 中:下载它,打开解决方案或文件夹,您的构建已经写出的报告就在代码上 —— 在没有自带覆盖率的 Visual Studio 2022 Community 和 Professional 上也是如此。所有付费套餐均包含;已激活 Coverage Studio for VS Code 的机器无需单独的密钥,其他任何地方 Tools → Coverage Studio → Licence… 接受您的订阅代码。入门页面带两个编辑器走过同样的六个步骤,用户指南说明两者的差异,更新日志说明这个首个版本包含什么。

同时发布 VS Code 1.2026.2:同样的六个步骤作为 Welcome 页面上的演练,以及把安装 ID 留在 Visual Studio 版读取的位置,这样一次激活即可覆盖两者。条款也有一项变化:退款现在会立即终止它所支付的订阅,每位客户一次退款 —— 详情见退款政策。

2026-09-20

前路上的第七个产品:Coverage Studio for Visual Studio

Coverage Studio 即将登陆 Visual Studio —— Community、Professional 和 Enterprise,2022 和 2026 —— 内置同一个读取器,因此同一份报告在两个编辑器里给出的数字精确到每一位都相同。它在 Visual Studio 自身一无所有的地方最有价值:在 Visual Studio 2022 中,代码覆盖率是 Enterprise 功能,使用 Community 或 Professional 的 C++ 或 C# 团队从未在该 IDE 中见过覆盖率,无论他们的构建已经写出了什么。它将随 Coverage Studio 订阅一起提供,不另收费,就在您已经在使用它的那台机器上。了解它能做什么,以及不会做什么。

已宣布,尚未发布:在提供下载之前,正在 Visual Studio 的两个版本上进行测试。在上方订阅,以便在发布时收到通知。

2026-09-06

前路:六款产品发布公告,各有专属页面

fucini.software 上不再只有 Coverage Studio。今日公告,均尚未发布:FuciniLog,面向 Windows 主机和嵌入式目标、端到端加密的小型日志收集器;Fucini Beacon,零配置发现,让设备在被分配地址之前就能宣告自己是谁;Fucini DevOps Studio,把覆盖率、Wiki 样式和分支创建带入 Azure DevOps;FuciniUML for VS Code;Fucini Running Coach;以及 Fucini Puzzle Solver。

每款产品都有一个页面,说明它是什么、运行在哪里,以及(对 FuciniLog 而言)采用哪些标准、哪些部分开源。如果其中某一款对您至关重要,请通过联系页面告诉我们——顺序就是这样决定的。在上方订阅,即可在每款产品发布时收到通知。

2026-09-03

十一种新格式:Go、Ada、Swift,以及你的构建本就会写出的东西

两周前 Coverage Studio 能读六种格式,现在是十七种。Go 的 coverage.out、PHP 的 Clover、.NET 的 OpenCover、coverage.py 自己的 JSON 以及 gcov/gcovr JSON 都可直接加载——无需转换步骤,途中也不丢失任何指标。

接着是安全团队真正拥有的工具:GNATcoverage XML 终于把 Ada 纳入进来,BullseyeCoverage 与 Visual Studio 的 .coveragexml 覆盖商用 C/C++ 与 .NET 工具链,而 SonarQube 通用覆盖率则是其余一切的应急出口。Swift 和 Objective-C 通过 Xcode 自带的 xccov 报告进来——有百分比和按函数的计数,但没有逐行数据,因此那里的边槽标记是刻意留空的。

Coveralls JSON 收尾,任何受支持的格式现在都可以以 gzip 压缩形式送入,各语言的可复制粘贴配方见 Coverage Recipes 页面。

2026-08-22

隆重推出 Fucini Coverage Studio Community —— 永久免费

评估试用结束后不再直接中断,现在每次安装都会转入一个永久免费的 Community 层级:除 MC/DC 之外的全部功能、每月可少量体验的 Full HTML Report 与常驻的 Annotated Source 视图,以及对少数可自动化操作设置的宽松每日上限 —— 其余一切均不受限制。

想要不付费就解锁一切,包括 MC/DC?请从命令面板运行 “Fucini Coverage: Unlock Full Features”,以详细的使用遥测换取完整、不受限制的授权 —— 随时可以撤销。

Community 现在也有了自己独立的、永久免费的发布版 —— 请前往下载页面直接获取。

2026-08-22

团队方案:Pro Plus、Business 和 Enterprise

这三种方案现在共享一个“席位池” —— 一个公司代码覆盖固定数量的设备 —— 而不是每台机器一个单独的密钥。安静一段时间的席位会自动释放给下一个需要它的人,后台签到会让每个人的授权保持最新,无需任何人手动重新申请密钥。

完整的方案对比请参阅价格页面。

2026-08-22

推荐计划已上线

获得所推荐用户支付金额的 20%,为期他们的前 12 个月。完整算例见推荐计划页面。