【问题标题】:Angular 2 Karma tests have started to fail can't capture browserAngular 2 Karma 测试已开始失败,无法捕获浏览器
【发布时间】:2023-03-30 02:13:02
【问题描述】:

在某种程度上,这似乎是一个项目设置问题。这是以前工作的。我不知道这些错误消息可以帮助我开始。有人对从哪里开始诊断问题有什么建议吗?

21 05 2017 07:42:55.094:WARN [karma]: No captured browser, open http://localhost:9876/
21 05 2017 07:42:55.110:INFO [karma]: Karma v1.4.1 server started at http://0.0.0.0:9876/
21 05 2017 07:42:55.110:INFO [launcher]: Launching browser Chrome with unlimited concurrency
21 05 2017 07:42:55.118:INFO [launcher]: Starting browser Chrome                                                                                                                                                                                                        ERROR in /Users/jgreenaw/WebstormProjects/legalcoveapp/node_modules/@angular/core/src/testability/testability.d.ts (41,33): Cannot find name 'Node'.

ERROR in /Users/jgreenaw/WebstormProjects/legalcoveapp/node_modules/@angular/forms/src/directives/ng_form.d.ts (69,22): Cannot find name 'Event'.

ERROR in /Users/jgreenaw/WebstormProjects/legalcoveapp/node_modules/@angular/forms/src/directives/reactive_directives/form_group_directive.d.ts (74,22): Cannot find name 'Event'.

ERROR in /Users/jgreenaw/WebstormProjects/legalcoveapp/node_modules/@ng-bootstrap/ng-bootstrap/rating/rating.d.ts (58,26): Cannot find name 'KeyboardEvent'.

ERROR in /Users/jgreenaw/WebstormProjects/legalcoveapp/node_modules/@ng-bootstrap/ng-bootstrap/typeahead/typeahead.d.ts (81,26): Cannot find name 'KeyboardEvent'.

【问题讨论】:

  • 你能找到一个更早的提交吗?
  • 好问题,我恢复到 5 天前标记为“让测试工作”的先前提交,但它失败并出现同样的错误。需要注意的是,我在我的 cloud9 环境中遇到了同样的问题,但我希望会这样。
  • 也许删除你的 node_modules/ 并使用旧的提交再次运行 npm install ?这类事情就是我喜欢持续集成的原因,因为它可以消除特定于环境的问题。

标签: angular karma-runner angular2-testing


【解决方案1】:

升级我的 Angular lib 版本后,我的 Karma 测试也开始失败,这导致我提出了这个问题。在验证 @angular/cli 版本后,现在是 1.1.2,全局和本地项目之间的匹配可能还需要以下内容:

通过将“dom”添加到 lib 数组来更新您的 src/tsconfig.spec.json

"lib": ["es2016", "dom"],

【讨论】:

  • +1 为我修复。不敢相信,问题就这么简单。还不得不说,角度 cli 错误日志是可怕的和可怕的。我逃离他们四处寻找其他选项,如 web-pack 和 typescript,浪费了两天时间。
【解决方案2】:

我能够解决问题,但无法通过执行以下操作确定根本原因。

  • 将 angular/cli 项目和全局版本同步到最新版本:1.0.4
  • rm node_modules 我以前做过,但是reading this。我错过了npm cache clean
  • npm install

感谢@MatthewDaly 提供有用的建议和问题。

【讨论】:

    【解决方案3】:

    如果从您的 IDE(例如 IntelliJ IDEA)运行 karma 测试并且您的解决方案没有构建/有 lint 错误,则 karma 似乎没有连接并且只是挂起。

    使用 ng test 之类的东西运行您的测试,并在从您的 IDE 运行之前让它工作。

    【讨论】:

      猜你喜欢
      • 2019-03-18
      • 2014-01-04
      • 1970-01-01
      • 2014-01-04
      • 2010-10-14
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      相关资源
      最近更新 更多