MPS 2026.2 早期访问计划已启动。首个早期访问版本(EAP1)带来了测试报告的多项改进、查找结果分组的增强,以及更流畅的编辑体验和更可维护的启动基础。此版本使多节点选择更可预测,并让 MPS 启动配置更贴近 IntelliJ 平台。
除大量 bug 修复外,此构建还引入了以下关键改进。
编辑器测试:灵活的结果匹配
当编辑器测试不需要与预期结果完全匹配时——例如,子节点的顺序或某个属性的值无关紧要——你现在可以告诉 MPS 忽略哪些差异。
有两种方式可自定义结果匹配:
- 节点匹配规则:声明自定义匹配规则。你可以指定哪些包含角色(containment roles)应被比较、忽略或排除,以及哪些属性或引用不应被比较。
- 单节点标记:当例外情况仅适用于一个节点时,使用意图菜单直接在结果夹具(fixture)中为该节点添加标记。
无论采用哪种方式,你不在乎的部分不再导致虚假失败——而当测试确实失败时,消息现在会直接指向负责的节点和单元格,无需再通过原始断言进行排查。
此改进源于一个直接客户请求。它确保了更少的脆弱编辑器测试,并减少了对夹具的维护工作。
更详细的测试失败消息
编辑器测试失败——如错误的选择、编辑器单元格“ID”不匹配或选择范围错误——现在会准确描述涉及的节点和单元格,而不是报告一个裸断言失败。失败消息中提到的每个节点都会附带其展示形式、概念名称和节点 ID,这使得在结果夹具中定位问题节点更加容易,无需在调试器中复现失败。
Find Usages 结果中的虚拟包
Find Usages 结果树现在支持按虚拟包分组。启用后,使用结果会嵌套在对应虚拟包的文件夹节点下,其结构与 Project 面板中展示的一致。带点的虚拟包名(如 com.example.ui)会按段展开成树层级,使 Find Usages 的嵌套与 Project 视图中的嵌套虚拟文件夹一一对应。
此分组选项位于 Find Usages 工具栏上,与已有的模块、模型、根节点等分组选项并列,且默认开启。其他显示使用结果的工具窗口(如 Model Checker、TODO、Dependencies Viewer、Refactoring View)则保持原有的默认分组方式。
多节点选择与启动配置改进
在编辑器中选择模型的一大块区域时,使用 Select Up(Ctrl+Up)现在能更自然地完成。此更新使多节点选择的行为更可预测,同时 MPS 的启动配置也更贴近 IntelliJ 平台的标准,为后续维护打下了更扎实的基础。
除了这些关键改进,此构建还修复了大量 bug。如果你正在使用 MPS 进行语言工程或开发基于 MPS 的产品,EAP1 值得尝试——尤其是那些受脆弱编辑器测试困扰的团队,此更新可能有助于减少调试时间。
热门跟贴