Could you elaborate about which aspect takes a long time and what length of time we're talking about. The test itself does need to take a little bit longer than most in order to give a more accurate reading of speed, which can be hampered if you have a firewall enabled (tried the port 80 option?).
Having selected the Java test, it takes 1.5 to 2 minutes before the test starts to run. I tend to use the non Java test because of this. It also says save your test results, but where does it save them?
indeed, some firewalls block traffic on other ports, try the port 80 option and see if that helps, otherwise l suggest upgrading your Java to the latest version and try again... if there is still a problem then its something god only knows (without server logs/pings/tracert results etc its hard to say where the problem may lay)
well the test runs on a random port, some ISPs block non-standard ports and most routers will as well, testing through port 80 should help in those cases, because port 80 is where http (web browsing) transmissions go through...