创建共享模块后,angular-cli测试失败

Jas*_*aat 3 karma-jasmine angular-cli angular

我只是在其中添加了一个包含SharedComponent的共享模块,并在主app组件中使用了该组件:

<acs-shared></acs-shared>
Run Code Online (Sandbox Code Playgroud)

所有组件都显示'Hello,world!' 在组件上使用属性:

<h1>Hello, {{name}}!</h1>
Run Code Online (Sandbox Code Playgroud)

在运行项目时npm start,这一切都正常,但现在运行npm test失败,也是如此$(npm bin)/karma start ./karma.conf.js.第一个失败是它无法创建组件,因为它无法识别'acs-shared'元素.是否有一些特殊的东西需要用来测试使用其他组件或模块的组件?

Chrome 54.0.2840 (Windows 10 0.0.0) App: AngularCliStarter should create the app FAILED
    'acs-shared' is not a known element:
Run Code Online (Sandbox Code Playgroud)

该项目可在github上找到:https://github.com/JasonGoemaat/angular-cli-starter

Pau*_*tha 8

您需要导入SharedModuleTestBed配置.您使用TestBed所做的就像@NgModule 从头开始为测试环境配置

TestBed.configureTestingModule({
  imports: [ SharedModule ],
  declarations: [
    AppComponent
  ],
  providers: []
});
Run Code Online (Sandbox Code Playgroud)