Angular 2.0.0 - Testing " imported by the module 'DynamicTestModule' "

31,501

Solution 1

HomeModuleComponent is Component not the Module, so it has to be in declarations:

TestBed.configureTestingModule({
  declarations: [AppComponent, HomeModuleComponent],
  imports : [ ]
});

and then you can create the component to test as,

TestBed.createComponent(AppComponent);

Solution 2

In my test spec, by mistake I was importing a service instead of providing it. I was getting the same error.

Adding the service back inside providers array resolved my error.

Share:
31,501
xiotee
Author by

xiotee

Updated on June 05, 2020

Comments

  • xiotee
    xiotee about 4 years

    I am having a problem in testing app.component.ts in Angular 2. I am using angular-cli. Whenever I run ng test, my app.component.spec.ts makes the console prompt with the error:

     Failed: Unexpected directive 'HomeModuleComponent' imported by the module 'DynamicTestModule'
     Error: Unexpected directive 'HomeModuleComponent' imported by the module 'DynamicTestModule'
    

    I imported the HomeModuleComponent in TestBed

    TestBed.configureTestingModule({
      declarations: [AppComponent],
      imports : [ HomeModuleComponent ]
    });
    

    Can anyone help me with this problem?