Angular2 Karma测试跑者没有重装

时间:2017-03-29 17:12:04

标签: angular npm karma-runner karma-jasmine

我正在浏览Angular2测试教程。我对Jasmine / Karma很陌生,所以这可能是基本的东西。我注意到,一旦我进行了" npm测试"运行,如果我进行更改,测试运行器会尝试重新加载,但会收到错误:

  

错误   C:/dev/unittest1/src/app/banner-inline/banner-inline.component.spec.ts   (12,11):找不到名字' HTMLElement'。)

以下是规范代码(几乎只取自here):

从@ angular / core / testing'导入{ComponentFixture,TestBed,ComponentFixtureAutoDetect};     从' @ angular / platform-b​​rowser'中导入{By};     从' @ angular / core';

导入{DebugElement}
1.OnOpen(TimeSpan
  timeout)    w
  System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan
  timeout)    w
  System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation
  operation, EndpointAddress target, Uri via, SecurityToken
  currentToken, TimeSpan timeout)    w
  System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan
  timeout)    w
  System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan
  timeout)    w
  System.ServiceModel.Security.SecuritySessionClientSettings

如果我停止测试跑步并重新启动它,一切正常。为什么我会收到此错误,如何防止错误?

1 个答案:

答案 0 :(得分:1)

我想你的项目中的tsconfig.json应该将dom库添加到lib数组中:

"lib": ["es6", "dom", "es2015.iterable"],