Как тестировать частные методы / объявления с помощью "библиотеки тестирования"

Есть ли способ протестировать частный метод или объявление с использованием фреймворка "библиотека тестирования" в angular?

вот мой код:

priave name = "somename"
 private setLang(url: string, fetch: boolean) {
    switch (url) {
          case '/SSB/mngt':
              this.SSB.Id = 'newSSb';
              this.pageId = 'ManageEvent';
            break;
          case '/SSB/mngt/add':
            this.SSB.Id = 'newSSb';
            this.pageId = 'ManageEventAdd';
          break;
          case '/SSB/mngt/view':
            this.SSB.Id = 'newSSb';
            this.pageId = 'ManageEventView';
          break;
          case '/SSB/mngt/approve':
            this.SSB.Id = 'newSSb';
            this.pageId = 'ManageEventApprove';
          break;
          default:
            this.SSB.Id = 'setupConfig';
            this.pageId = 'ViewProgMgmt';
            break;
    }

    this.data = [];
    this.data.push(this.selectedLang);
    this.data.push(this.SSB.Id);
    this.data.push(this.pageId);
    this.data.push(fetch);
    this.langId.emit(this.data);

  }

как частный name декларация и setLangметод недоступен есть файл спецификации. Каким бы правильным способом справиться. кажется, что, если я не напишу тестовый пример для обоих частных объявлений, я не смогу достичь 100% охвата.

1 ответ

Мы не тестируем частные методы с помощью библиотеки тестирования, так как они могут измениться и без причины сломают ваши тесты. Если вы хотите, чтобы эти строки были покрыты кодом, вам придется протестировать их извне с помощью HTML.

Это гарантирует, что если детали реализации со временем изменятся, ваши тесты все равно пройдут и придадут вам уверенность в написанном вами коде.

Другие вопросы по тегам