I started learning about Cypress as an end to end testing tool, but I have found it to be useful for really any kind of test. JSDOM has its shortcomings, and because Cypress runs in browser it allows testing of visual elements in a way more simple and declarative way, especially because it comes with JQuery built in and has full access to the DOM. So i use it for end to end tests, as well as any time using JSDOM isnt working out. I also really like using it as a tool for automated accessibility testing that allows for testing things that are beyond the ability of Lighthouse or Axe. Because it has full access to the DOM i have been able to use it to test things like tab-trapping for a modal components, or the having the correct values for aria-labels. Checkout my Github for some examples.