source
与输入的源代码相关的选项。
source.decorators
source.decorators
用于配置装饰器语法。
如果你使用了 TypeScript 的 experimentalDecorators,此处应将 source.decorators.version 设置为 legacy。
source.assetsInclude
source.assetsInclude
指定额外需要按静态资源处理的文件。
当你的测试会导入 Rsbuild 默认资源规则之外的文件类型时,这个配置很有用,比如 .txt 或 .md。
如果你已经通过 @rstest/adapter-rsbuild 或 @rstest/adapter-rslib 复用 Rsbuild / Rslib 配置,source.assetsInclude 也会被自动继承。
source.define
source.define
构建时将代码中的变量替换成其它值或者表达式,可以用于在构建时向代码注入环境变量等信息。
source.exclude
source.exclude
排除不需要被 SWC 转译的 JavaScript 或 TypeScript 文件。
Note
在 source.exclude 中配置的文件不会经过 SWC 转译,但被引用的文件仍然会被打包到产物中。
如果你希望某些文件不被打包到产物中,可以使用 output.externals 配置项或 Rspack 的 IgnorePlugin。
source.include
source.include
指定额外需要编译的 JavaScript 文件。
source.transformImport
source.transformImport
配置按需导入转换规则。
rstest.config.ts
Caution
source.transformImport 会在编译阶段改写最终的模块请求。
当前实现下,rs.mock('pkg')、rs.doMock('pkg')、rs.importActual('pkg')、rs.requireActual('pkg') 这类仍然使用原始 specifier 的模块级 mock API,可能无法命中被改写后的模块请求。
source.tsconfigPath
source.tsconfigPath
配置自定义的 tsconfig.json 文件路径,可以是相对路径或绝对路径。