You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular12升级至14后测试报错:TestBedStatic无configureTestingModule属性

Angular 12升级到14后测试报错:Property 'configureTestingModule' doesn't exist on type TestBedStatic 解决办法

问题说明

使用ng update将Angular 12应用升级到Angular 14后,应用构建和运行正常,但测试执行失败,出现错误:Property 'configureTestingModule' doesn't exist on type TestBedStatic。

当前依赖版本

@angular/core: ^14.2.0
jasmine-core: ~3.8.0
jasmine-marbles: ^0.8.3
karma: ~6.3.0
protractor: ^7.0.0

测试示例代码

beforeEach( () => {
    TestBed.configureTestingModule({
        providers: []
    });
})

解决办法

1. 升级测试依赖版本

Angular 14对测试相关依赖有明确的版本适配要求,当前jasmine-core(3.8.x)和karma(6.3.x)版本偏低,需升级到兼容版本:

  • 执行命令更新依赖:
    npm install jasmine-core@~4.5.0 karma@~6.4.0 --save-dev
    
    若使用yarn则对应调整命令。

2. 检查TestBed导入正确性

确保测试文件中导入的是Angular官方的TestBed模块,避免导入第三方库的同名对象:

import { TestBed } from '@angular/core/testing';

3. 清理缓存并重新安装依赖

  • 删除node_modules目录和package-lock.json(或yarn.lock)文件
  • 执行npm install重新安装依赖
  • 运行ng test重新执行测试

4. 验证Angular CLI配置

确保angular.json中测试相关的配置未出现版本冲突,比如builder指定的@angular-devkit/build-angular:karma版本与当前Angular版本匹配。

内容的提问来源于stack exchange,提问作者Aayushi Jain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:27:23