Jest Error: Cannot set base providers. After Angular v13 upgrade using 'ng test'

Jest Error: Cannot set base providers. After Angular v13 upgrade using 'ng test'

将 Angular 升级到 v 13 后,当我尝试 运行 在 jest 环境中进行测试时出现错误:

Cannot set base providers because it has already been called
import 'jest-preset-angular/setup-jest';

此外,我按照 post 中指出的那样配置了 Jest:https://thymikee.github.io/jest-preset-angular/docs/next/guides/esm-support/ 但它对我没有帮助。 需要帮忙。我怎样才能修复我的测试?

我遇到了同样的问题。 Angular 13 的 ESM 支持似乎尚未发布。 https://thymikee.github.io/jest-preset-angular/docs/next/guides/angular-13+

但是,已经合并了一个 PR (https://github.com/thymikee/jest-preset-angular/pull/1122),大概可以解决这个问题。

我的解决方案是删除 setup-jest.ts 文件,因为 import 'jest-preset-angular/setup-jest'; 已被 @angular-builders/jest 执行。