One of the more difficult aspects of configuring an instance of WebPagetest is setting up the configuration of the locations and matching it to the locations on the test agents.

For this example we will be configuring 4 different test machines:
Machine #1 - A PC configured with IE 8, Chrome and Firefox that is installed on an internal office network
Machine #2 - A PC configured with IE 8 and Chrome located in Virginia
Machine #3 - A PC configured with IE 8 in California
Machine #4 - A PC configured with IE 9 in California

Logically the configuration will look like this:

There are 3 different Physical locations - Office, Virginia and California.  These will show up in the "Test Location" dropdown in the UI.

The Office and Virginia computers will run both URLBlast (for IE) and WptDriver (for Chrome and Firefox).  Each of the California computers will only be running URLBlast (for IE).  Each instance of software (URLBlast or WptDriver) points to a configuration on the server that is specific to how that machine is configured (the leaf nodes in the locations.ini configuration).

Here is the locations.ini configuration from the example above:


; These are the top-level locations that are listed in the location dropdown
; Each one points to one or more browser configurations

label="Office LAN (Virginia - IE8,Chrome,Firefox)"

label="Virginia (IE8,Chrome)"

label="California (IE8,9)"

; These are the browser-specific configurations that match the configurations
; defined in the top-level locations.  Each one of these MUST match the location
; name configured on the test agent (urlblast.ini or wptdriver.ini)

browser=IE 8
label="Office LAN - IE8"

label="Office LAN"

browser=IE 8
label="Virginia - IE8"


browser=IE 8
label="California - IE8"

browser=IE 9
label="California - IE9"

IMPORTANT: "Office", "Virginia" and "California" are logical groupings that are used in the UI but test machines will never be configured to point to them.  UrlBlast.ini and wptdriver.ini MUST point to a browser-specific configuration.

If the mappings are not set up correctly, you will be able to submit tests but they will never be processed because the test machines are not connecting with the correct location ID.