I have used Selenium in the past, and it works great for all 1-7, with the possible exception of localization, since I did not need to check this. Like 2, the applications I tested were basically just “writing something in the text box and see if it works,” so it was pretty easy. And, for 4, I had several virtual machines with only certain browsers installed. It was a hack, but it worked, sort of.