Евгений Борисов, Кирилл Толкачев - Проклятие Spring Test

Поделиться
HTML-код
  • Опубликовано: 26 сен 2024
  • Ближайшая конференция - Joker 2024, 9 октября (Online), 15-16 октября (Санкт-Петербург + трансляция).
    Подробности и билеты: jrg.su/Ypf1HW
    - -
    . . . . Сегодня только очень ленивый разработчик не пробовал Spring Boot. Всем хочется быть на коне и во всеоружии. Мы писали Spring приложения, теперь Spring Boot. Мы тестировали Spring приложения, а теперь тестируем… ну, вы поняли.
    Чем проще инструмент, тем больше магии он делает «под капотом». Spring Boot не исключение. Более того, мало кто задумывается, что происходит при использовании привычных всем инструментов, описанных в документации Spring Test.
    Попробуем разобраться в деталях того, какие грабли нам аккуратно подложили тут и там. Для этого протестируем «типичное» приложение и зададим себе вопросы, которые должен задавать любой разработчик, использующий Spring и яростно внедряющий Spring Boot на своих проектах.
  • НаукаНаука

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

  • @antonkuranov
    @antonkuranov 2 года назад +14

    Школа магии и волшебствп Хогвартс: ищешь в фолиантах подходящее @заклинание, правильно произносишь, и ждёшь, чтобы все заработало и при этом не убило.

  • @ВладиславГерасимов-щ7р

    Ребята молодцы! Смотрю выступление третий раз, сейчас только до конца разобрался, что к чему, так как не хватало опыта

  • @TaranovskiAlex
    @TaranovskiAlex 6 лет назад +12

    доклад как всегда на высоте! спасибо!

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

    спасибо, очень сложная тема, на 5 раз я наконец разобрался как это работает))

  • @GAVVVR
    @GAVVVR 5 лет назад +5

    Очень полезно, спасибо. Вот это "сканирование вверх", а затем "сканирование вниз" для меня было не очевидно, отлично продемонстрировали это в докладе.

  • @zigzag2341
    @zigzag2341 3 года назад +8

    Как такую жесть вообще можно обьяснять и не запутаться..

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

      Да тут можно смотреть и запутаться )

  • @kirekov
    @kirekov 4 года назад +14

    Интересный доклад. Есть только один вопрос. На 7:07 приводится пример unit-теста, который сложно написать для Spring. Из чего делается вывод, что, мол, так делать не надо. Но ведь это же не unit-тест. По факту мы тестируем не один класс, а сразу три: resolver, composer и properties. Если хотя бы один из них поменяется, могут по цепочке упасть и все тесты для resolver, чего происходить не должно. По-хорошему мы должны передавать mock от WordsComposer и задавать ему необходимое поведение. Таким образом можно и покрыть большинство тест-кейсов, и не сталкиваться с проблемой, что отсутствует user.properties.

  • @andrii_popov
    @andrii_popov 6 лет назад +21

    Приложенеи с экспертами улыбнуло) А в остальном - повторение документации. Я так и не понял как ПРАВИЛЬНО тестировать в SpringBoot (интеграционные тесты): стратегия, куда ложить ИТ-тесты, куда ложить юнит-тесты, именование классов, как запустить только юнит-тесты, как запустить только интеграционные, какие компоненты тестировать в связке и сколько их должно быть чтобы спать спокойно. Неплохо было бы в продолжении осветить свой опыт, "как делать?" а не "как можно делать?".

    • @dmitryWeirdo
      @dmitryWeirdo 6 лет назад +17

      Так и не понял, как заставить людей не писать «ложить» :)

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

      Чтобы быть спокойным, надо тестировать как можно больше. Но это не бесплатно (увеличивается время на старт контекста). Компромисс вы сами должны найти. А по набору тестов вообще все просто. Либо сьюты делаете сердствами junit (Test Suite), либо аннотации проставляете и тестируете отдельные группы через surefire, либо тот же surefire, но по маске имен файлов (но тут вы сразу должны придерживаться правил именования).

  • @leonidsucharev3656
    @leonidsucharev3656 6 лет назад +17

    Интересно, Евгений в такой же манере работает в команде с её членами в реальных проектах, как он работал с Кириллом на докладе?

    • @MrARNOLD
      @MrARNOLD 5 лет назад +5

      Однако с таким Тим-лидом не пропадёшь и с юмором и не кричит ;)

  • @Ivan54r
    @Ivan54r 5 лет назад +3

    EJB захлебывается от слюн глядя на спринг

  • @instead5
    @instead5 6 лет назад +4

    штепсель и тарапунька

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

    Если последние 5 минут посмотреть видео на 0.75 можно получить истинное удовольствие.

    • @Denis-sds
      @Denis-sds 2 года назад

      Получаем пьяного Женю

  • @konstantinchvilyov9602
    @konstantinchvilyov9602 4 года назад +24

    Программирование превратилось в гадание.

    • @Rostik13.96
      @Rostik13.96 8 месяцев назад

      Пили свой очереднярский велосипед и не гадай ;)

  • @markhunt6499
    @markhunt6499 6 лет назад +5

    Где можно код посмотреть?

    • @densusanin4415
      @densusanin4415 6 лет назад +10

      github.com/lavcraft/conference-test-with-spring-boot-test

  • @Recentqawon
    @Recentqawon 4 года назад

    Звук моментами подшипивает

  • @tusman4ik
    @tusman4ik 9 месяцев назад

    3:30😂😂😂

  • @caffeine0mgn
    @caffeine0mgn 6 лет назад +17

    это капец. 100500 способов выстрелить себе в ногу. Не зря я не люблю спринг

  • @zezaka7616
    @zezaka7616 6 лет назад +27

    тараторят, перебиавают друг друга.. Борисов давит...
    доклад не очень качественный

    • @МаксимАлексеев-ч4й
      @МаксимАлексеев-ч4й 5 лет назад +23

      Евгений опытный докладчик, время на докладе ограничено. Когда Евгений видел, что объяснения его коллеги неточные или не очень понятные - он перебивал и уточнял. Да, может не очень красиво, но без вставок Евгения доклад был бы менее понятным.

  • @SinevSA
    @SinevSA 6 лет назад +3

    Видимо, совсем для русско-говорящих. Документация, куча комментариев в исходном коде... Но мы ж не читатели, мы писатели :-)

  • @alexeystaroverov4804
    @alexeystaroverov4804 6 лет назад +2

    Как вы задолбали своими понтами... Учитесь у индусов.

  • @user-varmat
    @user-varmat 5 лет назад +1

    Супер!!!