I believe in Continuous Testing (no that's not a thing. Yet…)
I write unittests. A lot of them. If I don't have the time, I still write tests for the happy path, so I can be sure it won't go wrong. If I work with code that has no tests, I add some, at least for the feature/bugfix I work on.
Then I tend to add functional tests. They are more scarce, as it takes a huge amount of time to implement one, and I'm a software developer, not a tester. That's a separate job.
If other software interacts with mine, e.g. through an API, I also do integration tests.
But most importantly, I test in production. Now I can hear a lot of you screaming, but Testing in Production (TiP) is a thing. We have select test cases that are safe to run against the production site, and we do several times a day. Also, we are in a lucky position to not just develop, but also use our software on a daily basis. Thanks to this, we are among the first few to discover anomalies.