Closed arvinxx closed 1 year ago
🎊 PR Preview 3d9a212682caf2c6bec4f174843a1afb3935fe31 has been successfully built and deployed to https://ant-design-antd-style-preview-pr-43.surge.sh
:clock1: Build time: 108.383s
🤖 By surge-preview
:tada: This PR is included in version 3.0.1-beta.1 :tada:
The release is available on:
Your semantic-release bot :package::rocket:
:tada: This PR is included in version 3.1.0 :tada:
The release is available on:
Your semantic-release bot :package::rocket:
配置文件
vitest.config.ts
esbuild
(可选) : 字段用于配置 esbuild 编译器的行为,其中jsxInject
字段表示在编译 jsx 代码时,注入React
对象,以便能够正确地编译 jsx 语法。因此组件里建议移除 React 引入,拥抱 React18 标准;test
字段用于配置测试用例的行为:setupFiles
:运行测试用例之前需要先执行的文件路径environment
:默认是 node,指定成 jsdom 能保持和 jest 一致;后面可以看下替换成happy-dom
,据说更快;globals
:表示测试用例使用全局变量(expect、describe)等。由于 vitest 默认不会注入测试的全局变量,因此需要将 global 开启;testTimeout
字段表示单个测试用例的最大运行时间,这里设定了 20000 毫秒;coverage
:测试用例覆盖率报告的输出格式,设定为文本、JSON 和 LCOV 格式的报告。测试调整部分
由于配置了
global
,95% 的测试文件不用改。要改的只涉及到 jest mock 的。函数 mock
全局替换
jest.fn
为vi.fn
。整个模块 mock
将
__mocks__
提到目录最顶层,例如tests/__mocks__/zustand.ts
->__mocks__/zustand.ts
。然后在测试方法里添加:模块的个别方法 mock
需要替换为: