I tried a number of these sites, and was never really happy with the result.
Then a technician at my ISP suggested the obvious - if you have access to an FTP server anywhere (at your ISP, at work, a friend's Mac/PC/Linux box with an FTP server) create a really big file (example: create an archive out of your iTunes library) and ftp it to the FTP server. Pretty much every ftp client out there reports the transmit speed. If nothing else, I know that the humble Terminal-based ftp command does.
Now turn around and reverse the process. FTP the file back to yourself. You now have real world transmit and receive benchmarks from a local destination, which helps eliminate speed declines caused by lengthy transits across the country; hopefully the results are more indicative of YOUR broadband link, not the internet as a whole.