Angular 2 TestModuleMetadata does not have an EntryComponents property

As far as i know it has not supported yet. As workaround you can create fake module with entryComponent and import it to your testing module

@NgModule({
  imports: [CommonModule],
  declarations: [TestDialogComponent],
  entryComponents: [TestDialogComponent]
})
export class FakeTestDialogModule {}

and then

TestBed.configureTestingModule({
    imports: [FakeTestDialogModule]

Check TestBed.overrideModule. Please refer to this discussion https://github.com/angular/angular/issues/12079

I got the error for my DialogBoxComponent. I resolved it as follows

  beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [ NewPracticeQuestionComponent,
      DialogBoxComponent,
        ShowErrorsComponent],
      imports:[ReactiveFormsModule,HttpClientTestingModule],
      providers:[WebToBackendInterfaceService,HelperService,AuthService]
    })

    TestBed.overrideModule(BrowserDynamicTestingModule, {
      set: {
        entryComponents: [DialogBoxComponent]
      }
    })
    .compileComponents();
  }));