Тестирование Angular 7: «Невозможно привязаться к formGroup, поскольку оно не является известным свойством формы» - PullRequest
0 голосов
/ 15 февраля 2019

Ошибка журналов консоли:

15 02 2019 14: 50: 24.868: INFO [Chrome 72.0.3626 (Windows 10.0.0)]: подключен через сокет BiEioS9fHwq-QLg3AAAA с идентификатором 27946068 Chrome72.0.3626 (Windows 10.0.0) LoginComponent должен создать FAILED Невозможно связать с «formGroup», так как это не известное свойство «form».("

        <div class="row">

(и т. Д.)

Я запускаю его с помощью команды ng test. Мой файл спецификаций:

describe('LoginComponent', () => {

    let component: LoginComponent;
    let fixture: ComponentFixture<LoginComponent>;

    const fakeActivatedRoute = {
        snapshot: { data: {} }
    } as ActivatedRoute;

    beforeEach(async(() => {
        TestBed.configureTestingModule({
            declarations: [
                LoginComponent
            ],
            imports: [
                RouterTestingModule,
                HttpClientModule,
                CommonModule,
                BrowserModule,
                BrowserAnimationsModule,
                ReactiveFormsModule,
                MessageModule,
                MatFormFieldModule,
                MatInputModule,
                MatButtonModule,
                MatCheckboxModule,
                MatProgressSpinnerModule,
                MatRadioModule,
                MatSliderModule,
                NgbModule
            ],
            providers: [
                {
                    provide: ActivatedRoute,
                    useValue: fakeActivatedRoute
                }
            ]
        })
            .compileComponents();
    }));

    beforeEach(() => {
        fixture = TestBed.createComponent(LoginComponent);
        component = fixture.debugElement.componentInstance;
        fixture.detectChanges();
    });

    it('should create', () => {
        expect(component).toBeTruthy();
    });

});

И LoginModule файл:

@NgModule({
  declarations: [LoginComponent],
  imports: [
    CommonModule,
    BrowserModule,
    BrowserAnimationsModule,
    FormsModule,
    ReactiveFormsModule,
    MatFormFieldModule,
    MatInputModule,
    MatButtonModule,
    MatCheckboxModule,
    MatProgressSpinnerModule,
    MatRadioModule,
    MatSliderModule,
    MessageModule,
    NgbModule.forRoot()
  ],
  providers: [],
  bootstrap: [
    LoginComponent,
    MessageComponent
  ]
})
export class LoginModule {}

Чего не хватает?

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Я думаю, что это

FormsModule

и

.forRoot()

в модуле Ngb в вашем тестовом импорте.

0 голосов
/ 15 февраля 2019

Аналогично Angular2: невозможно связать с «formGroup», поскольку оно не является известным свойством «form»

Я думаю, что вам не хватает для импорта FormsModule в вашем configureTestingModule

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...