Watin currently has a lot of this for web app. obviously the biggest downfall is the recorder bit. i love how this approached as a single framework targeting all Windows/Web/WPF  with a recorder.

I really would love to see it done on a web app (with complex grid row counting, resolving ASP.NET control id's and so on)