Как тестировать компоненты - Unit-тестирование в Angular

Поделиться
HTML-код
  • Опубликовано: 16 ноя 2024
  • Как писать юнит-тесты к компонентам Angular. В чем разница между тестированием сервисов и компонентов. Как эмулируются события и проверяются инпуты. В чем особенности мока зависимостей.
    Продолжительность: 55 минут.
    Уроверь: junior, middle
    Тестовое приложение из видео - github.com/dre...
    Подпишись, пока не потерял:
    Канал в ТГ: t.me/frontend_...
    ФБ: / olga.fomina.58555
    ВК: dreamhelg

Комментарии • 37

  • @tigranovakyan
    @tigranovakyan Год назад

    И красивая и умничка еще и angular)) одно слово влюбился)) Спасибо за уроки

  • @IlyaZemlyakov
    @IlyaZemlyakov 3 года назад +11

    Было бы круто увидеть подробный разбор тестирования форм!

  • @Александр-п9м8й
    @Александр-п9м8й Год назад

    Доходчиво разобрали довольно сложную тему для меня, спасибо!

  • @yuliyagrasevich8159
    @yuliyagrasevich8159 3 года назад +9

    Спасибо Вам большое, что раскрыли такую непростую тему!

  • @annaborovaya389
    @annaborovaya389 3 года назад +2

    Это очень круто, вы прирождённый преподаватель))

  • @jasurjuraev7404
    @jasurjuraev7404 2 года назад +3

    огромное спасибо за Ваши уроки, я многому научился от Вас! объясняете очень понятно, просто шикарно!

  • @nuZdarova
    @nuZdarova 3 года назад +4

    Оооочень в тему!))) Спасибо! Рад что продолжаете, и очень годно)))

  • @sergeykrivoruchko9696
    @sergeykrivoruchko9696 3 года назад +1

    Ну эт прям находка ))!! Спасибо ! Жду новых уроков на тему Angular .
    Хотелось бы увидеть реализацию аутентификации )
    И небольшая просьба : крупнее шрифт .Спасбо

  • @mikhailivlev
    @mikhailivlev 2 года назад

    Спасибо за информативный материал по тестированию! Вы мне очень помогли освоить азы в тестировании и написать первые тесты для компонентов и сервисов) И теперь я реально жалею, что провалил в мае собеседование с Вами(( Работать с таким специалистом в одной команде наверное очень круто))) Жду возвращения на канал, как говорили в интервью)

  • @aleksandrm3466
    @aleksandrm3466 3 года назад +1

    Спасибо, очень круто. Только за John Weak надо лайк ставить, не говоря про информативность содержания =)

  • @rockyshwilly
    @rockyshwilly Год назад

    Большое спасибо за Ваши видео. Днем с огем не найдешь на русском видео по Angular, особенно качественных и актуальных)
    Было бы очень хорошо еще в этом видео рассмотеть тестирование не только сервисов, которые связаны с тестируемым компонентом, то и компонентов, которые тестируемый компонент использует. Я на практике столкнулась с проблемами, ищу как их решить... пока не нашла)
    Ну было бы круто, если бы в видео были закладки по времени, а то возвращаясь очень тяжело что-то конкретное в видео найти!
    В любом случае Ваши видео очень ценные, спасибо!
    И у вас очень хорошо получается объяснять :)

  • @MegaDjeday
    @MegaDjeday Год назад

    Вы потрясающе рассказываете!

  • @DC-mp5fx
    @DC-mp5fx 3 года назад +2

    Спасибо большое за урок! Отличная подача информации -- четко и понятно!

  • @johnjohhoun1716
    @johnjohhoun1716 Год назад +2

    02:49 ошибка компиляции шаблона
    09:55 использование блока: schema CUSTOM_ELEMENT_SHEMA и NO_ERRORS_SCHEMA - пропустить тестирование дочерних компонентов
    13:06 Change detection cycle
    15:13 @Input и detectChanges
    21:47 @Output метод Jasmin spyON
    26:22 Эмуляция события из шаблона
    30:22 проверка CSS в шаблоне, detectChanges
    37:52 тестирование зависимостей приложения Dependency Injection
    41:20 мок провайдеров компонента, устранение зависимости зависимостей - TestBed.overrideComponent
    51:30 ошибки тестирования форм, включение реальных модулей форм

  • @dmitriyzakharov3696
    @dmitriyzakharov3696 Год назад

    требую продолжения видосов))

  • @skayona
    @skayona 3 года назад +5

    еще будет? каеф просто!!!

  • @Kulibins1
    @Kulibins1 3 года назад +5

    Отличный материал 👍 хоть это у нас и отдельный тестировщик делает, но реально интересно. Кому интересно тоже делаю ролики по Angular, например библиотеки и локальный репозиторий

  • @musoverda
    @musoverda 3 года назад +2

    Круто!!! Очень полезно и очень в тему. Хочу еще по тестированию! )

  • @m9tezhnik
    @m9tezhnik Год назад

    Большое спасибо за информативный ролик.

  • @1nightstarlight3
    @1nightstarlight3 2 года назад

    Mamma Mia, как же ты шикарна. Спасибо, что делишься опытом!

  • @КириллГришко-м7д
    @КириллГришко-м7д 3 года назад +2

    Спасибо за ваши видео!

  • @ndrew8188
    @ndrew8188 3 года назад +5

    Ждём тесты rx

  • @kenanhaciyev3759
    @kenanhaciyev3759 Год назад

    классно, спасибо

  • @suffer_suffer
    @suffer_suffer 2 года назад

    Круто, спасибо !

  • @ВладимирПолицковой

    спасибо. Но что если мы явно дергаем обнаружение изменений в тестах при стратегии изменения компонента onPush?

  • @mtvspec
    @mtvspec 2 года назад

    Подскажите пожалуйста, для чего используются геттеры в этом примере?

  • @alexbolokan1470
    @alexbolokan1470 2 года назад +1

    Супер полезный урок, если с Render2 такая же фишка как и с FormBuilder, то не пойму как замокать 'selectRootElement' то есть const element = renderer.selectRootElement('.loading-screen', true);

  • @СтефанАксенченко-ю8о

    Top!

  • @kol4an721
    @kol4an721 Год назад

    Почему у меня заваливаются ангуляровские тесты постоянно? Может кто подсказать?
    То есть ситуация такая: я сгенерировать компонент, он сгенерил тесты, я написал свои тесты и у меня мои тесты прошли без косяков, а тесты, который сгенерил ангуляр завалились

  • @dimonagon6710
    @dimonagon6710 Год назад

    😍

  • @белка-у8б
    @белка-у8б 3 года назад +6

    Как я могу протестировать ngRX(Его экшены и селекторы?)

  • @sm4rt17
    @sm4rt17 3 года назад +2

    А не подскажете, как грамотно поступать, когда в хуках жизненного цикла компонента вызываются приватные методы? Или, скажем, в случае, когда мы хотим протестировать публичный метод, из которого дергается приватный --- как его правильно замокать, чтобы не был вызван реальный приватный метод? Везде рекомендуют делать spyOn(component, 'onInitPrivateMethod'), но, как я понял, это что-то вроде обходного пути. Предусмотрено ли более грамотное решение для таких случаев?

    • @ojgenn
      @ojgenn Год назад +1

      приватные методы не тестируют

  • @RaccoonMe96
    @RaccoonMe96 3 года назад

    Было бы куда эффективнее смотреть ваш контент с тайм кодами!

  • @irynakavaleuskaya9461
    @irynakavaleuskaya9461 3 года назад

    Добрый вечер! Подскажите, пожалуйста, почему не мокается сервер?

    • @ann_bubochka
      @ann_bubochka 2 года назад

      Добавьте скобочки после callFake...callFake( ()=>{} )()
      Типо вызов функции.... возможно у нас была схожая проблема 😅