Voulez-vous loadez mon site avec moi?
May 27, 2009 7:38 AM   Subscribe

InternetQAfilter: how can I test my site as if it were being loaded from other countries?

We have a webapp that we're selling to various clients in various countries. Every now and then we get a report from a demo'er about problems with the site that we can't replicate here, which we suspect might be due to an infinitesimal increase in load-lag across the long interwebnet pipes across the ocean. And yes, there are also other possibilities such as unique firewalls, poor net connections at demo locations, etc., but we have to eliminate each element separately before we can be absolutely sure there's nothing to fix in homebase.
I'd like to find some kind of proxy that would load the site for me as from France, Japan, etc., i.e. loaded from our home server via whatever path it then takes to arrive there.
The internet being what it is, I assume there must already exist some such tool or site. Does anyone know of one? How do you test your web apps in similar circumstances?
posted by Billegible to Computers & Internet (10 answers total) 2 users marked this as a favorite
If you want to test real world high latency type issues, a "weird" solution to this problem would be to test your site over Tor.
posted by glider at 7:54 AM on May 27, 2009

You might consider establishing a relationship with an overseas user that is good enough that you can RDP/remote into there machine to see it exactly as they do.
posted by bz at 8:06 AM on May 27, 2009

Ooops. "there" should be "their." There.
posted by bz at 8:07 AM on May 27, 2009

Take a look at Keynote's KITE product. I've never used it - at a prior shop, we used a demo version of their web portal testing app before spending big bucks with Gomez - but the price looks right (free).
posted by jquinby at 8:23 AM on May 27, 2009

bz - nice idea but not practical, not with the number of countries and sites and plain old time I need to spend hitting this stuff. Plus we don't always have advance notice.

glider, excellent idea to at least look at bounce lag.

jquinby, checking it out, thanks!
posted by Billegible at 8:45 AM on May 27, 2009

You'll be able to find some tools that purport to be able to help you here, but they will be piecemeal and the results unreliable. There is no real way to test your webapp from various places around the world and get results that allow you to adapt your demo to them because the problems have nothing to do with the app. The problems will stem from exactly the things you discount in your question: weird networks, long links, etc....things you cannot eliminate.

For an international demo app like this it sounds like you're going to have to split the demo off from the actual app. I would seriously look into geographically dispersed methods of execution and access, such as cloudy servers from Amazon's AWS or content delivery networks like Limelight or Akamai if the issue is with static content delivery. You might also look into ways of packaging the demo such that it can be run locally by the prospective customer.

I'm interpreting your question such that you are selling an app that is demoed over long distances but run locally (or closer to home) once the deal is struck. Your task is to emulate their execution environment, which is about a billion times more cost-effective than eliminating the unreliability of the global internet.
posted by rhizome at 9:27 AM on May 27, 2009

I do web QA professionally, and this is a common issue. Larger organizations will generally either have personnel in, or contracts with services like Keynote which have personnel or sites in, various locations that they care about. If you're not quite that sized organization, there are several ways for you to simulate the conditions.

There are various sites out there that list free proxies available in various countries. I haven't used this particular site's proxies, but if you Google for free international proxies, you'll find several sources. Keep in mind that these proxies are generally not quality controlled, so there's no telling whether the conditions you get will even remotely resemble what a real user in that country would see.

If you're concerned that the issue is merely the load times, and not particular countries' internet configurations, then the easiest way to test this would be to download one of several HTTP debugging proxies, such as:

Fiddler: A free and excellent tool which includes a throttling option for emulating the latency and bandwidth of a 56k modem. Only runs on Windows.

Charles: An extremely full-featured HTTP debugging proxy that can do more to help you develop your site than any other single tool I've encountered. Runs on Windows, MacOS, and Linux. Free trial available, but the full version is $50, and worth every penny.

For what it's worth, on my project, we generally stick to latency testing via proxy, occasionally switching to a DSL line or a 56k modem we still have in our QA lab. We've found that the proxy is generally good enough, though we're a large enough organization to have international latency labs to do "real" comparison testing from various countries when needed.
posted by DoomGerbil at 9:50 AM on May 27, 2009

rhizome, the app will be run from the same servers once sold, hence trying to track down anything possible to eliminate possible geography-based issues. Also hence the need for live demos to prove that yes, it's real and it works realtime.
I'm not really discounting the possibility of the problems being highly local freaks of internet and firewalls, but neither can I afford to assume that they are the sole problem. We've got to make sure we've made the app as reliable as possible even under possibly flaky circumstances. For example, if my boss can buy from Amazon from his hotel room but our app drops in some way? Not gonna fly. Yeah, the app is more complicated than Amazon but... people gotta be able to use it.

Between Tor to test high bounce and KITE for scripting and geographical dispersion, I'm hoping to be able to get a grip on the bits that are under our control to improve the user experience. Thanks guys!

But please, anyone who knows of any additional resources, I'd love to hear all of them.
posted by Billegible at 10:05 AM on May 27, 2009

DoomGerbil, excellent advice and links, thank you.
Out of curiosity, have you had a good correlation between results via proxy and "real" testing, i.e. has the proxy testing given you valid behavioural predictions?
posted by Billegible at 10:08 AM on May 27, 2009

As it turns out, KITE's detailed analytics are just what we were looking for - can't thank you enough for the recommendation.
posted by Billegible at 4:16 PM on June 1, 2009

« Older External burner for MacBook Pro   |   Don't get me wrong, clotheslines are great, but... Newer »
This thread is closed to new comments.