Nothing beats testing mobile sites on actual mobile devices, but it can be really annoying to have to frequently deploy to view every small change you make. I haven't had great success with the Andoird and Black Berry emulators on my machine. You have to install a bunch of extra stuff and it is not straight forward. The iPhone emulator is great, but I don't develop on a Mac, don't easily have access to one and don't really want one.
Here are a few apps/methods for initial mobile development, but I haven't tested any HTML5 capabilities with these (except Safari).
Safari
Totally ghetto, but this is normally what I use for testing javascript and inspecting the DOM. The browser has a built in feature that lets you change the user agent.
Opera Mobile
This is my tool of choice for checking page layouts. It is fairly lightweight and pretty customizable on resolutions and other fun stuff like that.
iBBDemo2
This is an Adobe AIR app that acts as an iPhone and iPad emulator. It is pretty nice, but I frequently find myself forgetting the commands to rotate the device and change the device from iPad to iPhone.
Windows Phone 7 Emulator
Fairly useful. Takes a little while to load, but is fairly nice once it is up and running.
Palm Pre Emulator
Runs on Virtual Box. It has been about a year since I used it though.