How to use Vitest with Jest-DOM and React Testing Library

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ก.ย. 2024
  • In this next Code With Me series, I'll be experimenting with the world of Test Driven Development.
    Before we get started, we need to set up our environment for testing. I have decided to use Vitest, since I am an avid user of Vite. I don't want to use Create-React-App even though the testing is ready to go. I find CRA bloated and slow, but I still want to use the awesome tools provided by React Testing Library and Jest-dom.
    In this video, we walk through the steps required to set up Vitest with JSDOM, React Testing Library and Jest-DOM so we can test our React components.
    Vite: vitejs.dev/
    Vitest: vitest.dev/
    Vitest Example Library: github.com/vit...
    Vitest React Testing Lib Example: github.com/vit...

ความคิดเห็น • 58

  • @DrumkitCodes
    @DrumkitCodes 2 หลายเดือนก่อน +2

    Thanks so much for the tutorial! I couldn't figure out how to get vitest working before, I really appreciate how you went through the full setup and explained why we were setting certain things to certain values. Can't wait to see more in your TDD series

  • @fatasefer
    @fatasefer ปีที่แล้ว +7

    Finally, exactly what I was looking for. Simple and straight to the point. Thank you so much!

  • @ErickoAndriamanarivo
    @ErickoAndriamanarivo 8 หลายเดือนก่อน +1

    I really needed this one, I am switching to typescript and react-vite now and I am struggling with testing with jest library with typescript. This one is easier to configure and faster. You should continue this TDD serie dude, you will help a lot of young, beginners, junior developers like me

  • @vponochovny
    @vponochovny หลายเดือนก่อน

    Really nice to link the vitest examples. It helped me much cause my setup was failing for some strange reasons

  • @paulgasbarra
    @paulgasbarra 4 หลายเดือนก่อน +4

    This is the most helpful thing.

  • @jeff-creations
    @jeff-creations 2 หลายเดือนก่อน

    Nice presentation and super useful! Thank you so much, my component tests don't error out now. Keep up the great work!

  • @JMIKAEL6
    @JMIKAEL6 11 หลายเดือนก่อน

    After 3 hours trying to configure i found your video and solve it in 10min.
    Thank you so much!

    • @ericwinkdev
      @ericwinkdev  11 หลายเดือนก่อน

      So glad that it helped!

  • @BenHuxford
    @BenHuxford ปีที่แล้ว +2

    great video 😊 one thing to note is you install the "jsdom" package at 4:50. In my setup this module is not needed when using testing-library's "jest-dom" because they both perform the same functionality of mimicking the browser DOM

    • @ericwinkdev
      @ericwinkdev  ปีที่แล้ว

      Awesome, thanks for the note!

  • @ramioooz
    @ramioooz 11 หลายเดือนก่อน +1

    This is a very important video. Thank you for sharing.

  • @altamashkhan4858
    @altamashkhan4858 11 หลายเดือนก่อน +1

    Thank you for posting this video.

  • @ЭзизК
    @ЭзизК 3 หลายเดือนก่อน +1

    I have a problem, MISSING DEPENDENCY Cannot find dependency 'jsdom'
    Should I install it as devdepend?

  • @wellingtonostemberg7585
    @wellingtonostemberg7585 ปีที่แล้ว +1

    I loved that! It´s exactly what i was looking for. Thank you!

  • @mrluckyuncle
    @mrluckyuncle 10 หลายเดือนก่อน +1

    Excellent. Just what I was looking for. One little thing... it would be nice if the video was available in a higher resolution.

  • @abhijitmondalabhi2146
    @abhijitmondalabhi2146 5 หลายเดือนก่อน +2

    Most of the things are not working any more. I think they already changed the setups little bit.

  • @Prathap_SK
    @Prathap_SK 6 หลายเดือนก่อน

    To be honest, It is first video in vitest. It is pretty straightforward to go the content. Thank for clear view

  • @tobibada6443
    @tobibada6443 2 หลายเดือนก่อน

    I was so giddy after hearing the name😂. Randomly chose the video and heard a name from my best tech podcast🤭🤭

  • @FingerTipWisdom
    @FingerTipWisdom 2 หลายเดือนก่อน

    Thanks lot brother save me lot of time !!!

  • @faruzzy
    @faruzzy 8 หลายเดือนก่อน

    Thanks for walking us through this!

  • @keifer7813
    @keifer7813 10 หลายเดือนก่อน

    Thanks a ton for this. Nice and easy setup, first time using vitest for me

  • @kakun7238
    @kakun7238 ปีที่แล้ว +1

    but how do i test for huge components i am stuck

  • @SteelGamePad
    @SteelGamePad ปีที่แล้ว +1

    great explanation, can't wait for part 2

  • @ThaRealIansanity
    @ThaRealIansanity ปีที่แล้ว

    Great start. I'm taking a vitest course and want to learn to use it with both react and vue. Thank you

  • @WitchingHr
    @WitchingHr ปีที่แล้ว +1

    thank you so much man. this helped a lot

  • @coderboyakash5853
    @coderboyakash5853 7 หลายเดือนก่อน

    This is really helpful for me buddy thanks so much

  • @kikevanegazz325
    @kikevanegazz325 4 หลายเดือนก่อน

    Brother, great tutorial. I like it because it's spot on.

  • @ahoymatey1234
    @ahoymatey1234 ปีที่แล้ว +1

    I found an alternative to adding those reference types by adding this to my tsconfig
    "types": [
    "vite/client",
    "vitest/globals"
    ]

  • @kedaraksym12
    @kedaraksym12 ปีที่แล้ว

    Thanks for this manual, I appreciate that ;)

  • @mahanmashoof1989
    @mahanmashoof1989 ปีที่แล้ว

    great intro to vitest! thanks

  • @1haker
    @1haker 8 หลายเดือนก่อน

    ABSOLUTLY AMAZING :)

  • @simonprato9666
    @simonprato9666 7 หลายเดือนก่อน

    Thanks men, very clear!

  • @pranshubasak8796
    @pranshubasak8796 9 หลายเดือนก่อน

    You are really a saviour

  • @bornback4524
    @bornback4524 ปีที่แล้ว

    Thx for helping to understand and easy to implement 🙂

    • @ericwinkdev
      @ericwinkdev  ปีที่แล้ว +1

      I'm glad this helped you out!

  • @manavjethani4118
    @manavjethani4118 7 หลายเดือนก่อน

    This is really great, i am able to setup vitest with your help, although i am stuck with this error `TypeError: Class extends value undefined is not a constructor or null` while using amcharts4 in our project, wanted to ask do we have to do add any config to allow `Class extends` syntax?

  • @IrakliTsaishvili
    @IrakliTsaishvili 11 หลายเดือนก่อน

    clear and helpful. thank you very much

  • @Gabriel-kl6bt
    @Gabriel-kl6bt 5 หลายเดือนก่อน

    Good. Just why isn't Code suggesting methods from the testing libs?

  • @brortiz
    @brortiz 8 หลายเดือนก่อน

    Great video, thanks!

  • @raj.blazers
    @raj.blazers ปีที่แล้ว

    Much thanks man! Helped a lot. 🎉

  • @davidjnevin
    @davidjnevin 7 หลายเดือนก่อน

    Life saver!

  • @gustuckit2052
    @gustuckit2052 ปีที่แล้ว

    i get an error saying "no test files found", very weird... :( (im not using ts)

  • @rannue2921
    @rannue2921 10 หลายเดือนก่อน

    Thank you so much!!!

  • @splat_bang
    @splat_bang 9 หลายเดือนก่อน

    Thankyou so much!

  • @Anthony-wg7fn
    @Anthony-wg7fn ปีที่แล้ว

    Can you do this same thing with the T3 stack?

  • @guillermoemmanuelsanchezin1664
    @guillermoemmanuelsanchezin1664 ปีที่แล้ว

    Hi! Would you be so kind to try using vitest with MSW, I would really appreciate it!

  • @somajuice666
    @somajuice666 3 หลายเดือนก่อน

    THANKS

  • @yatinpatel4123
    @yatinpatel4123 ปีที่แล้ว

    yes, there is no tutorial available like this set for react + vite for testing library.

  • @dolevdo
    @dolevdo ปีที่แล้ว

    thank you a lot!

  • @v1r47
    @v1r47 ปีที่แล้ว

    FYI: Vitest 0.33+= requires at least node16 to run properly.

  • @booi_mangang
    @booi_mangang ปีที่แล้ว

    Hey, great video.
    I've a question. What if you are not using typescript. what changes will there be from your guide?

    • @ericwinkdev
      @ericwinkdev  ปีที่แล้ว +3

      Thanks for checking it out! If you're not using typescript, there's no tsconfig file, and the only differences should be with the file extensions. Rather than .ts and .tsx, you'll use .js and .jsx respsectively.
      If anything goes wonky let me know and I'll do my best to help out!

    • @booi_mangang
      @booi_mangang ปีที่แล้ว +2

      @@ericwinkdev thanks for the reply.
      I’d figured it out.
      your video helped.

    • @joelkomieter6557
      @joelkomieter6557 ปีที่แล้ว

      @@ericwinkdev Creating that jsconfig file won't have any of what tsconfig,json has. What do I need to do about that?