ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Pascal Editor测试指南:Bun test与Turbo测试任务组织全解

Pascal Editor测试指南:Bun test与Turbo测试任务组织全解 Pascal Editor测试指南Bun test与Turbo测试任务组织全解【免费下载链接】editorOpen-source 3D architectural editor with a local CLI, MCP tools, and practical workflows for humans and AI agents.项目地址: https://gitcode.com/GitHub_Trending/editor93/editorPascal Editor 是一款开源 3D 建筑编辑器本项目采用Bun test TurborepoTurbo测试任务来组织整个 Monorepo 的测试。这篇 Pascal Editor 测试指南会用最短的篇幅讲清楚600 多个测试文件如何分布、bun run test一条命令背后的执行链路以及新手最容易踩的“裸bun test”陷阱。一句话认识测试架构Pascal Editor 是一个 Bun Workspaces Turborepo 的 Monorepo工作区包括 apps/、packages/、tooling/ 三大块配置见根目录 package.json工作区职责测试脚本packages/core场景 Schema、状态管理无 UIbun test srcpackages/viewerReact Three Fiber 3D 渲染bun test srcpackages/nodes墙、门、窗等建筑节点定义bun testpackages/editor编辑器组件与业务逻辑bun test srcpackages/cli本地 CLI给人类和 AI Agent 用bun test srcpackages/mcpMCP 工具层bun testapps/editorNext.js 主应用bun test lib全仓库共有616 个测试文件*.test.ts全部与源码同目录存放co-located例如slab-polygon.ts旁边就是slab-polygon.test.ts找测试、补测试都不迷路。如何跑测试三种粒度一键全量bun run test在仓库根目录执行bun run test # 等价于 turbo run test它通过 turbo.json 中的test任务驱动所有工作区。任务定义有两个关键点dependsOn: [^build]先构建依赖包多个包的测试从dist/导入产物outputs: []测试不产生缓存输出避免脏缓存。单包测试bun --cwd切换目录只改了一个包时不必跑全量bun --cwd packages/core run test bun --cwd apps/editor run test单文件直接指定路径bun test apps/editor/lib/empty-graph-guard.test.ts测试写法非常直白以 empty-graph-guard.test.ts 为例——它守护“空场景覆盖写入 74 节点真实场景”这类事故describetestexpect三步走新手可以直接照抄import { describe, expect, test } from bun:test describe(isEmptyGraphOverwrite, () { test(blocks a 0-node write over a populated server copy, () { expect(isEmptyGraphOverwrite(0, 74)).toBe(true) }) })新手避坑为什么必须用bun run test而不是bun test这是官方 CONTRIBUTING.md 里专门点名的一条用bun run test不要用裸bun test。原因test是 Bun 自己的子命令直接敲bun test根本走不到 package.json 的脚本。Bun 的收集器会扫描它能找到的所有文件——包括dist/下的编译副本——导致测试数量虚高、结果失真。而bun run test会进入 Turborepo 链路先构建依赖、再按各包自己限定作用域的脚本如bun test src执行。另外 bunfig.toml 的[test]段预加载了 scripts/bun-preload-three.ts提前把react和three求值一遍绕开 R3F 生态 CJS/ESM 混用时的require() async module is unsupported竞态。你不需要关心它但它解释了为什么这个项目能放心用 Bun 跑 React 相关测试。进阶性能基线与发布门禁基准测试packages/core提供bun run bench:registry、bun run bench:schema对 registry 与 schema 节点解析器 做性能回归发布门禁packages/cli 的prepublishOnly串起了check-types → build → test → 打包运行时 → smoke 冒烟测试不过发不出去浏览器测试packages/viewer/tests/ 下有独立 README 说明的浏览器端用例与bun test src的纯逻辑测试分工明确。上手清单安装 Bun 1.3Node 20.9bun install装依赖全量验证用bun run test日常开发用bun --cwd 包 run test新增功能时在源码旁补一个同目录xxx.test.ts提交 PR 前再跑一次bun run checklint/formatbun run test掌握这套「Turbo 编排 Bun 就近测试」的组织方式你就能在 Pascal Editor 这个大型 Monorepo 里又快又稳地跑测试了。【免费下载链接】editorOpen-source 3D architectural editor with a local CLI, MCP tools, and practical workflows for humans and AI agents.项目地址: https://gitcode.com/GitHub_Trending/editor93/editor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表