Angular 2 Karma测试已经开始失败无法捕获浏览器

时间:2017-05-19 00:20:42

标签: angular karma-runner angular2-testing

这似乎是一个项目设置问题。这在以前工作。我不知道这些错误消息可以帮助我开始。有没有人对从哪里开始诊断问题有一些建议?

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'.

3 个答案:

答案 0 :(得分:5)

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

通过在lib数组中添加“dom”来更新 src / tsconfig.spec.json

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

答案 1 :(得分:0)

我能够继续解决问题,但不能通过执行以下操作找出根本原因。

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

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

答案 2 :(得分:0)

如果从您的IDE(例如IntelliJ IDEA)运行业力测试,而您的解决方案未生成/有棉绒错误,则业力似乎无法连接并只是挂起。

使用诸如ng test之类的工具运行测试,并使其正常运行,然后再从IDE中运行。