单元测试
Vise app 目前使用全套 typescript + esm 配置进行单元测试。使用的工具如下:
"@vue/test-utils": "^2.0.0",
"vitest": "^0.34.6"
测试配置文件请参考 vitest 文档.
单元测试规范
全面 typescript 及 esm
Vise 强制源码使用 typescript 及 esmodule 方式管理,包括单元测试代码。
测试代码命名规范
测试代码文件名应为 ${modulename}.spec.ts
,位于被测试模块同级的 __test__
文件夹中。
示例:
├── modules
│ ├── module-a.ts
│ ├── module-b.ts
│ ├── __test__
│ │ ├── module-a.spec.ts
│ │ └── module-b.spec.ts
esm 的坑
目前 Vise 及底层的 vite 使用了 import.meta.url
等 meta 信息,这部分源码在 ts-jest 等工具中尚不支持,目前的解决方案是把这部分代码的单独放入 src/data/env.ts
,并在测试的时候 mock。