TestingBot Tunnel
e65d07bf65f23dc5d78376f51018665aa1cd79dd
Released January 23, 2026 · Requires Java 11+
Maven: com.testingbot:TestingBotTunnel:4.6
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 to http://localhost:4445 instead of https://hub.testingbot.com, 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. 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+Cin 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