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

Angular升级后Karma测试报错:无法加载@angular-devkit/build-angular

解决Angular升级后Karma测试崩溃的问题

刚升级Angular就碰到Karma测试崩了,这种版本迭代带来的配置兼容问题确实头疼。结合你给出的错误日志,我帮你梳理下修复步骤:

先排查依赖安装问题

错误里提示找不到@angular-devkit/build-angular,先把依赖这块捋顺:

  • 删掉node_modules文件夹和package-lock.json(或yarn.lock),彻底清理旧依赖
  • 重新安装全部依赖:
    npm install
    
  • 如果重新安装后还是报错,手动安装适配当前Angular版本的构建包:
    npm install @angular-devkit/build-angular --save-dev
    

检查Karma配置文件(karma.conf.js)

这是最容易出问题的地方,新版本的Angular对Karma插件的引用方式变了:

  • 确保plugins数组里正确引入了官方插件,替换掉旧的路径引用:
    plugins: [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage'),
      require('@angular-devkit/build-angular/plugins/karma') // 重点是这行
    ]
    
  • 错误日志里提到config.buildWebpack.options报错,说明你可能手动修改过Karma里的Webpack配置。新版本中buildWebpack的结构已经调整,建议尽量使用Angular CLI生成的默认配置,不要随意修改这块的属性路径。

同步angular.json的测试配置

有时候升级后项目配置文件的测试构建器路径没更新:

  • 打开angular.json,找到projects -> [你的项目名] -> architect -> test部分,确认builder字段是:
    "builder": "@angular-devkit/build-angular:karma"
    
    而不是旧版本的@angular/cli:karma之类的写法。

清理缓存再重试

最后清理掉Angular的缓存,避免旧缓存干扰:

ng cache clean --all
ng test

如果还是不行,可以手动删除项目根目录下的.angular/cache文件夹再重新运行测试。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:44:02