【问题标题】:Jasmine Karma fails with 'ReferenceError: process is not defined'Jasmine Karma 因“ReferenceError:未定义进程”而失败
【发布时间】:2021-10-08 07:20:12
【问题描述】:

我最近从 Angular9 更新到 Angular 12。更新后我的测试开始“失败”。我对此有引用,因为测试本身似乎很好,但是每次运行后都有一个“错误”条目,它不是很有帮助

Uncaught ReferenceError: process is not defined
ReferenceError: process is not defined
    at Object.71732 (http://localhost:9876/_karma_webpack_/webpack:/node_modules/util/util.js:109:1)
    at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpack/bootstrap:19:1)
    at Object.89122 (http://localhost:9876/_karma_webpack_/webpack:/node_modules/assert/build/internal/assert/assertion_error.js:35:16)
    at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpack/bootstrap:19:1)
    at Object.80469 (http://localhost:9876/_karma_webpack_/webpack:/node_modules/assert/build/assert.js:36:22)
    at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpack/bootstrap:19:1)
    at Module.82736 (http://localhost:9876/_karma_webpack_/main.js:2879:64)
    at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpack/bootstrap:19:1)
    at webpackContext (http://localhost:9876/_karma_webpack_/webpack:/home/kewur/workplace/Project/project-app/src|sync|/\.spec\.ts$:111:1)
    at Array.map (<anonymous>)

我有点难过,因为错误非常含糊。我是否遗漏了一些额外的依赖项,我需要在此升级中承担这些依赖项?我没有在代码中的任何地方引用进程,所以它所指的必须在 webpack 或 karma 中?

【问题讨论】:

  • 您是否安装了兼容的 nodejs 版本? process 让我想起了 nodejs。
  • 我目前使用的是 14.17。这是我的“ng 版本”输出 Angular CLI:12.1.4 节点:14.17.4 包管理器:npm 6.14.14 操作系统:linux x64

标签: angular karma-jasmine karma-webpack


【解决方案1】:

我最终不得不定义一个“模拟”流程对象。我认为 Angular 的较新版本(我现在是 12,从 9 开始)不包括 nodeJS 进程对象。

基本上,我在应用程序的根目录添加了一个新的“test”文件夹,并添加了一个名为 global-variables.js 的文件

   const process = {
  env: {
    NODE_ENV :'production'
  }
};

然后我在 karma.conf 中导入了这个带有 karma 的文件

files: [
  'test/global-variables.js',
]

【讨论】:

  • 嗨!我不知道你是如何获得这些信息的,你有链接/参考吗?
  • 谢谢,它确实有效!是否知道根本原因和正确的解决方案?..
  • 谢谢,它有效。节省了我很多时间!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-01
  • 2015-11-12
  • 2015-09-03
  • 2017-09-25
  • 2015-02-10
相关资源
最近更新 更多