# Configure Network, Proxy and Storage

The **Network, Proxy & Storage** section in the [Environment](/docs/environments/overview) editor controls how your test environment communicates with your application and what browser state is available before execution starts.

Configure network behavior, proxy settings, and preloaded browser storage to test different real-world scenarios without adding extra test steps.

## Network

Configure how requests are sent and how your application responds under different network conditions.

| Field | Description |
| --- | --- |
| Basic Authentication | Provide username and password credentials for applications protected with HTTP Basic Authentication, such as password-protected staging environments. |
| Network Throttling | Simulate different connection speeds by selecting a built-in profile or a custom throttle preset. |
| Request Headers | Add custom HTTP headers that are sent with requests made during the test execution. |

### Custom network throttle presets

In addition to built-in network profiles, you can create custom throttle presets from the **Network Throttling** dropdown by selecting **Add custom preset**.

Configure the following values:

- **Name** — A unique name for the preset, such as `Flaky 3G` or `Office Wi-Fi`.
- **Download** — Maximum download speed in Kbps.
- **Upload** — Maximum upload speed in Kbps.
- **Latency** — Network delay in milliseconds.

Custom presets are available at the project level, allowing your team to reuse the same network configurations across environments.

There is currently no plan limit on the number of custom presets.

## Proxy

Configure a proxy server for routing browser traffic during test execution.

| Field | Description |
| --- | --- |
| Server | The proxy server address. Example: `127.0.0.1:8080` |
| Bypass | A comma-separated list of hosts that should bypass the proxy. Example: `localhost, 127.0.0.1` |
| Username / Password | Authentication credentials required by the proxy server. |

Saved proxy passwords are never displayed after saving. Instead, TestOwl shows a **Clear saved password** option, keeping credentials secure similar to [Secrets](/docs/data/secrets).

## Storage

Preload browser storage before the test starts instead of creating separate steps to set up the required state.

| Field | Description |
| --- | --- |
| Cookies | Add key-value pairs that are stored as browser cookies when the test begins. |
| Local Storage | Add key-value pairs that are stored in the browser's `localStorage`. |
| Session Storage | Add key-value pairs that are stored in the browser's `sessionStorage`. |

Preloaded storage is useful for scenarios such as:

- Starting a test with an existing login session.
- Enabling feature flags before execution.
- Setting application preferences without recording additional steps.

## Next steps

::::cardgrid
:::card{title="Location & Locale" href="/docs/environments/location-and-locale"}
Configure language, region, and simulated location settings.
:::

:::card{title="Permissions, Appearance & Advanced" href="/docs/environments/permissions-appearance-advanced"}
Configure browser permissions, appearance, and advanced execution options.
:::
::::
## Web standards and reference documentation

TestOwl environment emulation conforms to standard web protocols and browser storage specifications:

- [MDN Web Docs: HTTP Cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies) — Cookie scope, expiration, and Secure/SameSite attribute guidelines.
- [MDN Web Docs: Window.localStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) — Client-side persistent key-value web storage APIs.
- [MDN Web Docs: Proxy Servers and Tunneling](https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling) — HTTP CONNECT tunneling and proxy configuration.
