Device Lab
The ProvaLab.io Device Lab gives you access to a catalog of real iOS and Android devices hosted in the cloud. You can browse available devices, request one for your testing session, run manual or automated tests, and release it when you are done.
Browsing the Device Catalog
- Navigate to QA Infrastructure in the left sidebar.
- Select the Device Lab tab.
- The device catalog displays all devices in your organization's pool.
Filtering Devices
Use the filter bar at the top of the catalog to narrow down the list:
- Platform -- iOS or Android
- Model -- Specific device model (e.g., iPhone 15 Pro, Pixel 8)
- OS Version -- Specific operating system version (e.g., iOS 18.0, Android 14)
- Device Type -- Phone or tablet
- Status -- Available, In Use, or Offline
You can combine multiple filters. For example, filter for "iOS + iPhone + iOS 18.x + Available" to find all available iPhones running iOS 18.
Understanding Device Status
Each device in the catalog shows a status indicator:
| Status | What It Means |
|---|---|
| Available (green) | The device is free and ready to use. You can request it immediately. |
| In Use (yellow) | Another team member is currently using this device. You can add yourself to the waitlist. |
| Offline (gray) | The device is not currently connected to the infrastructure. It may be undergoing maintenance. |
Requesting a Device
Manual Selection
- Find the device you want in the catalog.
- Click the Request button on the device card.
- Choose a session duration (30 minutes, 1 hour, 2 hours, or custom).
- Click Start Session.
- ProvaLab.io allocates the device to you and opens the live streaming view.
Automatic Allocation
If you do not need a specific device, you can let ProvaLab.io choose one for you:
- Click Request Device at the top of the Device Lab page.
- Specify your requirements:
- Platform: iOS or Android
- Minimum OS Version: e.g., iOS 17.0 or Android 13
- Device Type: Phone or Tablet (optional)
- Model preference: Specific model if desired (optional)
- Click Find Device.
- ProvaLab.io finds the best available match and allocates it to you.
Use automatic allocation when you need to test on a general platform/version combination rather than a specific device model. It is faster because ProvaLab.io picks from the full pool of available devices.
Viewing Device Details
Click on any device in the catalog to see its details page:
Device Information
- Model -- Device manufacturer and model name
- OS Version -- Currently installed operating system version
- UDID -- Unique device identifier
- Screen Resolution -- Native screen resolution
- Device Type -- iPhone, iPad, Android Phone, or Android Tablet
Device Capabilities
- Supported automation frameworks (Appium, XCUITest, UIAutomator)
- Available sensors and features (camera, GPS, biometrics)
- Network connectivity (Wi-Fi, cellular simulation)
Device Health
- Status -- Current availability
- Last Used -- When the device was last used in a session
- Uptime -- How long the device has been online
- Battery Level -- Current battery charge (for physical devices)
Running Manual Tests on a Device
Once you have a device allocated to you:
- The live streaming view opens automatically (see Live Device Streaming for details).
- Interact with the device through your browser -- tap, swipe, type, and use hardware buttons.
- Install your application:
- iOS: Upload an
.ipafile using the upload button in the device toolbar. - Android: Upload an
.apkor.aabfile.
- iOS: Upload an
- Test your application manually while the session is active.
- Take screenshots or start video recording as needed.
- When finished, click End Session to release the device.
Running Automated Tests on Devices
You can point your automated test framework at a cloud device:
From a ProvaLab.io Test Run
- Create a new test run.
- In the environment configuration, select Cloud Device.
- Choose a specific device or specify requirements for automatic allocation.
- Start the test run -- automated tests execute on the cloud device.
- Results, including screenshots and video, sync back to ProvaLab.io.
From Your Automation Framework
You can connect external automation tools (Appium, Selenium, Playwright) to ProvaLab.io cloud devices:
- Go to QA Infrastructure and select Connection Details.
- Copy the Remote URL for the automation grid.
- Configure your test framework to use this URL as the remote WebDriver endpoint.
- Set the desired capabilities to target the device platform and version you need.
- Run your tests -- they will execute on an allocated cloud device.
When running automated tests, use desired capabilities to specify the minimum OS version and platform rather than a specific device UDID. This gives ProvaLab.io flexibility to allocate any matching device, reducing wait times.
Managing Your Sessions
Viewing Active Sessions
- Go to QA Infrastructure and select the Sessions tab.
- See all active sessions across your organization.
- Your own sessions are highlighted at the top.
Extending a Session
If you need more time:
- Open your active session.
- Click Extend Session in the toolbar.
- Select additional time (15 min, 30 min, 1 hour).
- Click Extend.
Ending a Session
- Click End Session in the toolbar.
- Confirm you want to release the device.
- All session artifacts (screenshots, videos, logs) are saved automatically.
- The device returns to the pool and becomes available for others.
Always end your session when you are finished. Idle sessions automatically time out after a configurable period, but ending them manually ensures teammates can use the device sooner.