Каковы лучшие практики для тестирования в Angular? - PullRequest
0 голосов
/ 11 октября 2018

У меня есть AppComponent, а в его HTML-шаблоне у меня есть BannerComponent и WelcomeComponent (обозначено <app-banner> и <app-welcome>).Таким образом, в тестовом примере, если я объявлю реальные компоненты, мне также придется объявить их вложенные компоненты и предоставить все службы, внедренные в любой компонент дерева.Какова рекомендуемая практика?Могу ли я просто использовать imports: [ AppModule ] или я объявляю все компоненты и их вложенные компоненты и все сервисы, внедренные в них ??

Если я просто импортирую AppModule, будет ли он принимать RouterModule (если используется)AppModule), или я могу просто переопределить его, используя RouterTestingModule ??

Если я объявлю все компоненты, у меня будет лучшее представление о том, что тестируемый компонент хорошо интегрируется со всеми другими зависимымикомпоненты.Это хорошая практика?Кроме того, стоит ли использовать APP_ERRORS_SCHEMA?

1 Ответ

0 голосов
/ 11 октября 2018

Мы создаем TestModule, который объявляет все зависимости для тестирования компонентов, там мы объявляем MockComponents для всех селекторов, которые компонент будет использовать в своих шаблонах.У большинства этих фиктивных компонентов просто есть текст в их шаблонах, но некоторые делают немного больше, если нам нужно, чтобы они отображали объекты DOM.

Иногда мы просто объявляем другие компоненты в файле спецификации, если они просты и не имеют зависимостей.

...