---
title: TestingBot Tunnel - Test Local and Staging Environments
description: Securely test localhost and staging websites with Selenium, Cypress,
  Puppeteer, and Playwright. No firewall changes required.
source_url:
  html: https://testingbot.com/support/tunnel
  md: https://testingbot.com/support/tunnel/index.md
---
![Local Testing Security](https://testingbot.com/assets/features/img-tunnel-922fb736230e7833039f44855837c5d87d845f2131d055410f52462122413048.png)

# TestingBot Tunnel

[**Download TestingBot Tunnel v4.7**](https://testingbot.com/downloads/testingbot-tunnel.zip)Windows, Linux, BSD, and macOS supportedSHA1: `42b7af652d0dc795d8fc3a6aba0c4a430c36166d`Released March 23, 2026 · Requires Java 11+

[View source on GitHub](https://github.com/testingbot/Testingbot-Tunnel)

**Maven:** `com.testingbot:TestingBotTunnel:4.7` **Docker:** `docker pull testingbot/tunnel`

Test websites on localhost, staging servers inside your private network, or systems behind a VPN. TestingBot Tunnel creates a secure connection between your environment and the TestingBot cloud—no firewall changes or IP whitelisting required.

- **Fast** : Static content caching and compression minimize latency. 
- **Secure** : SSH-encrypted connections with dedicated, ephemeral VMs. 
- **Robust** : Supports HTTP/1, HTTP/2, HTTP/3, WebSockets, and SSE. 
- **Simple** : Single JAR file or Docker image—ready in under a minute. 

## Local Environment Testing

Run automated tests against your local development server or private staging environment without exposing it to the internet.

Point your tests at `http://localhost:4445/wd/hub` instead of `https://hub.testingbot.com/wd/hub`, and the tunnel routes all traffic securely to the TestingBot browser and device grid.

The tunnel is a Java application (`.jar`) that acts as an HTTP(S) and WebSocket proxy, relaying requests between your local network and TestingBot.

## Optimized for Speed

Each tunnel session provisions a **dedicated VM** that launches in under a minute.

The tunnel accelerates testing by **caching static assets** and compressing traffic to minimize bandwidth usage.

For high-availability setups, run multiple tunnels from different machines on your network. This distributes load and provides redundancy for parallel test execution.

## Secure by Design

All traffic is encrypted using the **SSH protocol**. Each session runs on a dedicated VM that is automatically destroyed when your tests complete. No data persists.

## Built for Reliability

Designed to handle heavy parallel testing workloads with consistent performance.

**Protocol support:** HTTP, HTTPS, WebSockets, Server-Sent Events (SSE), HTTP/1, HTTP/2 and HTTP/3.

**Platform support:** Runs on any system with a JVM—Windows, Linux, macOS and BSD.

## Easy Setup

Download the JAR file and run it from the command line or use the Docker image:

    java -jar testingbot-tunnel.jar TESTINGBOT_KEY TESTINGBOT_SECRET

Replace `TESTINGBOT_KEY` and `TESTINGBOT_SECRET` with [your credentials](https://testingbot.com/members/user/edit). When you see "You may start your tests", the tunnel is ready.

Credentials are stored in `~/.testingbot` for subsequent runs.

## System Requirements

**Minimum:** 4 GB RAM, 2 CPU cores, Java 11 or higher.

For parallel testing with many concurrent sessions, increase CPU and RAM proportionally.

## Graceful Shutdown

Always shut down the tunnel gracefully to ensure proper cleanup. An abrupt termination may leave the tunnel registered as active in our system.

**Recommended methods:**

- Press `Ctrl+C` in the terminal
- Delete the PID file at `~/.testingbot-tunnel.pid`
- Send `kill -SIGUSR1 <pid>` to the tunnel process

## Tunnel Clients

For NodeJS projects, use our tunnel launcher package to programmatically start and stop tunnels:

[testingbot-tunnel-launcher on GitHub](https://github.com/testingbot/testingbot-tunnel-launcher)

[![TestingBot Tunnel Diagram](https://testingbot.com/assets/tunnel-diagram-small-af64aa8c1e0d3558a0cc730b3b7cc827264e9af90173acb7627cff04054e1d89.jpg)](https://testingbot.com/assets/tunnel-diagram.png "How the TestingBot Tunnel works")
Was this page helpful? Yes No 

## Looking for More Help?

Have questions or need more information?   
 You can reach us via the following channels:

- [Email us](https://testingbot.com/contact/new)
- [Join our Slack Channel](https://join.slack.com/t/testingb0t/shared_invite/zt-3bcw9xch-jk19~6XPs_xBrsAgAedkCw)
