# Integrating Selenium with Pcloudy

Last updated on : 09 Jan 2026

To run Selenium tests on Pcloudy, replace your local Selenium driver with the Pcloudy RemoteWebDriver and configure Pcloudy-specific capabilities.

## Required Pcloudy Capabilities

### Authentication & User Details
| Capability | Description |
|----|----|
| Pcloudy_Username | Registered email ID (Public Cloud) or Cloud URL (Private Cloud) |
| Pcloudy_ApiKey | API key generated from Pcloudy |
| clientName | Registered email ID |

| Capability | Description                        |
|----------------|----------------------------------------|
| os             | Platform OS (Windows, Mac, Linux)      |
| osVersion      | OS version (e.g., Windows 11, Sequoia) |
| browserName    | Browser (Chrome, Firefox, Safari)      |
| browserVersion | Browser version to be tested           |

You can download the sample project from the GITHUB (https://github.com/Smart-Software-Testing-Solutions-Opkey/Pcloudy-sample-projects/tree/master/selenium/java)

Sample Selenium Capability Configurations

E.g

Windows – Chrome

```java title="Java"
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("browserName", "chrome");

HashMap<String, Object> pcloudyOptions = new HashMap<>();
pcloudyOptions.put("userName", "abc@company.com");
pcloudyOptions.put("accessKey", "abc_api_key");
pcloudyOptions.put("os", "Windows");
pcloudyOptions.put("osVersion", "11");
pcloudyOptions.put("browserVersion", "142");
pcloudyOptions.put("clientName", "abc@company.com");
pcloudyOptions.put("seleniumVersion", "4.26.0");
pcloudyOptions.put("project", "Web_Release");
pcloudyOptions.put("build", "Build_2.1");
pcloudyOptions.put("name", "Signin_Test");
pcloudyOptions.put("tag", "Staging");
pcloudyOptions.put("local", false);
pcloudyOptions.put("Pcloudy_EnableVideo", false);

capabilities.setCapability("pcloudy:options", pcloudyOptions);
WebDriver driver = new RemoteWebDriver(
new URL("https://browser.device.pcloudy.com/seleniumcloud/wd/hub"),
capabilities
);
```

E.g

Mac – Safari

```java title="Java"
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("browserName", "safari");

HashMap<String, Object> pcloudyOptions = new HashMap<>();
pcloudyOptions.put("userName", "abc@company.com");
pcloudyOptions.put("accessKey", "abc_api_key");
pcloudyOptions.put("os", "Mac");
pcloudyOptions.put("osVersion", "Sequoia");
pcloudyOptions.put("browserVersion", "18");
pcloudyOptions.put("clientName", "abc@company.com");
pcloudyOptions.put("seleniumVersion", "4.26.0");
pcloudyOptions.put("project", "Web_Release");
pcloudyOptions.put("build", "Build_2.1");
pcloudyOptions.put("name", "Signin_Test");
pcloudyOptions.put("tag", "Staging");
pcloudyOptions.put("local", false);
pcloudyOptions.put("Pcloudy_EnableVideo", true);

capabilities.setCapability("pcloudy:options", pcloudyOptions);
WebDriver driver = new RemoteWebDriver(
new URL("https://browser.device.pcloudy.com/seleniumcloud/wd/hub"),
capabilities
);
```

## Execution
Once the capabilities are configured:

1.  Initialize the RemoteWebDriver

2.  Execute your Selenium test scripts

3.  View execution logs, videos, and reports from the Pcloudy dashboard

## Summary
- Pcloudy enables scalable Selenium automation on real browsers

- No infrastructure maintenance required

- Supports parallel execution

- Easy integration using RemoteWebDriver and capabilities
