Cypress just talks to a URL. So, in theory, you can test any website that is available through a URL. So you can also use Cypress to test against your mail client as an example.
This tutorial should give you a good introduction in starting to test with Laravel: https://medium.com/@dimoff2000/end-to-end-testing-with-cypress-for-laravel-developers-25318b11a6fc
Cypress itself doesn't integrate with Laravel. So if you want to reset the database using a snapshot you need to build that yourself. You can, for example, make an artisan command for that and run that before you start running the cypress tests. That should already fix most of your questions ;)