Skip to content

Run from another place ​

In plain words

Some websites behave differently depending on where you are: the language, the time zone, even the content. This page shows how to play back your recording as if you were somewhere else. It is for people comfortable with a terminal.

Replay can behave as if it were somewhere else: a different language, timezone and position, and optionally a different internet exit.

Options ​

FlagExampleEffect
--localede-DEThe page sees this language and formats dates and numbers for it
--timezoneEurope/BerlinThe page sees this timezone
--geolocation52.52,13.40The page gets this position if it asks for the location
--proxyhttp://proxy.example.com:8080All traffic goes through this proxy, so the site sees the proxy's country
node bin/replay.js checkout.json --locale en-AU --timezone Australia/Sydney --geolocation -33.87,151.21

These override what the recording stored. You can set the proxy once in STEPTRAILS_PROXY instead of on every command. Reports show the language, timezone and position, and only the words "proxy used": never the proxy address or its login.

Want to know whether a computer in another place can run StepTrails at all? Use Check your computer. To leave a whole round of testing for such a computer, see Run your tests on another computer.

What this is and is not ​

  • It emulates a place for the page. Sites that choose content by language, timezone or browser position behave as they would there.
  • Sites that decide by your internet address need the --proxy option with a proxy that exits in that country (your own, or one you pay for: StepTrails does not provide one).
  • It is not a machine in that country. Real network speed from that place needs a computer or a cloud runner there.

Scheduled runs from several places (free) ​

Copy templates/github-actions-replay.yml into .github/workflows/ of your project. It replays a recording every day for each place in its list, saves the reports, and fails on high security findings. Passwords go in GitHub secrets, never in the file. GitHub's free runners are in a few regions, so the places in the list are emulated.