Depends on what compatibility you're looking for. Edge, Chrome and Firefox perform mostly the same. Firefox is a bit more restrictive in terms of following standards, so most things that work on it will work on the other 2. That will cover the greater majority of your user base. Safari has some quirks, so you'll want to test on it. That's how I do it. I pretty much don't support IE anything unless it's specifically required by the client. At that point, I might bring in Modernizr so I can add fixes.
I make a lot of use out of caniuse.com, and MDN's documentation to make sure I'm using functionality that has good support, or that what I'm using has a polyfill available.