URL: https://testingbot.com/ # Cross Browser Testing on 6100+ Real Browsers & Devices Run automated, manual, visual and AI-assisted tests on 6100+ real browsers and physical iOS and Android devices, with parallel execution and CI/CD integrations. Trusted by some of the world's most innovative companies [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) No credit card required 1+bn Tests Executed 180k Active Users 6100+ Browsers & Devices testingbot.com/members Live Running 14 Queued 47 Avg queue 1.2s Today 8,142 Test sessionslast 60s PassRunQueue Parallel workers62/100 active EU region 3.7× Faster than self-hosted grids and dev machines Boost your tests About TestingBot ## All-in-one cross-browser, mobile and AI testing platform TestingBot runs your Selenium, Appium, Playwright, Cypress, Puppeteer, Espresso, XCUITest and Maestro tests on 6100+ real browsers and physical iOS and Android devices. Automated, manual, visual and AI-assisted testing with parallel execution and CI/CD integrations. ### Web Testing Test on 6100+ real browsers across Windows, macOS and Linux. [ #### Live / Manual Interactive browser testing ](https://testingbot.com/features/manual-browser-testing)[ #### Automated Selenium, Playwright, Puppeteer & Cypress ](https://testingbot.com/features)[ #### AI Testing AI-driven testing & MCP integration ](https://testingbot.com/features/ai-testing)[ #### Visual Testing Screenshot comparison of websites ](https://testingbot.com/features/screenshot-testing) ### Mobile App Testing Test on real physical iOS and Android devices. [ #### Live / Manual Interactive device testing ](https://testingbot.com/features/manual-mobile-testing)[ #### Automated Appium, Espresso, XCUITest & Maestro ](https://testingbot.com/real-device-testing)[ #### AI Testing AI-driven testing on real devices ](https://testingbot.com/features/ai-testing)[ #### Visual Testing App screenshot comparison ](https://testingbot.com/features/screenshot-testing) ![App screenshot comparison](https://testingbot.com/assets/features/manual-flow-b2c093218b8db3363e5903a6197ce47efa4361cd8c114738489bbc673b5d168a.jpg) ## Cross-Browser Testing Made Simple Get one-click access to real browsers running on macOS, Windows and Linux platforms. Switch platforms, locations and screen resolutions instantly. Test across all versions of Internet Explorer (IE8 to IE11), Edge, Chrome, Safari, Firefox and Opera. ![Chrome](https://testingbot.com/assets/home/chrome-97eb1fabe899086fad592ef3ed29d82d0a206a2002d5c3be62079a3163391e1d.svg)Chrome ![Safari](https://testingbot.com/assets/environments/svg/safari-e4837bb5f9a9729fef843af4180372e975c62587808b8ab479f615f3e240e858.svg)Safari ![Firefox](https://testingbot.com/assets/home/firefox-a8ee4666d002663e9868f9b15eb50f681cc03839ae1ead6432353c617496b95d.svg)Firefox ![Edge](https://testingbot.com/assets/home/edge-8204f73ccd649193b2a4d066840b4431b982015625e0c42a95bf91b5eec127b2.svg)Edge [Start Testing](https://testingbot.com/features/manual-browser-testing) ## Why teams choose TestingBot ### Improve test coverage Cross-browser, real device and visual testing on 6100+ browser and device combinations. ### Boost productivity with AI AI-powered test creation and execution. Write tests in natural language, let AI do the rest. ### Accelerate testing cycles Run tests in parallel across multiple browsers and devices. Ship faster with confidence. ## Works with your favorite testing frameworks Native support for all major web and mobile testing frameworks. Get started in minutes. ### Web Testing [![](https://testingbot.com/assets/integrations/selenium-1403d7bf83f64f56f05cea3fe50ae45bc3025d5a2433b7b05d2b199fec753cf6.svg) Selenium ](https://testingbot.com/features/automation/selenium)[![](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg) Playwright ](https://testingbot.com/features/automation/playwright)[![](https://testingbot.com/assets/support/cypress-409c9fd3f79115ed7676aa1df4f6a217dc4402b3366a61984924aec7b4fefa97.svg) Cypress ](https://testingbot.com/features/automation/cypress)[![](https://testingbot.com/assets/support/puppeteer-0a8cdd38af69dabd46638afbb3bffc8a372902949aa599663ec379f3e875263c.svg) Puppeteer ](https://testingbot.com/features/automation/puppeteer)[WebdriverIO](https://testingbot.com/support/web-automate/selenium/nodejs/webdriverio)[![](https://testingbot.com/assets/wizard/robotframework-08821f4942343bcb1f828470b5cbff3163369c14884b7ca285be190017ee7a94.png) RobotFramework ](https://testingbot.com/support/web-automate/selenium/robotframework) ### Mobile Testing [![](https://testingbot.com/assets/support/appium-4b35a8bb56bae236bd84c539cee9b8bbb489a55ddf48e32d059c86685d230354.svg) Appium ](https://testingbot.com/features/automation/appium)[![](https://testingbot.com/assets/integrations/espresso-a8ff30da0c385f89f4e694bb29fc4779ad132e8e3f4a777a38e608e0492ff610.svg) Espresso ](https://testingbot.com/features/automation/espresso)[![](https://testingbot.com/assets/integrations/xcuitest-4a935f2368661d89d3559b3c5af3377236029478ae76bb43253f3c3bee712096.svg) XCUITest ](https://testingbot.com/features/automation/xcuitest)[![](https://testingbot.com/assets/integrations/maestro-9d782f30f13fb4efaf9928b704c7a787eb14cb9e5b20c650137bb65892334b8b.svg) Maestro ](https://testingbot.com/features/automation/maestro)[Flutter](https://testingbot.com/support/app-automate/appium/flutter)[React Native](https://testingbot.com/features/automation/appium) ### Languages & SDKs [Java](https://testingbot.com/support/web-automate/selenium/java)[Python](https://testingbot.com/support/web-automate/selenium/python)[NodeJS](https://testingbot.com/support/web-automate/selenium/nodejs)[C# / .NET](https://testingbot.com/support/web-automate/selenium/csharp)[Ruby](https://testingbot.com/support/web-automate/selenium/ruby)[php PHP](https://testingbot.com/support/web-automate/selenium/php) [View all documentation](https://testingbot.com/support) Real Device Cloud ## Test on real iOS & Android devices Access hundreds of real physical devices for manual and automated testing. iPhones, iPads, Samsung Galaxy, Pixel, Smart TVs and more. [ ![](https://testingbot.com/assets/support/appium-4b35a8bb56bae236bd84c539cee9b8bbb489a55ddf48e32d059c86685d230354.svg) Appium ](https://testingbot.com/features/automation/appium)[ ![](https://testingbot.com/assets/integrations/espresso-a8ff30da0c385f89f4e694bb29fc4779ad132e8e3f4a777a38e608e0492ff610.svg) Espresso ](https://testingbot.com/features/automation/espresso)[ ![](https://testingbot.com/assets/integrations/xcuitest-4a935f2368661d89d3559b3c5af3377236029478ae76bb43253f3c3bee712096.svg) XCUITest ](https://testingbot.com/features/automation/xcuitest)[ ![](https://testingbot.com/assets/integrations/maestro-9d782f30f13fb4efaf9928b704c7a787eb14cb9e5b20c650137bb65892334b8b.svg) Maestro ](https://testingbot.com/features/automation/maestro) [Explore device cloud](https://testingbot.com/real-device-testing) ![Real device testing](https://testingbot.com/assets/hero/app-testing-eb9e2816aa7dce01b215db1df0a54c361c2ff9b8c30850a5dd00f088c9255cb3.webp) AI-Powered Testing ## AI Test Agent Create and run tests without writing code. Simply describe what you want to test in plain language. TestingBot AI understands your application and generates reliable test steps automatically. [Try AI Testing](https://testingbot.com/features/ai-testing) ![AI Testing Interface](https://testingbot.com/assets/home/ai-chat-24cc1ab8234690bad4a866888a2bd8e11f1301b7e21ad86be5d4d61be838707a.webp) ![Accessibility Testing Dashboard](https://testingbot.com/assets/features/accessibility/accessibility_ui-b64827a2253e7d403626e287a9da43bbf597d15b8e61fce56a53d8f3ffb9db1a.jpg) Accessibility Testing ## WCAG Compliance Testing Identify and fix accessibility issues across your websites. Ensure WCAG compliance and deliver an inclusive experience for all users. Meet legal requirements like the European Accessibility Act (EAA), reach a broader audience and improve SEO with accessibility best practices. WCAG 2.1 Compliance Scheduled Testing Detailed Reports Severity Classification [Explore Accessibility Testing](https://testingbot.com/features/accessibility-testing) ## Trusted by teams worldwide Join thousands of companies shipping better software with TestingBot 1B+ Tests Executed 180,000+ Active Users 6,100+ Browsers & Devices 106 Countries GDPR Compliant SAML SSO Single Sign-On Star Level 1 Certified 99.99% Uptime SLA ## Seamlessly integrate into your workflow Connect TestingBot with your CI/CD pipeline, issue trackers and communication tools. [![](https://testingbot.com/assets/home/integrations/jenkins-99fe0a162ffc131f4b0dfc0929f8919e6c671555d418ba1ea8d4166e0b5d314a.webp) Jenkins ](https://testingbot.com/support/integrations/ci-cd/jenkins)[![](https://testingbot.com/assets/integrations/github-actions-8436242ad9e15381f84f1a98a10dddce15611087f121d6305782e211942b7842.webp) GitHub ](https://testingbot.com/support/integrations/ci-cd/github-actions)[![](https://testingbot.com/assets/integrations/gitlab-e4c0b6db07d07bc0a400f5606e258f4dc8a51b778e97bbfa51d1d531f3cb049a.webp) GitLab ](https://testingbot.com/support/integrations/ci-cd/gitlab)[![](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) CircleCI ](https://testingbot.com/support/integrations/ci-cd/circleci)[![](https://testingbot.com/assets/integrations/travis-f3a8872deab0dd6f4c13686fd8255cb07c426309090e335a9198312b49c43232.webp) Travis CI ](https://testingbot.com/support/integrations/ci-cd/travis-ci)[![](https://testingbot.com/assets/home/integrations/slack-bb80ee3eab2780485942bb08f04c207f99b471ef243aa5d98342b63d725cc258.svg) Slack ](https://testingbot.com/support/integrations/slack)[![](https://testingbot.com/assets/home/integrations/jira-883ba56e56e7c50d4c67c5500062c4161a6f21d052f7781b73fb2f32f936da17.webp) Jira ](https://testingbot.com/support/integrations/jira)[Azure](https://testingbot.com/support/integrations/ci-cd/azure)[![](https://testingbot.com/assets/integrations/bitbucket-02aabcd549221726e052f2ee19c8959fbb218160ad7f7c31f6e6b96e7824a42c.webp) Bitbucket ](https://testingbot.com/support/integrations/ci-cd/bitbucket)[![](https://testingbot.com/assets/integrations/teamcity-7e75cdb835903a4983ad276c41d95e569ceac5be486e96ec1f955029ce5bb319.svg) TeamCity ](https://testingbot.com/support/integrations/ci-cd/teamcity)[![](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) Bamboo ](hhttps://testingbot.com/support/integrations/ci-cd/bamboo)[![](https://testingbot.com/assets/integrations/app-center-icon-2c5c0d6c296fd04d1d3d0109db02dde20bb93a5ee7a9616e7805f27d6ec6503a.svg) App Center ](https://testingbot.com/support/integrations/appcenter) [View all integrations](https://testingbot.com/integrations) FAQ ## Frequently Asked Questions What is cross-browser testing? Cross-browser testing verifies that a website or web application works correctly across different browsers (Chrome, Safari, Firefox, Edge, Internet Explorer), browser versions, operating systems and screen sizes. It catches rendering inconsistencies, JavaScript compatibility issues and CSS bugs before users encounter them. TestingBot runs your tests on 6100+ real browser and OS combinations in parallel. How do I test a website on multiple browsers? Use a cross-browser testing platform like TestingBot. Sign up, point your Selenium, Playwright, Cypress or Puppeteer test scripts at the TestingBot grid by changing the WebDriver URL, and your tests run in parallel across thousands of real browsers and devices. You can also start live, interactive sessions on any browser without writing code. Which test automation frameworks does TestingBot support? TestingBot natively supports Selenium, Appium, Playwright, Cypress, Puppeteer, Espresso, XCUITest and Maestro. SDKs are available for Java, JavaScript, TypeScript, Python, Ruby, C#, PHP and Go. AI assistants like Claude Code and Cursor can also access the TestingBot REST API via a [Model Context Protocol (MCP) server](https://testingbot.com/support/ai/mcp) to inspect test runs and debug failures from your editor. Does TestingBot support real iOS and Android devices? Yes. TestingBot operates a cloud of physical iOS and Android devices, including iPhones (from iPhone 6s to iPhone 17 Pro), iPads, Samsung Galaxy phones, Pixel devices and tablets. You can run automated Appium, Espresso, XCUITest or Maestro tests on real hardware, or take manual control via the [live testing interface](https://testingbot.com/features/manual-mobile-testing). How is TestingBot different from BrowserStack, Sauce Labs and LambdaTest? TestingBot is more affordable than BrowserStack and Sauce Labs (typically 30 to 40 percent cheaper), includes real device testing in every paid plan, hosts data in the European Union for GDPR compliance, and ships features faster, Apple Silicon support arrived more than ten months before Sauce Labs. See the dedicated comparisons: [BrowserStack alternative](https://testingbot.com/browserstack-alternative), [Sauce Labs alternative](https://testingbot.com/saucelabs-alternative), [LambdaTest alternative](https://testingbot.com/lambdatest-alternative). Does TestingBot support AI-driven testing? Yes. TestingBot offers [codeless AI testing](https://testingbot.com/support/ai/codeless), describe in plain language what you want to test, and an AI agent creates and runs the test on the browsers you choose, reporting back any failures. TestingBot also exposes its REST API via a [Model Context Protocol (MCP) server](https://testingbot.com/support/ai/mcp) so AI assistants like Claude Code and Cursor can inspect test runs, fetch logs and debug failures from your editor. See the full [AI testing overview](https://testingbot.com/support/ai) for integrations with Magnitude, Stagehand and Notte. Where is TestingBot data hosted? TestingBot is built and hosted in the European Union. All test data, video recordings and logs are stored on EU-based infrastructure, making TestingBot a strong choice for GDPR-compliant testing programs and for teams with European data-residency requirements. Is there a free trial? Yes. TestingBot offers a free plan and a free trial of paid features. No credit card is required to start. During the trial you can run automated tests, live manual sessions, screenshot tests and visual comparisons on browsers and real devices. No credit card required ## Ready to get started? Join thousands of teams shipping better software with TestingBot [Start Free Trial](https://testingbot.com/users/sign_up)[View pricing](https://testingbot.com/pricing) Free 14-day trial 5-minute setup 24/7 support --- URL: https://testingbot.com/features # All-in-One Cross Browser & Mobile Testing Platform TestingBot is a cloud testing platform that runs your Selenium, Appium, Playwright, Cypress, Puppeteer, Espresso, XCUITest and Maestro tests on 6100+ real desktop browsers and physical iOS and Android devices. Test in parallel, debug with video and screenshot recording and integrate with any CI/CD system. [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) Browsers & devices6100+ Uptime SLA99.99% testingbot.com/members Live 14Running 8+Frameworks 6100+Browsers Chrome 146 macOS Safari 26 macOS Firefox 132 Win 11 Edge 146 Win 11 Chrome dev Linux Safari TP Sequoia iPhone 17 iOS 18 iPad Pro iPadOS Galaxy S26 Android Pixel 10 Android Galaxy S25 Android IE 11 Win 10 Test framework launchers EU region ![Selenium](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg) Selenium ![Appium](https://testingbot.com/assets/support/appium-4b35a8bb56bae236bd84c539cee9b8bbb489a55ddf48e32d059c86685d230354.svg) Appium ![Cypress](https://testingbot.com/assets/support/cypress-409c9fd3f79115ed7676aa1df4f6a217dc4402b3366a61984924aec7b4fefa97.svg) Cypress ![Puppeteer](https://testingbot.com/assets/support/puppeteer-0a8cdd38af69dabd46638afbb3bffc8a372902949aa599663ec379f3e875263c.svg) Puppeteer ![Playwright](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg) Playwright ![Espresso](https://testingbot.com/assets/integrations/espresso-a8ff30da0c385f89f4e694bb29fc4779ad132e8e3f4a777a38e608e0492ff610.svg) Espresso ![XCUITest](https://testingbot.com/assets/integrations/xcuitest-4a935f2368661d89d3559b3c5af3377236029478ae76bb43253f3c3bee712096.svg) XCUITest ![Maestro](https://testingbot.com/assets/integrations/maestro-9d782f30f13fb4efaf9928b704c7a787eb14cb9e5b20c650137bb65892334b8b.svg) Maestro Tests in parallel ## Trusted by some of the world's most innovative companies ## All-in-one cross browser testing platform The TestingBot cloud brings you the power to test your website and mobile app on [+6100 browsers & devices](https://testingbot.com/support/web-automate/browsers). Test on the latest Chrome, Firefox, Edge and Safari, plus legacy versions like Internet Explorer 11, all running on real Windows, macOS and Linux machines. Let us handle your testing infrastructure while you focus on development. Run tests effortlessly on our maintained cloud of desktop and mobile platforms. [Start free](https://testingbot.com/users/sign_up) Live cloud grid uptime 99.99% · ready ![](https://testingbot.com/assets/environments/svg/chrome-c4081ff447d2d898d4afcb8f074a907c960e6f007716c1a1d119eee6803c4042.svg) ![](https://testingbot.com/assets/environments/svg/safari-e4837bb5f9a9729fef843af4180372e975c62587808b8ab479f615f3e240e858.svg) ![](https://testingbot.com/assets/environments/svg/firefox-90dce8de549728e54bd3209cfacb9f1a868c2c8e70d243eb5b930d69cbb2fb1e.svg) ![](https://testingbot.com/assets/environments/svg/edge-b639cac0c7a843271a0d3a6ccf894cc296064b63b2cd2920209bc5d030f3c70b.svg) ![](https://testingbot.com/assets/environments/svg/opera-fe6e1d716472033125a969dfe6489ab45f0eded91e9260292d6c4ce9b682a330.svg) ![](https://testingbot.com/assets/environments/svg/ie-075955285f8005808f3d26947aace877f96e5843a33bd4d6e997709d3a294451.svg) ![](https://testingbot.com/assets/environments/svg/samsung-5553ecc5c8afc076bc0f1355e2bec6f5411f360d7ff0de318040d34fda8ec936.svg) ![](https://testingbot.com/assets/environments/svg/android-1b3d235e17522e2238e1c55b4e9cdd41219f653cd958ea065877d3813f32ffc3.svg) ![](https://testingbot.com/assets/environments/svg/linux-c2988130428305e3fc734f852b695644aa5cc90e8df7ff6f0bc41cae70e4c43f.svg) ![](https://testingbot.com/assets/environments/svg/chrome-c4081ff447d2d898d4afcb8f074a907c960e6f007716c1a1d119eee6803c4042.svg) ![](https://testingbot.com/assets/environments/svg/safari-e4837bb5f9a9729fef843af4180372e975c62587808b8ab479f615f3e240e858.svg) ![](https://testingbot.com/assets/environments/svg/firefox-90dce8de549728e54bd3209cfacb9f1a868c2c8e70d243eb5b930d69cbb2fb1e.svg) ![](https://testingbot.com/assets/environments/svg/edge-b639cac0c7a843271a0d3a6ccf894cc296064b63b2cd2920209bc5d030f3c70b.svg) ![](https://testingbot.com/assets/environments/svg/samsung-5553ecc5c8afc076bc0f1355e2bec6f5411f360d7ff0de318040d34fda8ec936.svg) ![](https://testingbot.com/assets/environments/svg/chrome-c4081ff447d2d898d4afcb8f074a907c960e6f007716c1a1d119eee6803c4042.svg) ![](https://testingbot.com/assets/environments/svg/safari-e4837bb5f9a9729fef843af4180372e975c62587808b8ab479f615f3e240e858.svg) ![](https://testingbot.com/assets/environments/svg/firefox-90dce8de549728e54bd3209cfacb9f1a868c2c8e70d243eb5b930d69cbb2fb1e.svg) ![](https://testingbot.com/assets/environments/svg/edge-b639cac0c7a843271a0d3a6ccf894cc296064b63b2cd2920209bc5d030f3c70b.svg) 6100+combinations Built for scale ## 6100+ real desktop and mobile browser combinations Test on the widest range of desktop and mobile devices in our real device cloud. We handle setup, procurement and maintenance, so you can focus entirely on testing. ### Windows, macOS & Linux One-click access to every macOS, Linux and Windows version. From Yosemite to macOS Tahoe, and Windows 7 to Windows 11. We've got you covered. ### Every browser, all versions Edge, Safari, Firefox, Chrome, Opera and IE, constantly updated and instantly available. ### Security Single-Use VMs and real devices, reset after each use. ### Real Android and iOS devices Test across real iPhone, iPads, Google, OnePlus, Xiaomi and Samsung phones and tabs. ### No setup and maintenance Instantly access 6100+ devices and browsers. Experience zero setup or maintenance hassles, and focus only on testing. ### Performance Our infrastructure is built for performance to eliminate test flakiness and latency. Automation frameworks ## Test Automation Frameworks TestingBot supports these popular Test Automation Frameworks: - [![Selenium Testing](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg)](https://testingbot.com/features/automation/selenium) ### [Selenium](https://testingbot.com/features/automation/selenium) Popular Browser Automation Framework, using WebDriver, which supports all major browsers. Best for: enterprise-grade browser automation across every major language. [Try with Selenium](https://testingbot.com/features/automation/selenium) - [![Appium Testing](https://testingbot.com/assets/support/appium-4b35a8bb56bae236bd84c539cee9b8bbb489a55ddf48e32d059c86685d230354.svg)](https://testingbot.com/features/automation/appium) ### [Appium](https://testingbot.com/features/automation/appium) Mobile Automation Framework, using WebDriver, runs on physical devices and simulators/emulators. Best for: native mobile app automation on real iOS & Android devices. [Try with Appium](https://testingbot.com/features/automation/appium) - [![Cypress Testing](https://testingbot.com/assets/support/cypress-409c9fd3f79115ed7676aa1df4f6a217dc4402b3366a61984924aec7b4fefa97.svg)](https://testingbot.com/features/automation/cypress) ### [Cypress](https://testingbot.com/features/automation/cypress) Javascript based E2E testing on Chrome and Firefox. Best for: fast JavaScript-only end-to-end testing. [Try with Cypress](https://testingbot.com/features/automation/cypress) - [![Puppeteer Testing](https://testingbot.com/assets/support/puppeteer-0a8cdd38af69dabd46638afbb3bffc8a372902949aa599663ec379f3e875263c.svg)](https://testingbot.com/features/automation/puppeteer) ### [Puppeteer](https://testingbot.com/features/automation/puppeteer) Chrome DevTools based Automation Framework by Google. Supports Chrome and Edge browsers. Best for: Chromium DevTools-based automation and scraping. [Try with Puppeteer](https://testingbot.com/features/automation/puppeteer) - [![Playwright Testing](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg)](https://testingbot.com/features/automation/playwright) ### [Playwright](https://testingbot.com/features/automation/playwright) Similar to Puppeteer, built by Microsoft, with support for Chrome and Edge. Best for: modern multi-browser testing in TypeScript, Python and .NET. [Try with Playwright](https://testingbot.com/features/automation/playwright) - [![Espresso Testing](https://testingbot.com/assets/integrations/espresso-a8ff30da0c385f89f4e694bb29fc4779ad132e8e3f4a777a38e608e0492ff610.svg)](https://testingbot.com/features/automation/espresso) ### [Espresso](https://testingbot.com/features/automation/espresso) Android Automation Framework, runs on physical devices and emulators. Best for: Android-only UI testing inside the app process. [Try with Espresso](https://testingbot.com/features/automation/espresso) - [![XCUITest Testing](https://testingbot.com/assets/integrations/xcuitest-4a935f2368661d89d3559b3c5af3377236029478ae76bb43253f3c3bee712096.svg)](https://testingbot.com/features/automation/xcuitest) ### [XCUITest](https://testingbot.com/features/automation/xcuitest) iOS Automation Framework, runs on physical devices and simulators. Best for: iOS-only UI testing with Apple's native framework. [Try with XCUITest](https://testingbot.com/features/automation/xcuitest) - [![Maestro Testing](https://testingbot.com/assets/integrations/maestro-9d782f30f13fb4efaf9928b704c7a787eb14cb9e5b20c650137bb65892334b8b.svg)](https://testingbot.com/features/automation/maestro) ### [Maestro](https://testingbot.com/features/automation/maestro) Maestro is a mobile UI testing framework, which supports testing on both iOS and Android. Best for: declarative mobile flows without writing code. [Try with Maestro](https://testingbot.com/features/automation/maestro) Comparing frameworks? See [Playwright vs Selenium](https://testingbot.com/playwright-vs-selenium) for a head-to-head breakdown. Buy vs build ## TestingBot vs a DIY in-house grid Building and maintaining your own browser and device lab is expensive and slow. Here is how a hosted cloud compares to running the infrastructure yourself. | Capability | TestingBot | DIY in-house grid | | --- | --- | --- | | Browser & device coverage | 6100+ ready to use | You buy and maintain | | Setup time | Minutes | Weeks to months | | Maintenance burden | None, managed for you | Constant patching, OS upgrades and capacity planning | | Real iOS devices | iPhone, iPad, real hardware | Hard (Apple licensing & MDM) | | Parallel sessions | Scale to hundreds in parallel | Capped by your hardware | | EU data residency | Hosted in the EU | Build it yourself | | Video & screenshot recording | Recorded automatically on every test | Build it yourself | | CI/CD integrations | Jenkins, GitHub Actions, CircleCI, GitLab, Azure DevOps | DIY scripts and plugins | | Live debugging | Built-in | Custom VNC tooling | | Support | 24/7 included | Internal team only | Live mobile testing ## Take control of a device Interact with the remote mobile device, just as you would with a device in hand. Tap, scroll, zoom, swipe and more. Open a real device anywhere in the world and drive it from your browser. Tap, scroll, swipe, install your APK or IPA, capture network logs and reproduce a customer issue in real time. [Try Live Mobile Testing](https://testingbot.com/features/manual-mobile-testing) Live device · iPhone 17 Pro · iOS 18.2 connected Builds5 checkout-2.4.1.ipa 24.3 MB · just now checkout-2.4.0.ipa 23.8 MB · 2 days payment-1.2.0.ipa 18.1 MB · 5 days profile-3.0.0.apk 32.5 MB · 1 week admin-0.9.0.ipa 14.7 MB · 2 weeks drop .ipa / .apk Install on device 9:41 checkout-2.4.1 codesign · verify · launch Checkout v2.4.1 · staging order #4291 Pay €12.40 Cancel Item added Headphones · Pro Promo applied WELCOME10 · -€2 Address Brussels, BE Console·checkout-2.4.1 allinfowarnerr 18:45:01.123ℹAppDelegatedidFinishLaunchingWithOptions 18:45:01.187ℹLifecyclewillEnterForeground 18:45:01.234→URLSessionGET /v1/cart → 200 (123ms) 18:45:01.305→URLSessionGET /v1/promo → 200 (88ms) 18:45:01.412ℹCartloaded 3 items, total €12.40 18:45:01.498ℹFeatureFlagscheckout.v2 = on 18:45:01.567✎TextFieldsearch.text = "order #4291" 18:45:01.612→URLSessionPOST /v1/search → 200 (74ms) 18:45:01.701⚠ImageCacheevicted 12 entries (32.4 MB) 18:45:01.789✓AuthServicetoken refreshed (exp 14:00) 18:45:01.834👆UItap PayButton (40,520) 18:45:01.892→URLSessionPOST /v1/checkout → 201 (212ms) 18:45:01.945✓Paymentauth ok · stripe\_id=ch\_3Q9… 18:45:02.012ℹAnalyticslogEvent("checkout\_done") 18:45:02.078→URLSessionGET /v1/orders → 200 (96ms) 18:45:02.134ℹRoutingpush OrderConfirmationVC 18:45:02.201✓Memorystable · 124 MB 18:45:01.123ℹAppDelegatedidFinishLaunchingWithOptions 18:45:01.187ℹLifecyclewillEnterForeground 18:45:01.234→URLSessionGET /v1/cart → 200 (123ms) 18:45:01.305→URLSessionGET /v1/promo → 200 (88ms) 18:45:01.412ℹCartloaded 3 items, total €12.40 18:45:01.498ℹFeatureFlagscheckout.v2 = on 18:45:01.567✎TextFieldsearch.text = "order #4291" 18:45:01.612→URLSessionPOST /v1/search → 200 (74ms) 18:45:01.701⚠ImageCacheevicted 12 entries (32.4 MB) 18:45:01.789✓AuthServicetoken refreshed (exp 14:00) 18:45:01.834👆UItap PayButton (40,520) 18:45:01.892→URLSessionPOST /v1/checkout → 201 (212ms) 18:45:01.945✓Paymentauth ok · stripe\_id=ch\_3Q9… 18:45:02.012ℹAnalyticslogEvent("checkout\_done") 18:45:02.078→URLSessionGET /v1/orders → 200 (96ms) 18:45:02.134ℹRoutingpush OrderConfirmationVC 18:45:02.201✓Memorystable · 124 MB 18:45:01.123ℹAppDelegatedidFinishLaunchingWithOptions 18:45:01.187ℹLifecyclewillEnterForeground 18:45:01.234→URLSessionGET /v1/cart → 200 (123ms) 18:45:01.305→URLSessionGET /v1/promo → 200 (88ms) 18:45:01.412ℹCartloaded 3 items, total €12.40 18:45:01.498ℹFeatureFlagscheckout.v2 = on 18:45:01.567✎TextFieldsearch.text = "order #4291" 18:45:01.612→URLSessionPOST /v1/search → 200 (74ms) 18:45:01.701⚠ImageCacheevicted 12 entries (32.4 MB) 18:45:01.789✓AuthServicetoken refreshed (exp 14:00) 18:45:01.834👆UItap PayButton (40,520) 18:45:01.892→URLSessionPOST /v1/checkout → 201 (212ms) 18:45:01.945✓Paymentauth ok · stripe\_id=ch\_3Q9… 18:45:02.012ℹAnalyticslogEvent("checkout\_done") 18:45:02.078→URLSessionGET /v1/orders → 200 (96ms) 18:45:02.134ℹRoutingpush OrderConfirmationVC 18:45:02.201✓Memorystable · 124 MB 18:45:01.123ℹAppDelegatedidFinishLaunchingWithOptions 18:45:01.187ℹLifecyclewillEnterForeground 18:45:01.234→URLSessionGET /v1/cart → 200 (123ms) 18:45:01.305→URLSessionGET /v1/promo → 200 (88ms) 18:45:01.412ℹCartloaded 3 items, total €12.40 18:45:01.498ℹFeatureFlagscheckout.v2 = on 18:45:01.567✎TextFieldsearch.text = "order #4291" 18:45:01.612→URLSessionPOST /v1/search → 200 (74ms) 18:45:01.701⚠ImageCacheevicted 12 entries (32.4 MB) 18:45:01.789✓AuthServicetoken refreshed (exp 14:00) 18:45:01.834👆UItap PayButton (40,520) 18:45:01.892→URLSessionPOST /v1/checkout → 201 (212ms) 18:45:01.945✓Paymentauth ok · stripe\_id=ch\_3Q9… 18:45:02.012ℹAnalyticslogEvent("checkout\_done") 18:45:02.078→URLSessionGET /v1/orders → 200 (96ms) 18:45:02.134ℹRoutingpush OrderConfirmationVC 18:45:02.201✓Memorystable · 124 MB ● streaming 17 lines/s · syslog Developer experience ## Test in your favorite language Use the SDK of your choice. TestingBot integrates with Jest, Mocha, PyTest, NUnit, RSpec and other popular test frameworks, plus every major CI/CD system. hub.testingbot.com Copy JavaScript Python Java Ruby C# PHP // Run a Selenium test on the TestingBot gridconstwd=require('selenium-webdriver');constdriver=awaitnewwd.Builder().usingServer('https://hub.testingbot.com/wd/hub').withCapabilities({'tb:options': {name:'Checkout flow'},browserName:'chrome',browserVersion:'latest',platformName:'Windows 11'}).build();awaitdriver.get('https://example.com');awaitdriver.quit(); # Run a Selenium test on the TestingBot gridfromseleniumimportwebdriveroptions=webdriver.ChromeOptions()options.set\_capability('tb:options', {'name':'Checkout flow'})options.set\_capability('browserVersion','latest')options.set\_capability('platformName','Windows 11')driver=webdriver.Remote(command\_executor='https://hub.testingbot.com/wd/hub',options=options)driver.get('https://example.com')driver.quit() // Run a Selenium test on the TestingBot gridDesiredCapabilitiescaps=newDesiredCapabilities();caps.setCapability("browserName","chrome");caps.setCapability("browserVersion","latest");caps.setCapability("platformName","Windows 11");WebDriverdriver=newRemoteWebDriver(newURL("https://hub.testingbot.com/wd/hub"),caps);driver.get("https://example.com");driver.quit(); # Run a Selenium test on the TestingBot gridrequire'selenium-webdriver'caps=Selenium::WebDriver::Remote::Capabilities.chrome(browserVersion:'latest',platformName:'Windows 11','tb:options'=\>{name:'Checkout flow'})driver=Selenium::WebDriver.for(:remote,url:'https://hub.testingbot.com/wd/hub',capabilities:caps)driver.get'https://example.com'driver.quit // Run a Selenium test on the TestingBot gridvaroptions=newChromeOptions();options.AddAdditionalOption("browserVersion","latest");options.AddAdditionalOption("platformName","Windows 11");IWebDriverdriver=newRemoteWebDriver(newUri("https://hub.testingbot.com/wd/hub"),options);driver.Navigate().GoToUrl("https://example.com");driver.Quit(); // Run a Selenium test on the TestingBot grid$capabilities=DesiredCapabilities::chrome();$capabilities-\>setCapability('browserVersion','latest');$capabilities-\>setCapability('platformName','Windows 11');$driver=RemoteWebDriver::create('https://hub.testingbot.com/wd/hub',$capabilities);$driver-\>get('https://example.com');$driver-\>quit(); Connected· [View documentation](https://testingbot.com/support/web-automate/selenium/nodejs) [View documentation](https://testingbot.com/support/web-automate/selenium/python) [View documentation](https://testingbot.com/support/web-automate/selenium/java) [View documentation](https://testingbot.com/support/web-automate/selenium/ruby) [View documentation](https://testingbot.com/support/web-automate/selenium/csharp) [View documentation](https://testingbot.com/support/web-automate/selenium/php) ![Test on real mobile and desktop devices](https://testingbot.com/assets/features/manual-flow-b2c093218b8db3363e5903a6197ce47efa4361cd8c114738489bbc673b5d168a.jpg) ## Test on real mobile and desktop devices TestingBot only runs real browsers on real Windows, macOS and Linux machines, never simulators. Tests on TestingBot match what your customers actually see, so your results are always accurate. Test on the latest Chrome, Firefox, Edge and Safari, plus legacy versions like Internet Explorer 11, all running on real Windows, macOS and Linux machines. Test across all versions of Internet Explorer (IE8 to IE11), Edge, Chrome, Safari, Firefox and Opera. [Start free](https://testingbot.com/users/sign_up) Secure tunnel ## Test Staged Websites Use the secure TestingBot Tunnel to easily test your staging and development environments across all browsers, ensuring seamless access behind firewalls or private networks. Test data and websites from behind your firewall on the TestingBot cloud. ![TestingBot Tunnel architecture diagram](https://testingbot.com/assets/features/tunnel-diagram-poster-8c25e19e6fe4f7276a46a96b31a0ad0e07bb4f5bf98dc192d2b70897cfbb1a26.png) [Read more](https://testingbot.com/support/tunnel) FAQ ## Frequently asked questions about TestingBot features What testing frameworks does TestingBot support? TestingBot natively supports **Selenium, Appium, Playwright, Cypress, Puppeteer, Espresso, XCUITest and Maestro**. SDKs ship for Java, JavaScript, TypeScript, Python, Ruby, C#, PHP and Go. AI assistants like Claude Code and Cursor can also drive TestingBot through a [Model Context Protocol (MCP) server](https://testingbot.com/support/ai/mcp). Can I run automated tests in parallel? Yes. Run automated Selenium, Appium, Playwright, Cypress, Puppeteer, Espresso, XCUITest and Maestro tests in parallel, from a handful of concurrent sessions on the free plan up to hundreds of parallel sessions on Enterprise. Parallel execution typically reduces total test runtime by 10× to 50× compared to a single-machine grid. Does TestingBot support real iOS and Android devices? Yes. TestingBot operates a cloud of physical iOS and Android devices, including iPhones (from iPhone 6s to the latest iPhone), iPads, Samsung Galaxy phones, Pixel devices and tablets. You can run automated Appium, Espresso, XCUITest or Maestro tests on real hardware, or take manual control via the [live testing interface](https://testingbot.com/features/manual-mobile-testing). How do I test internal or staging applications with TestingBot? Use the [TestingBot Tunnel](https://testingbot.com/support/tunnel) to expose a staging or internal application to the TestingBot cloud over a secure connection. The tunnel is encrypted end-to-end, requires no firewall changes, and lets every browser and device in the cloud reach hostnames behind your VPN. What CI/CD integrations does TestingBot offer? TestingBot ships first-party plugins and integrations for Jenkins, GitHub Actions, GitLab CI, CircleCI, Azure DevOps, Bamboo, TeamCity and Travis CI. The platform also exposes a REST API and webhook system, so any CI/CD tool can launch tests, fetch results and react to failures. Can I do manual or live browser testing on TestingBot? Yes. [Live browser testing](https://testingbot.com/features/manual-browser-testing) and [live mobile testing](https://testingbot.com/features/manual-mobile-testing) let you remote-control any real browser, device, or simulator from inside your own browser: type, click, scroll, pinch and inspect. There is no SDK to install, and sessions launch in seconds. Is TestingBot GDPR-compliant and secure? TestingBot is built and hosted in the European Union, GDPR-compliant by design and CSA STAR Level 1 registered. The infrastructure is single-tenant per test session: virtual machines and devices are wiped after every test. ### Sign up for a Free Trial Start testing your apps with TestingBot. [Start a free trial](https://testingbot.com/users/sign_up) --- URL: https://testingbot.com/real-device-testing Real Device Cloud · iOS & Android # Real Device Testing on iOS & Android Real device testing means running your automated and manual tests on physical phones and tablets, not emulators. TestingBot provides a cloud of real iOS and Android devices, hosted in a secure EU datacenter, ready to run your tests in seconds. - Real iOS & Android devices - EU-hosted, GDPR-compliant - [Appium](https://testingbot.com/features/automation/appium), [XCUITest](https://testingbot.com/features/automation/xcuitest), [Espresso](https://testingbot.com/features/automation/espresso), [Maestro](https://testingbot.com/features/automation/maestro) - Pristine, never jailbroken [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) 9:41 RUNNING it('logs in') {  await tap(...);  expect(user)  ✓ login OK// session setit('opens cart') {  scroll('list');  ✓ cart visibleit('checkout') {  type('4242');  ✓ pay OK 10:24 APPIUM 9:42 XCUITEST 42ms 81ms 17ms … 11:08 ESPRESSO 9:43 MAESTRO login.yaml8 browse.yaml5 add\_to\_cart.yaml7 checkout.yaml12 profile.yaml4 logout.yaml3 14:02 UPLOAD APK 1 2 3 Trusted by some of the world's most innovative companies Built for scale ## Reliable Device Farm Get instant access to a fast, reliable device infrastructure. ### 24/7 device availability Physical iOS and Android devices, available at any time of the day. ### Zero setup & Maintenance Focus on testing instead of worrying about setup and maintenance of a mobile device farm. ### Security Devices located in a datacenter in Europe. Each test runs on a secure and pristine device. ### Real Android and iOS devices Test across real iPhone, iPads, Google, OnePlus, Xiaomi and Samsung phones & tabs. ### Variety of devices Test on any device — flagship or budget — with support for the newest and legacy iOS and Android versions. ### Performance Our infrastructure is built for performance to eliminate test flakiness and latency. Automation frameworks ## Test Automation Frameworks Works instantly with the most popular mobile automation frameworks: - [![Appium Testing](https://testingbot.com/assets/support/appium-4b35a8bb56bae236bd84c539cee9b8bbb489a55ddf48e32d059c86685d230354.svg)](https://testingbot.com/features/automation/appium) ### [Appium](https://testingbot.com/features/automation/appium) Mobile Automation Framework, using WebDriver, runs on physical devices and simulators/emulators. [Try with Appium](https://testingbot.com/features/automation/appium) - [![Espresso Testing](https://testingbot.com/assets/integrations/espresso-a8ff30da0c385f89f4e694bb29fc4779ad132e8e3f4a777a38e608e0492ff610.svg)](https://testingbot.com/features/automation/espresso) ### [Espresso](https://testingbot.com/features/automation/espresso) Android Automation Framework, runs on physical devices and emulators. [Try with Espresso](https://testingbot.com/features/automation/espresso) - [![XCUITest Testing](https://testingbot.com/assets/integrations/xcuitest-4a935f2368661d89d3559b3c5af3377236029478ae76bb43253f3c3bee712096.svg)](https://testingbot.com/features/automation/xcuitest) ### [XCUITest](https://testingbot.com/features/automation/xcuitest) iOS Automation Framework, runs on physical devices and simulators. [Try with XCUITest](https://testingbot.com/features/automation/xcuitest) - [![Maestro Testing](https://testingbot.com/assets/integrations/maestro-9d782f30f13fb4efaf9928b704c7a787eb14cb9e5b20c650137bb65892334b8b.svg)](https://testingbot.com/features/automation/maestro) ### [Maestro](https://testingbot.com/features/automation/maestro) Maestro is a mobile UI testing framework, which supports testing on both iOS and Android. [Try with Maestro](https://testingbot.com/features/automation/maestro) Speed up your suite ## Cut suite time from hours to minutes Drastically shorten your total app test duration by running tests simultaneously. TestingBot provides a variety of devices, ready to run your tests in parallel. [Start free](https://testingbot.com/users/sign_up) ![Cut suite time from hours to minutes](https://testingbot.com/assets/features/selenium/parallel-0229d698e59a8a6b92fe50344a08634624f018331ecf8a849ef83cfb35e635a5.png) ![Video, screenshots & logs](https://testingbot.com/assets/features/app-automated-report-dcef51604982dffa3ee9f02b87a92cef82132f9e21c5b66683738ab69f634ecf.jpg) Debug faster ## Video, screenshots & logs Every mobile test comes with access to generated logs, videos and screenshots. [Start free](https://testingbot.com/users/sign_up) Upload & test in seconds ## TestingBot Storage Upload your native mobile app, as an .apk or .ipa, to [TestingBot Storage](https://testingbot.com/support/api#upload) and start testing immediately. [Start free](https://testingbot.com/users/sign_up) ![TestingBot Storage](https://testingbot.com/assets/features/tb-storage-a1d1845fbed2bac0012e225de7f847431af6ffdb9dd9b6233fd3145ef3681cb9.jpg) How we compare ## Real Device Testing: Quick Comparison How TestingBot's real device cloud compares to other major providers. | Capability | TestingBot | BrowserStack | SauceLabs | | --- | --- | --- | --- | | Real iOS & Android devices | | | | | EU-hosted devices (data residency) | Yes | US primary | US primary | | GDPR + CSA STAR certified | | | | | Appium / XCUITest / Espresso / Maestro | | | No Maestro | | Free for open source | Yes | | | | Dedicated private device cloud | | | | | Secure tunnel for private/staging apps | | | | | Transparent flat-rate pricing | Yes | Custom quote | Custom quote | See more on the [SauceLabs alternative](https://testingbot.com/saucelabs-alternative), [BrowserStack alternative](https://testingbot.com/browserstack-alternative) and [LambdaTest alternative](https://testingbot.com/lambdatest-alternative) pages. Real-world conditions ## Test native device features Access and modify device features to test your app in various real-world conditions. ### Network Simulation Test for scenarios like connectivity, fluctuating network & many more. ### Localization testing Test your apps across different timezones, languages and geolocations. ### Dark Mode Test your app's UI with a dark background to ensure a smooth user experience. ### App Orientation Test your app in the landscape or portrait mode. Switch between orientations to test your app's response. ### Audio Record and hear in realtime the audio generated on the device. ### Settings Control various settings on the device. Private device cloud ## Your very own Mobile Devices Choose your own iOS and Android devices. We will purchase these devices, install and configure them in our secure datacenter. These devices will be only available to you, 24x7. Private devices can be customised to your needs. Have us install specific profiles and apps, or change specific settings of the device. You decide. [Learn more](https://testingbot.com/enterprise/private-device-cloud) ![Your very own Mobile Devices](https://testingbot.com/assets/enterprise/datacenter-d4fc366e9a4e8a106ec41e6817e21adb2aeb366a397ac258fd29ba9cd4de72c4.jpg) Secure Tunnel ## Test Staged Websites Use the secure TestingBot Tunnel to easily test your staging and development environments across all browsers, ensuring seamless access behind firewalls or private networks. Test data and websites from behind your firewall on the TestingBot cloud. ![TestingBot Tunnel for real devices](https://testingbot.com/assets/features/tunnel-diagram-poster-8c25e19e6fe4f7276a46a96b31a0ad0e07bb4f5bf98dc192d2b70897cfbb1a26.png) [Read more](https://testingbot.com/support/tunnel) FAQ ## Frequently Asked Questions Common questions about real device testing on TestingBot. What is real device testing? Real device testing is the practice of running automated or manual tests on physical smartphones and tablets, as opposed to emulators or simulators. It surfaces hardware-specific issues like CPU/RAM constraints, battery behaviour, real network conditions and device-specific rendering quirks that emulators or simulators cannot reproduce. Should I use a real device or an emulator? Use emulators for fast feedback during early development and unit-style flows. Use real devices for release validation, performance testing, biometric flows, camera/sensor logic, push notifications and final acceptance testing. Most teams run both: emulators in CI on every commit, real devices on the release branch. Where are TestingBot's real devices located? All TestingBot devices are hosted in a secure datacenter in Belgium, Europe. Every device is wiped and re-imaged after each test session. None are jailbroken or rooted. Which test frameworks does the real device cloud support? Appium (iOS and Android), XCUITest (iOS), Espresso (Android), Maestro (iOS and Android) and any WebDriver-compatible framework. You can also drive devices manually from your browser, or use TestingBot's codeless AI test creator to generate tests from plain English. Can I test apps that are not yet on the App Store or Google Play? Yes. Upload an .ipa or .apk build to TestingBot Storage and install it on any real device. You can also test apps already published to the App Store or Google Play, or connect to staging environments behind a corporate firewall using TestingBot Tunnel. What's the difference between the public and private device cloud? Public-cloud devices are shared across customers and are wiped between sessions. Private-cloud devices are dedicated phones we purchase, configure and host exclusively for your account, with optional persistence between tests, custom profiles and pre-installed apps. How does TestingBot compare to BrowserStack and SauceLabs for real device testing? TestingBot offers EU-hosted real devices (BrowserStack and SauceLabs are primarily US-hosted), GDPR and CSA STAR compliance, transparent flat-rate pricing, free for open source, and identical Appium/XCUITest/Espresso APIs. Customers usually migrate for the EU data residency, faster device allocation and direct support from the engineering team. Looking for hands-on details? See the [live mobile app testing](https://testingbot.com/features/manual-mobile-testing) page or browse our [supported devices](https://testingbot.com/support/app-automate/devices). Start in seconds ### Sign up for a Free Trial Start testing your apps with TestingBot. [Start a free trial](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) Resources you may like [![Testing Flutter Apps with Appium](https://testingbot.com/assets/resources/articles/13-77f190ec948df41b31594f8fc224348844ebc412f374eb6f18c9d4215b4fa49b.webp)](https://testingbot.com/resources/articles/appium-flutter-app-testing) ### [Testing Flutter Apps with Appium](https://testingbot.com/resources/articles/appium-flutter-app-testing) Learn how to do automated mobile app testing with Flutter and Appium. [Read more](https://testingbot.com/resources/articles/appium-flutter-app-testing) [![How to do localisation testing for mobile apps](https://testingbot.com/assets/resources/articles/12-9db6c7be671827ade1212fa6e476ee36e3365f01569100ee46fe22405c035760.webp)](https://testingbot.com/resources/articles/localized-testing-mobile-app) ### [How to do localisation testing for mobile apps](https://testingbot.com/resources/articles/localized-testing-mobile-app) Find out how to perform localisation testing with mobile apps. Change your language or locale with Appium, XCUITest and Espresso. [Read more](https://testingbot.com/resources/articles/localized-testing-mobile-app) [![Dark Mode Testing with Appium](https://testingbot.com/assets/resources/articles/22-ed15fa0f3fde7566416fff5078b44689dc274439b2fb829f8c68603e909a65d6.webp)](https://testingbot.com/resources/articles/dark-mode-testing) ### [Dark Mode Testing with Appium](https://testingbot.com/resources/articles/dark-mode-testing) Perform dark mode automated testing on iOS and Android with Appium. [Read more](https://testingbot.com/resources/articles/dark-mode-testing) --- URL: https://testingbot.com/playwright-vs-selenium Framework comparison · 2026 # Playwright vs Selenium Playwright and Selenium are the two dominant browser automation frameworks. This guide compares them head-to-head — speed, language support, browser coverage, debugging, and which to pick — with code samples and a verdict you can act on in five minutes. [Run both on TestingBot](https://testingbot.com/users/sign_up)[Jump to comparison](https://testingbot.com#comparison) Browsers & devices6100+ Cloud parallelism100× Uptime SLA99.99% ![Playwright](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg)Playwright·login.spec.ts // playwrighttest('login',async({page}) => {awaitpage.goto('/login');awaitpage.fill('#user','jane');awaitpage.fill('#pwd','••••');awaitpage.click('#go');awaitexpect(page) .toHaveURL(/dash/); }); chromium · firefox · webkit ✓ 1.2s ![Selenium](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg)Selenium·test\_login.py # seleniumdeftest\_login(d): d.get('/login') d.find('#user').send('jane') d.find('#pwd').send('••••') d.find('#go').click() Wait(d,10).until(url\_contains('/dash')) chrome · safari · edge · ie11 ✓ 1.6s Same TestingBot grid · 6100+ browsers & devices parallel:10x ## Trusted by some of the world's most innovative companies 30-second answer ## Which one should you pick? ![Playwright](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg)Pick Playwright if… You're starting a new web project, your team writes JavaScript or TypeScript, and you want fast tests, auto-waiting and built-in tracing out of the box. ![Selenium](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg)Pick Selenium if… Your team writes Java, C# or Ruby, you need legacy browser support (Internet Explorer, older Safari), or you have an existing Selenium suite and a strong Page Object library. Pick both if… You have separate frontend and backend test suites, you're migrating gradually, or you want Playwright for new code and Selenium for the long-tail of legacy browsers. TestingBot runs both on the same grid. Background ## What are Playwright and Selenium? Two frameworks, two philosophies. The same goal: drive a real browser to automate end-to-end testing. ![Playwright](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg) ### Playwright Released 2020 · Microsoft · Apache 2.0 Playwright is an end-to-end testing framework built by Microsoft that controls Chromium, Firefox and WebKit through a single API. It was designed by the team that originally built Puppeteer at Google, with cross-browser support and modern web app needs in mind. It uses the browser's DevTools protocol (or its own bridge for Firefox/WebKit) instead of WebDriver, which lets it auto-wait for elements, intercept network traffic and capture rich traces by default. - TypeScript / JavaScript / Python / Java / C# bindings - Auto-wait, network interception, fixtures, traces - Chromium, Firefox, WebKit · no IE / legacy Safari ![Selenium](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg) ### Selenium Released 2004 · Open Source · Apache 2.0 Selenium is the original browser automation framework and the foundation of the W3C WebDriver standard. Selenium WebDriver drives any browser through a vendor-supplied driver (chromedriver, geckodriver, safaridriver, edgedriver, IEDriverServer) using the same wire protocol. Twenty years of ecosystem maturity means deep IDE integration, mature Page Object patterns, and bindings for every major language. Selenium 4 added Chrome DevTools support, BiDi events and bidirectional protocols. - Java / Python / C# / Ruby / JavaScript / Kotlin - W3C WebDriver standard — works with every browser - Chrome, Firefox, Safari, Edge, IE 11 — full coverage Head to head ## Playwright vs Selenium: side-by-side comparison Across the dimensions that matter for picking, migrating or running both in CI. | Dimension | ![](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg)Playwright | ![](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg)Selenium | | --- | --- | --- | | First release | 2020 | 2004 | | Maintained by | Microsoft | Open-source community + W3C | | Languages | TS, JS, Python, Java, C# | Java, Python, C#, Ruby, JS, Kotlin | | Browsers | Chromium, Firefox, WebKit | Chrome, Firefox, Safari, Edge, IE 11 | | Mobile testing | Mobile emulation only | Real iOS + Android via Appium | | Wire protocol | CDP + custom (Firefox/WebKit) | W3C WebDriver standard | | Auto-waiting | Built in everywhere | Manual waits or WebDriverWait | | Network interception | First-class API | BiDi (Selenium 4) or proxy | | Multiple tabs / origins | Native — same context | Window switching API | | Test runner | Built-in (@playwright/test) | Bring your own (JUnit, pytest, Mocha…) | | Parallel execution | Built-in worker pool | Selenium Grid or test-runner level | | Trace / replay | Built-in Trace Viewer | Screenshots + manual logs | | Debugging | Inspector + UI mode | IDE + driver logs | | Speed (typical suite) | ≈30–40% faster on Chromium | Mature, predictable | | Ecosystem maturity | Growing fast since 2020 | 20 years of integrations | | Page Object pattern | Supported, less common | Industry standard | | Free for open source on TestingBot | ✓ | ✓ | Speed numbers from public benchmarks; vary by application. Both frameworks run on TestingBot's cloud with identical APIs to local execution. The same test in both ## Filling a form, asserting the result A login flow with auto-wait (Playwright) versus an explicit wait (Selenium). Both pass on the same TestingBot grid. ![](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg)Playwright + TypeScriptlogin.spec.ts // playwright.config.ts → set TestingBot endpointimport{test,expect}from'@playwright/test';test('login redirects to dashboard',async({page}) => {awaitpage.goto('https://app.example.com/login');// auto-wait — no explicit wait neededawaitpage.getByLabel('Username').fill('jane@example.com');awaitpage.getByLabel('Password').fill('••••••••');awaitpage.getByRole('button', {name:'Sign in'}).click();awaitexpect(page).toHaveURL(/\/dashboard/);awaitexpect(page.getByRole('heading', {name:/welcome, jane/i})).toBeVisible(); }); ![](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg)Selenium + Pythontest\_login.py # Driver points at TestingBot remote URLfromseleniumimportwebdriverfromselenium.webdriver.common.byimportByfromselenium.webdriver.support.uiimportWebDriverWaitfromselenium.webdriver.supportimportexpected_conditionsasECdeftest\_login\_redirects\_to\_dashboard(driver): driver.get('https://app.example.com/login') driver.find_element(By.NAME,'username').send_keys('jane@example.com') driver.find_element(By.NAME,'password').send_keys('••••••••') driver.find_element(By.CSS_SELECTOR,'button[type=submit]').click()# explicit waitWebDriverWait(driver,10).until(EC.url_contains('/dashboard')) welcome = driver.find_element(By.TAG_NAME,'h1')assert'Welcome, Jane'inwelcome.text Both tests are pointed at the same [Playwright](https://testingbot.com/features/automation/playwright) / [Selenium](https://testingbot.com/features/automation/selenium) endpoint on TestingBot's cloud. Same browsers, same parallelism, same dashboard. Decision matrix ## When to choose which ![](https://testingbot.com/assets/support/playwright-2dcb4e75b55ac0d1135cfa47be6137b13f46a2047ce78b96a34f51b0e2cc0d96.svg) ### Choose Playwright when - You're starting a green-field test suite, no migration cost to weigh. - Your stack is JavaScript / TypeScript-first and you want the test runner that ships with the framework. - You need network mocking, multi-tab flows, file uploads or geolocation overrides without bolt-on tools. - You want trace-based debugging; record, save, scrub through a failed run frame-by-frame. - Your target browsers are Chromium, Firefox and WebKit. No Internet Explorer 11 or older Safari requirement. [Run Playwright on TestingBot](https://testingbot.com/features/automation/playwright) ![](https://testingbot.com/assets/support/selenium-266ecc0599068fc6eca0bcd9174fb46053c95cebe1c66f7a50c480f3f1a52929.svg) ### Choose Selenium when - Your team writes Java, C# or Ruby — Playwright's bindings exist but the JS-first ergonomics get diluted. - You need to test on Internet Explorer 11, older Safari, or unusual browser builds where only WebDriver works. - You have a mature Page Object library, custom locators, or BDD framework (Cucumber, SpecFlow) you don't want to throw away. - You're standardising across web AND real mobile devices. Selenium's API is the closest thing to a unified WebDriver story (with Appium for mobile). - Stability and ecosystem maturity outweigh fewer features. Selenium has been battle-tested for 20 years. [Run Selenium on TestingBot](https://testingbot.com/features/automation/selenium) TestingBot supports both ## Stop choosing — run both on the same grid Point Playwright at the TestingBot endpoint, point Selenium at the same one, and your tests share the same 6100+ browsers and devices, the same dashboard, the same parallel slots and the same EU data residency. - Same auth, same project, same billing - Side-by-side test history for both frameworks - Free for open source — both frameworks [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) testingbot.com / endpoint // Playwright use: { wsEndpoint: 'wss://cloud.testingbot.com/playwright' } # Selenium webdriver.Remote( command\_executor='https://hub.testingbot.com/wd/hub' ) FAQ ## Frequently Asked Questions The questions teams ask before picking — or migrating between — these frameworks. Is Playwright faster than Selenium? Generally yes, on Chromium-based browsers. Typical suites run 30–40% faster on Playwright thanks to the DevTools protocol bypassing WebDriver's HTTP round-trips. The gap closes for Firefox and Safari (where Playwright uses its own bridges) and disappears once your tests are network-bound. Selenium 4's BiDi support narrows the gap further. For most teams the speed difference is real but not the deciding factor. Should I migrate from Selenium to Playwright? Only if the cost is justified. If your existing Selenium suite is stable, in a non-JavaScript language, and uses Page Objects extensively, migrating is rarely worth the effort. If your suite is flaky, JS-based and lacks tracing, Playwright's auto-wait and Trace Viewer alone usually pay for the migration. Pragmatic teams keep both: Selenium for what's already working, Playwright for new test suites. Does Playwright support all browsers Selenium does? No. Playwright supports Chromium (and Chrome/Edge by extension), Firefox and WebKit (which is close to Safari but not identical). Selenium drives the actual browser builds, including Internet Explorer 11, older Safari versions and rare browsers, using vendor-shipped drivers. If you need to test on IE 11 or a specific legacy Safari, Selenium is your only option. Can Playwright test mobile apps? Not natively. Playwright offers mobile browser emulation (you can simulate a mobile viewport and user agent in Chromium), but it cannot drive native iOS or Android apps. For real mobile app testing you need [Appium](https://testingbot.com/features/automation/appium), [XCUITest](https://testingbot.com/features/automation/xcuitest), [Espresso](https://testingbot.com/features/automation/espresso) or [Maestro](https://testingbot.com/features/automation/maestro). Selenium can drive mobile via Appium, which is built on the WebDriver protocol. TestingBot supports all of these on real iOS and Android devices. Which is better for cross-browser testing? For modern Chromium / Firefox / WebKit, Playwright's single API gives you faster, more reliable cross-browser runs out of the box. For comprehensive coverage including legacy browsers (IE 11, older Safari, Edge Legacy), Selenium is still the only option that drives the real browser binaries. Either way, running across many real browsers in parallel benefits hugely from using TestingBot's cloud. Both frameworks integrate with TestingBot's cloud with a one-line config change. Do I need to learn JavaScript to use Playwright? No, but Playwright's ergonomics are JS/TS-first. The Python, Java and C# bindings are first-class but lag the JS API on new features by weeks. If your team already writes Python or Java, Playwright is still a strong choice, but Selenium's binding parity makes it the more natural fit for non-JS stacks. Can I run Playwright and Selenium on TestingBot? Yes, both run on the same TestingBot cloud. Playwright connects via the wsEndpoint config to `wss://cloud.testingbot.com/playwright`, Selenium connects to `https://hub.testingbot.com/wd/hub` via `webdriver.Remote`. Tests show up in the same dashboard, share parallel slots, and benefit from the same EU data residency, video recording, live debugging and CI/CD integrations. Both are free for open source projects. Going deeper? See the dedicated [Playwright](https://testingbot.com/features/automation/playwright) and [Selenium](https://testingbot.com/features/automation/selenium) pages. ### Sign up for a Free Trial Run Playwright, Selenium, or both, on TestingBot's cloud. [Start a free trial](https://testingbot.com/users/sign_up) Resources you may like [![Visual Testing with Playwright](https://testingbot.com/assets/resources/articles/14-f3f2e8954c8a47cf0bb29059b44f4d2f40998442e22db6f8acdccb8e5b34d8c1.webp)](https://testingbot.com/resources/articles/playwright-visual-regression-testing) ### [Visual Testing with Playwright](https://testingbot.com/resources/articles/playwright-visual-regression-testing) Playwright provides automated browser testing. It offers a built-in feature to perform visual regression testing for your website. [Read more](https://testingbot.com/resources/articles/playwright-visual-regression-testing) [![Selenium and Generative AI](https://testingbot.com/assets/resources/articles/28-af707bf052844eb00f861bb6ebba57e6be4479dde1c78a5df4e70d2f597a8b18.webp)](https://testingbot.com/resources/articles/generative-ai-selenium) ### [Selenium and Generative AI](https://testingbot.com/resources/articles/generative-ai-selenium) Generate realistic looking test data to be used with your Selenium Automated Tests. [Read more](https://testingbot.com/resources/articles/generative-ai-selenium) [![Record tests with Playwright](https://testingbot.com/assets/resources/articles/32-277318b88c5e35eb2c96f03d9b53a1ef8eb2d96db184679892b5008b0bad9d0f.webp)](https://testingbot.com/resources/articles/playwright-recorder) ### [Record tests with Playwright](https://testingbot.com/resources/articles/playwright-recorder) Learn how to use a Playwright Recorder to easily record tests. [Read more](https://testingbot.com/resources/articles/playwright-recorder) --- URL: https://testingbot.com/pricing # Plans for Every Team Size From solo testers to large enterprises: get instant access to **6100+ real browsers and devices**. No setup. No maintenance. Just testing. - Trusted by 100,000+ developers - GDPR & CSA STAR ## Subscription plans ### Live Manual testing of websites and apps $20/month Billed annually Or $30 month-to-month 1 User 2 Users 4 Users 10 Users 25 Users - **Unlimited** Live Testing - **Unlimited** Visual Testing - Real iOS & Android devices - 24x7 Active Support via Email, Chat & Slack [Upgrade Plan](https://testingbot.com/pricing/1) ### Automated Automated web and app testing $50/month Billed annually Or $70 month-to-month 1 Parallel Test - 1,000 minutes 2 Parallel Tests - 2,000 minutes 4 Parallel Tests - 4,000 minutes 8 Parallel Tests - 6,000 minutes 16 Parallel Tests - 10,000 minutes 24 Parallel Tests - 20,000 minutes - **1000** minutes Automated / month - **Unlimited** Live testing - **Unlimited** Visual Testing - Real iOS & Android devices - 24x7 Active Support via Email, Chat & Slack [Upgrade Plan](https://testingbot.com/pricing/6) MOST POPULAR ### Automated Pro Unlimited web and app testing $90/month Billed annually Or $120 month-to-month 1 Parallel Test - Unlimited 2 Parallel Tests - Unlimited 4 Parallel Tests - Unlimited 8 Parallel Tests - Unlimited 16 Parallel Tests - Unlimited 24 Parallel Tests - Unlimited - **Unlimited** Live Testing - **Unlimited** Visual Testing - **Unlimited** Automated - Real iOS & Android devices - 24x7 Active Support via Email, Chat & Slack [Upgrade Plan](https://testingbot.com/pricing/12) ### Enterprise Enterprise-grade testing for large teams For Premium features & Enterprise-grade security 10+ Parallel Tests - **Unlimited** Testing - Single Sign On - Priority Support - [other Enterprise Features](https://testingbot.com/enterprise) [Contact us](https://testingbot.com/contact/new) ## Pay As You Go Need testing minutes without a monthly commitment? Purchase credits once and use them whenever you need. One-Time Purchase ### Pay As You Go Buy testing minutes once, use them whenever you need. No subscription required. 1,000 minutes - $602,000 minutes - $1205,000 minutes - $25015,000 minutes - $600 $60 One-time payment [Buy Now](https://testingbot.com/payg/checkout/starter) #### Your plan includes Testing Minutes 1,000 Parallel Sessions 1 Cost per Minute $0.06 Validity Never Expires - All desktop browsers - iOS & Android devices + sim/emu - Video recordings included - 24/7 Support - Local testing supported - Automated, Manual, Visual, AI testing ## Compare plans Detailed Plan Comparison Feature Live$20/monthBilled annually [Upgrade Plan](https://testingbot.com/pricing/1) Automated$50/monthBilled annually [Upgrade Plan](https://testingbot.com/pricing/6) Pro$90/monthBilled annually [Upgrade Plan](https://testingbot.com/pricing/12) EnterpriseFor Premium features & Enterprise-grade security [Contact us](https://testingbot.com/contact/new) ### General FeatureLiveAutomatedProEnterprise Testing Minutes Unlimited Starts at 1000 minutes / month Unlimited Unlimited Users — Unlimited Unlimited Unlimited Desktop Browsers Mobile Devices Visual Testing Automated Testing — AI Testing Run tests without writing any code. The AI Agent will create and run tests for you. — Accessibility Testing — Test Analytics — Single-Use Machines TestingBot provides single-use machines: you always start secure, with a clean machine. REST API Access Customizations — — — High Volume Testing — — — ### Local & network FeatureLiveAutomatedProEnterprise Test Local Websites High Availability Mode — — — Mobile DevTools Access to Native DevTools on real browsers and devices. GPS Geolocation Testing from 100+ countries Geolocation Testing Test your application from over 15 geographic locations around the world. Network Throttling Simulate various network conditions, such as 3G, 4G and offline modes, to test your application's performance under different connectivity scenarios. ### Integrations FeatureLiveAutomatedProEnterprise Slack JIRA GitHub [CI/CD](https://testingbot.com/support/integrations/ci-cd) ### Administration & security FeatureLiveAutomatedProEnterprise 2-Factor Authentication (2FA) SAML 2.0 Single sign-on (SSO) — — Analytics per team & team-member — — — Auto User Provisioning — — — IP Whitelisting (inbound & outbound) — — — ### Support FeatureLiveAutomatedProEnterprise 24x7 Availability Email Support Priority Support — — — ## All plans include - **Over [6100+ real desktop browsers](https://testingbot.com/support/web-automate/browsers) and [physical mobile devices](https://testingbot.com/support/app-automate/devices)** - **Real Browsers on Windows, macOS and Linux** - **Range of screen resolutions** - **Videos and screenshots of your tests** - **Team management** - **Local testing** - **Android/iOS Native App Testing** - **Tech support and Documentation** - **Unlimited Screenshots & Manual tests** ## Frequently asked questions ### Do I need a credit card to register? No, you do not need a credit card. Our 14-day free plan lets you try the service without paying anything. When you are ready to upgrade you can pay by credit card or wire transfer. ### Can I cancel my subscription at any time? Yes. Subscriptions can be cancelled at any time. If you cancel mid-month you will be charged for that month. ### What is a parallel test? Parallel tests are how many tests you can run at the same time. More parallel tests means a shorter total test run. Use our [Parallel Test Calculator](https://testingbot.com/support/parallel-calculator) to estimate the right number for your suite. ### Do you have a free open-source plan? Yes, open-source projects can apply for a free TestingBot plan. [Sign up for our open-source plan](https://testingbot.com/open-source). ### What happens if I exceed my monthly testing time? Once you reach your monthly testing time you can no longer run tests until your next billing month, or you can upgrade to a larger plan. ### What forms of payment do you accept? We accept credit cards and wire transfers. EU customers also have access to additional payment options. [Contact us](https://testingbot.com/contact/new) for wire transfer. ### Can I get a private cloud or on-prem deployment? Our Enterprise plan supports private cloud. We do not yet support on-premise deployments. [See enterprise features](https://testingbot.com/enterprise) or contact us for a custom quote. ### Do you offer high-volume packages? Yes, for very large test suites we offer custom high-volume packages with discounted per-minute rates. [Contact us](https://testingbot.com/contact/new) with your expected monthly volume. ## Need help finding the right solution for your needs? Contact us and we'll help you find the right plan for your needs. [Contact us](https://testingbot.com/contact/new) --- URL: https://testingbot.com/enterprise Enterprise plan # Test at enterprise scale, secured for the way you ship. TestingBot powers cross-browser, mobile and AI-driven testing for global engineering teams. Single-use firewalled VMs, SSO, auto-provisioning and a private device cloud, on EU-hosted infrastructure with a 99.99% uptime SLA. [Contact Sales](https://testingbot.com/contact/new)[Book a demo](https://testingbot.com/demo) Browsers & devices6100+ Uptime SLA99.99% Years in business14 Enterprise features 1. Priority SLA 2. Security 3. Data privacy 4. Private devices Priority support · 24/7 SLA Response\< 1 hour Uptime SLA99.99 % ChannelsSlack · Chat · Email SK Customer Success Manager INC-2917 · acknowledged in 2 min custom SLA · dedicated CSM · custom legal terms Your network10.0.0.0/16 ![TestingBot logo](https://testingbot.com/assets/logo-head-bff10f1a578795c03fad4e7adbc3f173ce864715c8ebf3d147af75b5d05c00b0.png)TestingBot grid TLS 1.3IP whitelistedTunnel up Data residency · EU session-2917.mp4 12.4 MB console.log 238 KB screenshots/\*.png 4.1 MB encrypted at rest · per-test retention Private device cloud Reserved iPhone 17iOS 26 Reserved iPad ProiPadOS 18 Reserved Galaxy S26Android 16 dedicated to your team · never shared Custom SLA · 24/7 priority support · dedicated CSM Encrypted tunnel · IP whitelisting · inbound + outbound EU-hosted · GDPR · per-test retention windows Reserved exclusively for your team, never shared Trusted by engineering teams worldwide Built for security & scale ## Everything large engineering teams need from a testing cloud. Enterprise-grade controls layered on top of every TestingBot session: security, identity, governance and uninterrupted scale. - ### Single-Use VMs Every test runs on a fresh, isolated, firewalled VM that is wiped immediately after the session. Customize the OS or pre-installed software per run. - ### Network Security IP whitelisting (inbound and outbound) and the encrypted TestingBot Tunnel keep test traffic between your private network and our grid fully secured. - ### Data Control & Privacy Disable logging or recording per test. Pick exact data retention windows per asset type. All test artefacts stay on EU-hosted infrastructure. - ### SSO & 2FA SAML 2.0 SSO with Okta, Azure AD, OneLogin and any custom SAML provider. Enforce 2FA across your entire organisation. - ### Auto-provisioning Onboard and offboard team members through your Identity Provider. Roles, teams and product access stay in sync automatically. - ### Sub-teams & Quotas Group testers by squad, project or geography. Allocate parallel session quotas, enforce 2FA and share Tunnels per sub-team with granular usage analytics. Compliance & assurance ## Built and operated to standards procurement teams already trust. Independent attestations, EU data residency and a public Trust Center keep your security review on the fast track. [Trust Center](https://trust.testingbot.com) - ![CSA STAR Level 1](https://testingbot.com/assets/security/star-11edcc06553505b9273f1b262013331690e0898a62e098ea785ef5781f32a53e.png) CSA STAR Level 1 Cloud Security Alliance - ![GDPR](https://testingbot.com/assets/security/gdpr-7823fb95f16df44e3d7aa0c6b0541d66fce3db81ce70907bc8fad94d0b0ac1e6.png) GDPR EU data protection - ![CCPA](https://testingbot.com/assets/security/ccpa-1d50dd27aea6947f5717792a2b4b32b38ff5f8a8d899884038fa68fe4b8ee0f5.svg) CCPA California privacy - ISO ISO 27001 Aligned controls - SOC 2 SOC 2 aligned Type II practices - EU-hosted Data stays in the EU Dedicated devices ## Private Device Cloud With Private Device Cloud, we take care of the setup, configuration and maintenance of dedicated devices exclusively for your company. - Unlike our Public Device Cloud, these devices are reserved only for your team, ensuring full control and privacy. - Select your preferred devices, and we will make them available in our data center for seamless testing. - Run both automated and manual tests on your private iOS and Android devices with full control and security. [Learn more](https://testingbot.com/enterprise/private-device-cloud) ![Private Device Cloud](https://testingbot.com/assets/enterprise/private-01e26e5dad16fa4b9b824124cec4112843b10fdf88c7432e8c0c0e873bab5900.webp) Side by side ## How TestingBot for Enterprise compares. Everything in Standard, plus the security, governance and support large teams need. | Feature | Standard Plans | Enterprise Plans Recommended | | --- | --- | --- | | Security & Compliance | | IP Whitelisting (inbound & outbound) | – | | | Single-Use VMs + Firewalled | | | | 2FA enforcement | – | | | Administration | | SAML 2.0 Single sign-on (SSO) | – | | | Sub-teams, parallel sessions per team | – | | | Analytics per team & team-member | – | | | Support | | Dedicated Support person & Customer Success Manager | – | | | Custom SLA | – | | | 24/7 priority support via phone and e-mail | – | | | Custom Legal Terms | – | | | Product | | Customize OS / Pre-installed Software | – | | | Early access to beta features | – | | | Unlimited Users | – | | ### Ready to roll out TestingBot across your organisation? Talk to our enterprise team about SSO, sub-teams, dedicated devices and a deployment plan that fits your security review. [Contact Sales](https://testingbot.com/contact/new)[Book a demo](https://testingbot.com/demo) --- URL: https://testingbot.com/enterprise/private-device-cloud Dedicated devices # Private Real Device Cloud, dedicated to your team. Pick the exact iOS and Android devices you want and we provision them in our datacenter. Reserved 24/7 for your team, customised to your testing needs and reachable on real carrier networks. [Contact Sales](https://testingbot.com/contact/new)[Book a demo](https://testingbot.com/demo) Devices on offerAny iOS / Android Availability24/7 ![Private Real Device Cloud, dedicated to your team.](https://testingbot.com/assets/enterprise/private/hero-42a08a4588b3ee004200a9f7c0592ae09aceb416aa5eee61b878a404ea4af3a2.png) Trusted by engineering teams worldwide What dedicated devices unlock ## The exact device matrix your customers use: at your fingertips, around the clock. We buy, configure and host the iOS and Android devices you choose. Reserved exclusively for your team and customised to fit how you actually test. - ### Pick the exact devices Choose the iPhone, iPad, Pixel, Galaxy or any other device that matches your customer base. We source it, image it and install it for you. - ### Reserved for your team Your devices are never shared with other customers. No waiting in queues, guaranteed availability. - ### Real carrier networks Equip devices with a physical SIM or eSIM to test scenarios Wi-Fi cannot reach: SMS flows, phone calls, mobile-data behaviour and roaming. - ### Custom device profiles We pre-install your apps, profiles, certificates and beta builds. Keep persistent state across runs when you need it. - ### Available 24 / 7 Your dedicated devices are reachable around the clock from any region for both automated runs and manual live sessions. - ### Secure & EU-hosted Devices live in our locked, EU-hosted datacenter. Network access stays inside your tunnel; logs and recordings stay on EU infrastructure. ![Real devices, in our secure EU datacenter.](https://testingbot.com/assets/enterprise/datacenter-d4fc366e9a4e8a106ec41e6817e21adb2aeb366a397ac258fd29ba9cd4de72c4.jpg) How we host your devices ## Real devices, in our secure EU datacenter. We purchase the iOS and Android devices you specify, install and configure them in our EU-hosted datacenter, and connect them to our cloud so your team can run automated and manual tests around the clock. - Your model list, sourced and provisioned by us, including legacy or hard-to-find devices. - Custom OS settings, certificates, profiles, beta apps and persistent state, set up once and re-applied automatically. - Devices stay reachable 24/7. Carrier connectivity ## Test on real carrier networks with SIM and eSIM. Equip your dedicated devices with physical SIMs or eSIMs and exercise the full set of mobile-network behaviours your customers actually depend on. - Send and receive real SMS, including 2FA codes, magic links and OTP flows. - Place and receive real phone calls; verify in-app calling, voicemail and call-state UI. - Validate mobile-data, low-signal and roaming behaviours that Wi-Fi can't reproduce. ![Test on real carrier networks with SIM and eSIM.](https://testingbot.com/assets/enterprise/sims-ef855544bead23d65f39cdc10fba272c2a93d82fa0e28026ab6ea10fd91131e6.jpg) Frequently asked ## Private Device Cloud: questions teams ask us. Everything procurement, security and engineering tend to want to know before rolling out dedicated devices. What is a Private Device Cloud? A Private Device Cloud is a set of real iOS and Android devices that TestingBot purchases, hosts and maintains in our EU datacenter exclusively for your team. The devices are reachable 24/7 over the same Selenium and Appium endpoints you already use, but no other customer can ever run a test on them. Can we choose the exact device models we want? Yes. You pick the exact iPhone, iPad, Pixel, Galaxy or other models you need, including specific OS versions, regional variants and legacy devices that have left our public cloud. If we don't already stock the model, we will source it for you. Do dedicated devices support real carrier networks? Yes. We can equip your devices with physical SIMs or eSIMs from your preferred carriers, so you can test SMS, phone calls, mobile data, low-signal and roaming behaviour just like an end user would experience them. Can we customise OS, profiles or pre-installed apps? We pre-install your apps and beta builds, deploy custom configuration profiles, certificates and entitlements, and adjust device-level settings to match your needs. By default we wipe state between tests, but on private devices we can keep persistent state when that's useful. Where are the devices hosted and how are they secured? All Private Device Cloud devices are hosted in our EU-based datacenter. Devices are physically locked, network access is restricted, and logs, screenshots and video recordings stay on EU infrastructure. We are GDPR compliant and CSA STAR Level 1 registered. How is the Private Device Cloud priced? Pricing is custom and depends on the number of devices, models, carrier connectivity and the support tier you need. Talk to our enterprise team, we will put together a quote that fits your scope and timeline. ### Tell us which devices you need. Share the device matrix, the testing scenarios and the timeline. Our enterprise team will draft a Private Device Cloud setup that fits. [Contact Sales](https://testingbot.com/contact/new)[Book a demo](https://testingbot.com/demo) --- URL: https://testingbot.com/partners # Partner with TestingBot Join our partner ecosystem to expand your business opportunities and enhance your product capabilities with TestingBot's next generation testing platform. [Technology Partners](https://testingbot.com/partners/technology-partners)[Reseller Partners](https://testingbot.com/partners/reseller-partners) - 1+bn Tests Executed - 180k Active Users - 5,500+ Browsers & Devices ![Partner with TestingBot](https://testingbot.com/assets/hero/automated-f13c4f47b8139a589966d59465e1aae2e65dae155b106d3956ce990a302a80a4.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ## Partner Programs Choose the partnership that best fits your business needs and goals. ### Technology Partners TestingBot platform integrates with tools that developers use daily. Partner with us to enhance your product capabilities, reduce interruptions for developers and expand customer reach. - API integration support - Co-marketing opportunities - Technical support and documentation [Learn More](https://testingbot.com/partners/technology-partners) ### Reseller Partners Expand your business by partnering with TestingBot. Join our Partner Program and earn lucrative commissions, receive dedicated support and gain recognition for your sales success. - Competitive commission rates - Dedicated partner support - Sales and marketing materials [Learn More](https://testingbot.com/partners/reseller-partners) ### Ready to Partner with Us? Join TestingBot's growing partner ecosystem and unlock new opportunities for your business. [See existing integrations](https://testingbot.com/integrations) --- URL: https://testingbot.com/partners/technology-partners # Technology Partners TestingBot platform integrates with tools that developers use daily. Partner with us to enhance your product capabilities, reduce interruptions for developers and expand customer reach. [Apply now](https://testingbot.com#apply)[All Partner Programs](https://testingbot.com/partners) ![Technology Partners](https://testingbot.com/assets/hero/automated-f13c4f47b8139a589966d59465e1aae2e65dae155b106d3956ce990a302a80a4.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ## Partner Benefits Join our technology partner program and unlock powerful integrations with TestingBot's comprehensive testing platform. ### API Integration Support Get comprehensive technical documentation, SDKs and dedicated engineering support for seamless integration. ### Co-Marketing Opportunities Joint marketing initiatives, case studies, webinars and placement in our partner directory to expand your reach. ### Technical Documentation Access to comprehensive technical resources, integration guides and best practices documentation. ### Partner Portal Access Dedicated partner portal with resources, training materials and integration tracking tools. ### Priority Support Dedicated technical support channel with priority response times for integration issues. ### Partner Recognition Featured placement in our partner ecosystem, case studies and recognition at industry events. ## Integration Opportunities Partner with TestingBot to create powerful integrations that enhance developer workflows and provide seamless testing experiences. - **Integrate into your product:** Embed our testing capabilities into your app. Offer automated testing to your customers through TestingBot's whitelabel automated testing offerings, or embed realtime live testing in your product. - **Developer Advocate:** Help developers use TestingBot's platform. We supply you with documentation, tools and free extended trial credits. - **Integrate your product with TestingBot:** Create an integration between TestingBot and your product. ![Technology Integration](https://testingbot.com/assets/features/coverage-d16d677b6a3ac8fac706949abfa45577d35762f298030c3f59a561e7b5fbd8b4.jpg) ## Apply to Become a Technology Partner Ready to integrate with TestingBot? Fill out the form below and our partnership team will be in touch. Company Name \* Email Address \* Tell us about your integration \* Submit Application --- URL: https://testingbot.com/partners/reseller-partners # Reseller Partners Expand your business by partnering with TestingBot. Resellers in the Partner Program enjoy lucrative commissions, dedicated support and recognition for their sales excellence. [Apply now](https://testingbot.com#apply)[All Partner Programs](https://testingbot.com/partners) ![Reseller Partners](https://testingbot.com/assets/hero/automated-f13c4f47b8139a589966d59465e1aae2e65dae155b106d3956ce990a302a80a4.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ![Partner](https://testingbot.com/assets/integrations/zebrunner-51fe5d07743785e67d69f0c97a8ae327e89a01545a54662e5cf1cf3c24601bf4.svg) ![Partner](https://testingbot.com/assets/integrations/qmetry-0647488fc2248e9e180e384e614b8cdbd1e8e4cf5360ab450d65a512490b0405.svg) ![Partner](https://testingbot.com/assets/integrations/semrush-6ea828d5e278d18118745e756c0e8359432ccbc3834045c57b6818f39d21ab92.webp) ![Partner](https://testingbot.com/assets/integrations/aws-37fe010e66887d20cd831130e90da33a0ec731b5dd87fbba8adc933db17b0709.webp) ![Partner](https://testingbot.com/assets/integrations/jira-d8877a4e3d87725f3279afa510d0d951d204d8bc46751a1f1051d477aaa00afe.svg) ![Partner](https://testingbot.com/assets/integrations/slack-935c2233d65c4fd7ce6ac282c0abe685fcc2ed73d5d814083a071ecd4557befa.webp) ![Partner](https://testingbot.com/assets/integrations/bugsnag-3e0b2bebfb3c599b8d986dda1bd59712ae70de4a9450b7522a698ad786ff6e62.svg) ![Partner](https://testingbot.com/assets/integrations/bamboo-c8fe09a3cb0b74d6055e3aa6607d77720bfe29ff487b8e3cf825138adf634346.svg) ![Partner](https://testingbot.com/assets/integrations/circleci-ede029654ff39b60342e4a5bba8fc9a3a49305cc38bda215b7cf8d07e85e0543.webp) ## Reseller Benefits Join our reseller program and unlock revenue opportunities with comprehensive support and competitive commission structures. ### Competitive Commissions Earn attractive commission rates on all TestingBot subscriptions you refer, with performance-based bonuses for top performers. ### Dedicated Support Get priority access to our partner success team for sales support, technical questions, and customer assistance. ### Sales & Marketing Materials Access to professional sales collateral, presentations, case studies, and co-branded marketing materials. ### Training & Certification Comprehensive product training, sales certification programs, and ongoing education to maximize your success. ### Partner Portal Access to a comprehensive partner portal with commission tracking, customer management, and resource library. ### Partner Recognition Top performers receive recognition awards, conference invitations, and exclusive networking opportunities. ## Who We're Looking For We partner with organizations that share our commitment to quality and customer success. There is no partnership fee. ### Ideal Partner Profile - Software consultancies and development agencies - QA and testing service providers - DevOps and infrastructure consultants - Technology solution providers ## Apply to Become a Reseller Partner Ready to join our reseller program? Fill out the form below and our partnerships team will review your application. Company Name \* Email Address \* Tell us about your business \* Submit Application --- URL: https://testingbot.com/open-source # Free Testing for Open-Source Projects We think it's important to support open-source projects. That's why TestingBot offers an Open-Source plan which is **completely free** and offers **Unlimited Testing** with **2 concurrent tests**. ## Sign up for an Open Source account Please [Sign Up](https://testingbot.com/users/sign_up) first for a free trial. Once logged in, you will be able to submit a request on this page to convert your account to an open-source account. ### Browser/OS Combinations Run your Automated tests on [+6100 Browser/device combinations](https://testingbot.com/support/web-automate/browsers). Make sure your project works on all major browsers and devices. ### CI Testing Using [Travis-CI](https://testingbot.com/support/integrations/ci-cd/travis-ci), [Circle CI](https://testingbot.com/support/integrations/ci-cd/circleci) or any other Continuous Integration system to build and test your project? It's easy to use TestingBot in combination with any CI system. Simply modify your tests to use TestingBot's Selenium grid. ### Video/Screenshots/Meta-Data With every test you have access to the video showing the test, screenshots and additional meta-data (log files). We provide all these assets to make sure you can easily debug any potential problems during your tests. ### Status Badges & Matrix We provide [status badges](https://testingbot.com/support/other/status-badges) to display your test results on your project's website. Together with status badges, we also offer a badge that displays on which browsers your test succeeded/failed: [Browser Matrix](https://testingbot.com/support/other/browser-matrix) . --- URL: https://testingbot.com/about # About Us Founded in 2011, TestingBot aims to provide an easy-to-use platform for cross-browser and mobile testing. By leveraging the power of cloud computing, we can scale effortlessly to meet your testing needs. We offer flexible plans tailored for both startups and large enterprises, enabling you to test your website across hundreds of real browser and mobile device combinations. Together with **excellent customer service** , we're confident you will enjoy testing your websites with TestingBot. ![Helping developers and teams test. Reliably and at scale.](https://testingbot.com/assets/about/bg-2e0825c48447a2dbdefc8bb7e4bfe93c3fa7d218def5e88141411eb056d2c813.jpg) ## Trusted by some of the world's most innovative companies ## Helping developers and teams test. Reliably and at scale. TestingBot provides a powerful online testing grid with a wide range of real browsers and physical mobile devices. Our entire infrastructure is hosted in multiple European data centers, located in Belgium, Germany and Finland, ensuring optimal security, performance and reliability. At TestingBot, we take pride in delivering a stable, fast and secure testing environment for our customers. +6 million Tests each month 99.99% Uptime 12,000 New users annually ## What drives us The principles that shape how we build, host and support the TestingBot platform. ### Security Security is a first-class feature at TestingBot. We guarantee single-use machines and wiped devices for each test. [Visit our Trust Center](https://trust.testingbot.com) ### European infrastructure Our platform runs from our own infrastructure across Europe. No third-party cloud providers, no data leaving the EU. Your tests and test data stay safe. ### Customer-first support Real engineers answer every support ticket, fast. We've been building TestingBot since 2011 and we still treat every customer like our first. ## Our journey TestingBot was founded in 2011 to solve a personal need: the founder wanted an easy way to run automated tests using Selenium on a website. Automated web testing was a tedious task, and the only solution was to set up a Selenium Grid on your own server. We wanted to change that and started TestingBot to provide a simple solution for automated web testing. Over the years, we've continuously expanded our platform with new features. Explore the timeline below for a complete overview of our journey. 1. 2011 🚀 TestingBot is released to the public as one of the first cloud-based Selenium grids. 2. 2012 Realtime manual testing was added for Desktop browsers. 3. 2013 🖥️ macOS based testing was released: the first company providing test access to remote Safari browsers. 4. 2014 iOS Simulators & Android Emulators are added for mobile testing. 5. 2015 TestingBot Tunnel is released: test websites running on your own computer or private network. 6. 2016 📱 We make our real device farm available to the public. Test your website on physical iOS and Android devices. 7. 2017 🗺️ This year we added geolocation testing, headless testing and various integrations with Slack, TeamCity etc. 8. 2018 We launch codeless automation. Import recorded tests from Selenium IDE and run the tests at specific intervals. 9. 2019 Live App Testing is launched: test your mobile app manually on (physical) mobile devices. 10. 2020 📈 Introducing Test Analytics: keep track of your test analytics. Release Cypress automation support, run your Cypress tests on TestingBot. 11. 2021 We've added Puppeteer Playwright testing to our features. Connect your Puppeteer scripts to the remote TestingBot browser grid. 12. 2022 Android Espresso and XCUITest support. Run tests against native apps on TestingBot's device grid. 13. 2023 Connect your Playwright scripts to the remote TestingBot browser grid. 14. 2024 🔎 Visual Regression Testing is launched: compare snapshots of your website or mobile app against baselines. 15. 2025 ✨ Introducing AI-based testing: describe in natural language what you would like to test. TestingBot will monitor your website for failures. 16. 2026 🎭 Maestro mobile testing support: run Maestro flows against iOS simulators, Android emulators and physical devices on TestingBot's device cloud. ## Our team [![Jochen Delabie](https://testingbot.com/assets/about/avatarj_300-2d6040c8da7195c628409e9c307f78c9a3350ed4378a7506b14b4cfab353b291.webp) ### Jochen Founder ](https://testingbot.com/about/jochen-d) ![Laura](https://testingbot.com/assets/about/avatarl_300-9016c575ff384e5d4e40b185204942c8d6828ec793649b1c3f2309da1c7a0bc6.webp) #### Laura Support ![Sander](https://testingbot.com/assets/about/avatars_300-6ba3ad8b8a51453c3ac05fe1855e4c7ccee9c139a1333329d21775721db26f72.webp) #### Sander Marketing ## Want to join our team? Interested in working on exciting technologies? [We're hiring](https://testingbot.com/careers) --- URL: https://testingbot.com/about/jochen-d ![Jochen Delabie](https://testingbot.com/assets/about/avatarj_300-2d6040c8da7195c628409e9c307f78c9a3350ed4378a7506b14b4cfab353b291.webp) # Jochen Delabie Founder & CEO Moerbeke-Waas, Belgium Founder of TestingBot. Building cloud testing infrastructure since 2011. Jochen Delabie founded TestingBot in 2011 to make cross-browser and mobile testing approachable for development teams. Over the past 15+ years he has worked on test automation, infrastructure and developer tooling around Selenium, Appium and Playwright. He writes regularly on the TestingBot blog about browser automation, mobile testing and AI-driven testing workflows. ## Areas of expertise Cross browser testingSelenium WebDriverAppiumPlaywrightAI-driven testingMobile app testingTest automationContinuous integration ## Recent blog posts by Jochen [![Maestro Physical Device Testing](https://testingbot.com/assets/blog/2026/maestro-physical.jpg) ](https://testingbot.com/blog/maestro-physical-device-testing) Jan 19, 2026 ### [Maestro Physical Device Testing](https://testingbot.com/blog/maestro-physical-device-testing) Maestro testing in parallel on physical Android and iOS devices. [Read more](https://testingbot.com/blog/maestro-physical-device-testing) [![tvOS Physical Device Testing](https://testingbot.com/assets/blog/2025/appletv.jpg) ](https://testingbot.com/blog/tvos-automated-testing) Oct 15, 2025 ### [tvOS Physical Device Testing](https://testingbot.com/blog/tvos-automated-testing) Run automated tvOS tests on physical AppleTV devices. [Read more](https://testingbot.com/blog/tvos-automated-testing) [![MacOS Tahoe Cloud Testing](https://testingbot.com/assets/blog/2025/tahoe.jpg) ](https://testingbot.com/blog/macos-tahoe-beta-testing) Jun 10, 2025 ### [MacOS Tahoe Cloud Testing](https://testingbot.com/blog/macos-tahoe-beta-testing) Test your websites and apps on Apple's upcoming macOS Tahoe (macOS 26). [Read more](https://testingbot.com/blog/macos-tahoe-beta-testing) [![ChromeOS Cloud Testing](https://testingbot.com/assets/blog/2025/chromeos.jpg) ](https://testingbot.com/blog/chromeos-testing) Jun 10, 2025 ### [ChromeOS Cloud Testing](https://testingbot.com/blog/chromeos-testing) ChromeOS Manual and Automated testing in the cloud. [Read more](https://testingbot.com/blog/chromeos-testing) [![Maestro testing in the cloud with TestingBot](https://testingbot.com/assets/blog/2025/maestro.jpg) ](https://testingbot.com/blog/maestro-cloud-testing) Jun 2, 2025 ### [Maestro testing in the cloud with TestingBot](https://testingbot.com/blog/maestro-cloud-testing) Run Maestro tests in the cloud with TestingBot. [Read more](https://testingbot.com/blog/maestro-cloud-testing) [![Accessibility testing with TestingBot](https://testingbot.com/assets/blog/2025/accessibility_testing.jpg) ](https://testingbot.com/blog/accessibility-web-testing) May 26, 2025 ### [Accessibility testing with TestingBot](https://testingbot.com/blog/accessibility-web-testing) TestingBot offers automated accessibility testing for your websites. [Read more](https://testingbot.com/blog/accessibility-web-testing) [![Monitor your Shopify Store](https://testingbot.com/assets/blog/2025/shopify-app.webp) ](https://testingbot.com/blog/shopify-store-monitoring) Feb 27, 2025 ### [Monitor your Shopify Store](https://testingbot.com/blog/shopify-store-monitoring) Protect your Shopify Store from downtime: automated monitoring of Shopify Stores with real browsers. [Read more](https://testingbot.com/blog/shopify-store-monitoring) [![Generative AI test agent](https://testingbot.com/assets/blog/2025/testingbot-ai.webp) ](https://testingbot.com/blog/testingbot-ai-agent) Feb 18, 2025 ### [Generative AI test agent](https://testingbot.com/blog/testingbot-ai-agent) TestingBot has launched an AI Test Agent that will help you to create automated tests [Read more](https://testingbot.com/blog/testingbot-ai-agent) [![Automated Testing with TestingBot during the Holiday Season](https://testingbot.com/assets/blog/2024/holidayseason.webp) ](https://testingbot.com/blog/testing-holiday-season) Nov 19, 2024 ### [Automated Testing with TestingBot during the Holiday Season](https://testingbot.com/blog/testing-holiday-season) Augment your testing this holiday season with TestingBot. [Read more](https://testingbot.com/blog/testing-holiday-season) [![Selenium 20th birthday](https://testingbot.com/assets/blog/2024/selenium20.webp) ](https://testingbot.com/blog/selenium-20-years) Oct 29, 2024 ### [Selenium 20th birthday](https://testingbot.com/blog/selenium-20-years) Celebrate Selenium's 20th birthday. An overview of the years. [Read more](https://testingbot.com/blog/selenium-20-years) ## Articles by Jochen Sep 18, 2025 ### [Top Web Development Tools in 2025](https://testingbot.com/resources/articles/web-development-tools) A top 10 list of the most popular and useful web development tools. Jun 22, 2025 ### [Most popular Screen Resolutions](https://testingbot.com/resources/articles/common-screen-resolutions) An overview of the most popular screen resolutions in 2025 for desktop and mobile. May 26, 2025 ### [Selenium Python Tutorial](https://testingbot.com/resources/articles/python-selenium-web-automation-test) A quick introduction in using Python with Selenium WebDriver May 22, 2025 ### [How to Change Browser Settings](https://testingbot.com/resources/articles/how-to-change-browser-settings) Find out how to change browser settings on Chrome, Firefox and Microsoft Edge. May 17, 2025 ### [What is isolation testing?](https://testingbot.com/resources/articles/isolation-test) Isolation Testing means verifying the functionality of a specific part of software on its own, free from outside influences. May 7, 2025 ### [Why is accessibility testing important in web design?](https://testingbot.com/resources/articles/why-accessibility-testing) Find out why it's important to think about accessibility when designing your webpages. Mar 14, 2025 ### [Protect your Shopify store](https://testingbot.com/resources/articles/shopify-store-monitoring) Learn how to monitor your Shopify store with the TestingBot App. Mar 13, 2025 ### [Top 15 AI Testing Tools](https://testingbot.com/resources/articles/top-15-ai-testing-tools) Learn about the top 15 AI testing tools. Dec 18, 2024 ### [Run Maestro tests in the cloud](https://testingbot.com/resources/articles/maestro-cloud-testing) Maestro cloud testing allows you to run Maestro flows on remote iOS and Android devices. Nov 29, 2024 ### [Handling Exceptions with Selenium Webdriver](https://testingbot.com/resources/articles/exception-handling-with-selenium) Learn about the different types of Selenium Exceptions and how to prevent these. ## Get in touch with Jochen Questions about cross-browser testing, mobile automation, or working with TestingBot? Reach out. [Contact us](https://testingbot.com/contact/new) --- URL: https://testingbot.com/contact/new Talk to TestingBot # Contact TestingBot If you need support, have questions, or are interested in purchasing a plan, feel free to reach out, we'll get back to you promptly. Name Work email How can we help? The more context you share, the faster we can route your message to the right person. By sending this message you agree to our [privacy policy](https://testingbot.com/privacy). We use your details only to reply to your request. Send message Need a faster path? Skip the form for these common tasks. [Book a 15-minute demo Live walkthrough by an engineer](https://testingbot.com/demo)[Browse documentation Setup guides for every framework](https://testingbot.com/support)[Check system status Live uptime & incidents](https://status.testingbot.com)[Join our Slack community Get help from devs and our team](https://join.slack.com/t/testingb0t/shared_invite/zt-3bcw9xch-jk19~6XPs_xBrsAgAedkCw) Other ways to reach us [Phone (US toll-free) +1 (855) 410-0024](tel:+18554100024)[Email info@testingbot.com](mailto:info@testingbot.com) Address TestingBotVlinderhof 18 9180 Moerbeke BelgiumVAT BE 0842.864.474 ## Frequently Asked Questions Quick answers about contacting our team, demos, trials and security. How quickly will TestingBot respond to my message? Our team replies to most contact form messages within a few hours during European business hours, and within 24 hours otherwise. Paid customers get priority support around the clock. Should I contact sales or support? Use this form for sales, billing, partnership and general questions. For technical issues with a running test or your account, signed-in users can also reach support directly from the dashboard. Can I try TestingBot before talking to sales? Yes. You can sign up for a free trial that includes 60 minutes of automated and manual testing on real browsers and devices, with no credit card required. Where is TestingBot hosted and is my data safe? TestingBot is built and hosted in the European Union (Belgium). All test data, video recordings and logs stay on EU infrastructure. We are GDPR compliant and a CSA STAR Level 1 registered cloud provider. Can I schedule a live demo? Yes. Use the Book a Demo button on this page to pick a 15-minute slot. We will walk you through automated, manual and AI-driven testing on real browsers and devices. Do you offer enterprise plans, dedicated devices or on-premise? Yes. We offer enterprise plans with dedicated browsers and devices, single sign-on, custom contracts and a dedicated private cloud option. Mention your needs in the message and our enterprise team will reach out. --- URL: https://testingbot.com/careers # Careers Join our team in maintaining, optimizing and improving our testing cloud. ![Helping developers and teams test. Reliably and at scale.](https://testingbot.com/assets/about/bg-2e0825c48447a2dbdefc8bb7e4bfe93c3fa7d218def5e88141411eb056d2c813.jpg) ## Open Positions - [Technical Content Writer](https://testingbot.com#writer) ## Technical Content Writer TestingBot is looking for a technical content writer, with experience in Selenium, Cypress, Puppeteer and Playwright. You will be adding content to our [Blog](https://testingbot.com/blog) and [Resources](https://testingbot.com/resources) section. ### Responsibilities - Write articles, tutorials and courses about Selenium, Cypress, Puppeteer and Playwright. - Research interesting topics to write about, related to the online testing ecosystem. - Add code examples, screenshots and tips & tricks to the articles you write. ### Key Skills - English writer - Previous content writing experience - Faultless grammar and spelling - IT technical knowledge an advantage, especially if you have knowledge about either of these topics: Selenium, Cypress, Puppeteer or Playwright - Excellent attention to detail ### Benefits - Competitive salary - Flexible schedule - Work from home (remotely) Interested? Please send us a brief introduction and resume. [Apply now](https://testingbot.com/contact/new) --- URL: https://testingbot.com/terms # Terms of Service PLEASE READ CAREFULLY. THESE TERMS AND CONDITIONS ("THE AGREEMENT") IS A LEGALLY BINDING AGREEMENT BETWEEN YOU ("YOU" OR "YOUR") AND TESTINGBOT. ("TESTINGBOT", "WE" OR "OUR"). BY CHECKING THE APPROPRIATE BOX INDICATING THAT YOU AGREE DURING REGISTRATION OR OTHERWISE ACCESSING THE TESTINGBOT WEBSITE, SERVICES, SOFTWARE OR MATERIALS (COLLECTIVELY THE "SERVICE"), YOU ARE INDICATING THAT YOU HAVE READ THIS AGREEMENT, THAT YOU UNDERSTAND IT, AND THAT YOU CONSENT TO BE BOUND BY ALL OF ITS TERMS AND CONDITIONS. IF YOU DO NOT AGREE WITH ALL OF THE FOLLOWING TERMS AND CONDITIONS, PLEASE DO NOT CONTINUE THE REGISTRATION PROCESS OR USE THE SERVICE. IF YOU WISH TO USE TESTINGBOT AS AN EMPLOYEE, CONTRACTOR, OR AGENT OF A CORPORATION, PARTNERSHIP OR SIMILAR ENTITY, THEN YOU MUST BE AUTHORIZED TO SIGN FOR AND BIND THE ENTITY IN ORDER TO ACCEPT THE TERMS OF THIS AGREEMENT. THE LICENSES GRANTED AND SERVICES PROVIDED UNDER THIS AGREEMENT ARE EXPRESSLY CONDITIONED UPON ACCEPTANCE BY SUCH AUTHORIZED PERSONNEL. This End User License Agreement ("Agreement") is entered into by and between TestingBot and the customer (individual or entity) that has procured the TestingBot products or services for use as an end user ("Customer"). "Effective Date" means the date on which accepts the terms and conditions of this Agreement. TestingBot reserves the right, at its sole discretion, to modify or replace this Agreement, or change, suspend, or discontinue any TestingBot Product(s) or Service Descriptions (as those terms are defined below), including without limitation, the availability of any feature, database, or content) at any time by posting a notice on the TestingBot Product(s) or by sending you an email. It is your responsibility to check this Agreement periodically for changes. Your continued use of any TestingBot Product following the posting of any changes to this Agreement constitutes acceptance of those changes. ## 1. Provision of Products Welcome to TestingBot.com. We provide our customers with online software-as-a-service/platform-as-a-service products. We use Selenium, an open-sourced browser testing framework to test websites in multiple browsers in an automated way. We offer several plans according to the needs of the customer. Each plan is provided on a subscription basis for a set term designated at the time of purchase (each, as “Subscription Term”). Customer shall purchase and TestingBot shall provide the specific product and plan as specified at the time of purchase. Some elements of the Service are available to any User, while other elements ("Subscription Services") are only available to Users who have purchased a subscription from TestingBot according to these terms and conditions. TestingBot may at any time, in its sole discretion, change a freely available element of the Service to a Subscription Service, and vice versa. TestingBot may, it its sole discretion, offer Users a one-time, free trial period during which you may use Subscription Service(s) for free. The time period of any such free trial period may vary from time to time, and will be indicated at the time you register as a User. Please note that TestingBot does not provide any internet connectivity services, nor does TestingBot provide any computer equipment for Users. You are entirely responsible for securing and paying for any such services and equipment, and for ensuring that such services and equipment meet the minimum requirements for the use of the Services. General Restrictions; Acceptable Use. Customer shall not: (a) rent, lease, copy, provide access to or sublicense any TestingBot Product to a third party; (b) use any TestingBot Product to provide or incorporate any TestingBot Product into any product or service provided to a third party, (c) reverse engineer, decompile, disassemble, or otherwise seek to obtain the source code or non-public APIs to TestingBot Products, including the Video Playback, except to the extent such restriction is prohibited by applicable law (and only upon advance notice to TestingBot), (d) modify any TestingBot Product or any Documentation, or create any derivative product from any of the foregoing, (e) remove or obscure any proprietary or other notices contained in any TestingBot Product (including any reports or data printed from TestingBot Products) or (f) publicly disseminate information regarding the performance of TestingBot Products. ## 2. Accounts/Customer Data You may establish one (1) User account (the "Account") per email address you supply to TestingBot. You may not share the Account with anyone. You are liable for all uses of the Account. If you would like to have several accounts for co-workers or friends, please consider using a sub-account. Storage of Customer Data. TestingBot does not provide an archiving service. TestingBot agrees only that it shall not intentionally delete any Customer Data which is less than 30 days old from TestingBot Products prior to termination of Customer’s applicable Subscription except as directed by Customer or its Permitted Users. TestingBot expressly disclaims all other obligations with respect to storage. If specified at the time of purchase, TestingBot may charge Customer a fee for storing the Customer Data. ## 3. Registration During the registration process prior to using the Service, you may be requested to provide certain information (e.g. your birthdate, gender, zip code, name, e-mail address, country or territory of residence, and for paid services, credit card and billing information, such as your telephone number), and you agree to provide true, accurate, current and complete information about yourself as prompted by such process (such information being "Personal Information"). If you open an Account, and any of your Personal Information changes (e.g., new credit card number, expiration date, new address or email address, new phone number, etc.), you must update that information in your Account. ## 4. Subscription Services If you elect to subscribe to Subscription Services, the fee therefor will be the price specified at the time of purchase. You hereby agree to pay all charges incurred by the Account, including applicable taxes, in accordance with billing terms for access to the Service that are in effect at the time that the fee or charge becomes payable. Your right to access the Service is subject to any limits established by TestingBot or by your credit card issuer, billing service, or other payment methods authorized by TestingBot. TestingBot may, in its sole and absolute discretion, suspend or terminate your access to the Service and disable or delete the Account, if: (i) payment cannot be charged to your credit or debit card; or (ii) your charge is returned to TestingBot for any reason. If at any time you have a balance due on the Account, you agree that TestingBot can charge these unpaid fees to your credit card or debit them from your debit card, as applicable. You agree to reimburse TestingBot for all costs and expenses incurred by TestingBot in collecting payment due hereunder, including without limitation all bank or service charges, and any reasonable attorneys' fees. By subscribing to any Subscription Service you are representing to us that you are authorized to use the credit card you submit for payment. You agree to take such steps as are appropriate to ensure such compliance and will indemnify and hold TestingBot and TestingBot's affiliates and distribution and syndication partners harmless from any breach of this Agreement. Your subscription will last for the period chosen in the subscription process (the "Term"). Unless notifying us of your decision to terminate your subscription, your subscription will automatically be renewed at the end of each Term according to the then-current billing terms. TestingBot reserves the right to change the amount of, or basis for determining, any fees it charges, and to institute new fees, effective immediately upon notice to you. You may cancel your automatic membership renewal by contacting info@testingbot.com . Cancellation of your subscription will take effect upon the end of the then-current Term, at which time you will no longer have access to any Subscription Services. Our payment provider (Stripe or FastSpring) will automatically renew your paid subscription. Payment details such as your credit card number are not saved on this website. ## 5. TestingBot Materials The Service may require that you install plugins to report back test results to TestingBot. That software, and all new versions, updates, upgrades, bug fixes, modifications and derivative works that TestingBot may make available from time to time are referred to collectively as the "Software." All Software, designs, text, images, photographs, illustrations, audio clips, video clips, artwork, graphic materials, other copyrightable elements, and the selection and arrangements thereof, and all trademarks, service marks, trade dress, trade names, logos and designs and all intellectual property rights therein, provided by TestingBot via the Service (collectively the "Materials") are the property of TestingBot and/or its business partners, affiliates, assigns, licensors or other respective owners and are protected by intellectual property laws, including without limitation, U.S. and international patent, copyright and trademark laws. TestingBot may include in some Materials or in conjunction with your User Supplied Content third party advertisements that appear or are played when those Materials or User Supplied Content are viewed. You hereby consent to the display and playback of these advertisements in conjunction with your User Supplied Content. To the extent you elect to use or access TestingBot Materials or User-Supplied Content from other Users, you also consent to the display of advertisements in those Materials and that User Supplied Content. Content generated during testing like logs, screenshots and videos will stay available for 30 days. After this period, TestingBot will remove the content. ## 6. License from TestingBot Subject to all of the terms and conditions of this Agreement, TestingBot hereby grants you a personal, limited, non-exclusive, non-transferable, revocable right to (a) view or play back Materials on, your compatible computer or device. All rights not expressly granted to you are reserved. For the avoidance of doubt, your use of the Service and the Materials is under license and will terminate if this Agreement terminates, regardless of whether the relevant Service or Materials is free or you have paid for it; you will not obtain any ownership interest in any Materials through this Agreement or otherwise. ## 7. Usage Restrictions You agree not to use, download, reproduce, modify, create derivative works from, display, perform, publish, distribute, disseminate, transmit, broadcast or circulate any Materials to any third party, except as expressly authorized by TestingBot in connection with the Service. The source code and/or object code to the Materials contains confidential and trade secret information belonging to TestingBot and its licensors, and you shall at all times take reasonable steps to protect the confidentiality of such information. You further agree that you will not disassemble, decompile or reverse engineer the Materials (except to the extent that this restriction is expressly prohibited by law, and then only upon providing TestingBot with prior written notice and opportunity to respond). Any unauthorized or prohibited use may subject the offender to civil liability and criminal prosecution under applicable federal and state laws. As between you and TestingBot, TestingBot owns all elements of the Account. Except as specifically permitted and enabled within the Service, you may not transfer your Account, or any component of your User-Supplied Content to any other person. Through the use of the Service you may not impair or violate the rights of TestingBot or any other party with respect to trademarks, logos, or other intellectual property or rights. You may not display or perform Materials or User Supplied Content in a manner or in a context that is, in TestingBot's sole discretion, unlawful, misleading, defamatory, infringing, libelous, disparaging, obscene, an endorsement of any unrelated product or service, an unauthorized parody, or otherwise objectionable. ## 8. Code of Conduct You may not: (i) post any User Supplied Content that is illegal, abusive, deceptive, pornographic, obscene, defamatory, slanderous, offensive, or otherwise inappropriate or harmful to any person (including any minor) or entity; (ii) sell, rent, lease, or otherwise assign any rights to any Materials or Service to any third party; (iii) remove any proprietary notices or labels on the Materials or Service; (iv) use the Materials or Service in conjunction with any device or service designed to circumvent technological measures employed to control access to, or the rights in, any content protected by the copyright laws of any jurisdiction; (v) use the Materials or Service for any commercial or illegal purpose or to harm minors in any way; (vi) use the Materials or Service to invade the privacy of, or obtain personal information about, any User, or to obtain a list of Users, or to access or use any User's User Supplied Content in a manner not specifically authorized by such User; (vii) except as expressly permitted by TestingBot, copy, modify, erase or damage any Materials or information contained on any TestingBot or third party servers; (viii) use the Materials or Service to violate any law or legal right of any third party, including any publicity or privacy right, copyright, other intellectual property right, or any contractual, fiduciary or confidentiality obligation or duty, or to take any action that is harassing, libelous, defamatory, abusive, tortious, threatening, harmful or otherwise objectionable; (ix) use the Materials or Service to post or transmit any unsolicited advertising, campaigning or promotional materials or to send any Materials from an anonymous or false address; (x) access or use any password protected, secure or non-public areas of the Service except as specifically authorized in writing by TestingBot (unauthorized individuals attempting to access these areas of the Service may be subject to prosecution); (xi) distribute any software viruses or other computer code designed to interfere with the functionality of the Service or any computer systems, software or hardware; (xii) use any data mining, robots, or similar data gathering, spoofing, or extraction tools in connection with the Materials Service; (xiii) mislead other Users or third parties as to your identity or to the origin of a message or content; or (xiv) frame or link to the Service or Materials except as expressly permitted in writing by TestingBot. ## 9. Objectionable or Explicit Content TestingBot has the right, but not the obligation, to monitor, modify and/or remove any Materials and/or User Supplied Content in the Service. TestingBot may monitor, modify and remove any Materials and/or User Supplied Content in its sole discretion. TestingBot is not responsible to you for any content or materials constituting all or part of any Materials, any User Supplied Content, or any other aspect of the Service that you might find objectionable. By viewing the Service, you may be exposed to content that you consider offensive. You take sole responsibility for such exposure. ## 10. Privacy For information regarding TestingBot's use of information collected in connection with the Service, please refer to the [TestingBot Privacy Policy.](https://testingbot.com/privacy) ## 11. Active Participation; Storage and Bandwidth Limits If you do not have a currently active subscription to the Subscription Service, a condition of your access to the Service is your "Active Participation" in the Service. Active Participation is defined as accessing the Service, including displaying Materials or sending User Supplied Content through the Service, at least once every 180 days. If you do not maintain Active Participation, TestingBot may, with or without providing you with notice, terminate your Account (or any part thereof) and/or your use of the Service, and may remove and discard any content, including any of your User Supplied Content and any related Materials within the Service. Additionally, with or without providing you with notice, we may place a maximum limit on the amount of User Supplied Content that you are allowed to upload into the Service, or the maximum bandwidth that you may utilize each day. We may change these limits in our sole discretion upon providing you with notice. If you exceed these limits, we may refuse to accept and/or remove any User Supplied Content, or we may suspend certain functions of the Service for your Account. ## 12. Changes to the Agreement We reserve the right, at our sole discretion, to change, modify or otherwise alter these terms and conditions at any time. Such changes and/or modifications shall become effective immediately upon posting. Please review the terms and conditions periodically. If you do not agree to be bound by (or cannot comply with) the Agreement as amended, your only remedy is to cancel your TestingBot Account and to cease using the Service. You will be deemed to have accepted the Agreement as amended thirty (30) days after the amended agreement is posted if you continue to use the Service. All other terms of this Agreement will continue in effect. ## 13. Notices TestingBot may provide you with any notices under this Agreement by means of a posting on the Service, by e-mail, or by sending a message to you through the Service.    A. A physical or electronic signature of the owner (or person authorized to act on behalf of the owner) of an exclusive right that is allegedly infringed.    B. Specific identification of the copyrighted work claimed to have been infringed, or if multiple copyrighted works are covered by a single notification, a list of each copyrighted work claimed to have been infringed.    C. Information related to the work(s) reasonably sufficient for TestingBot to promptly locate the work (e.g. title of work, location within the Service, etc.).    D. Information reasonably sufficient to permit TestingBot to directly contact the complaining party, such as a complete name and address, telephone number, and an email address.    E. A statement that the complaining party has a good TestingBot belief that use of the work(s) in the manner complained of is not authorized by the copyright owner, its agent, or the law.    F. A statement requesting that TestingBot take a specific act with respect to the alleged infringement (e.g., removal, access restricted or disabled), and    G. A statement that the information in the notification is accurate, and under penalty of perjury, that the complaining party is authorized to act on behalf of the owner of an exclusive right that is allegedly infringed. ## 14. Trademarks Except as expressly set forth in this Agreement, all trademarks, service marks, trade names, domain names, slogans, logos, and other indicia of origin that appear on or in connection with the Service and Materials are the property of TestingBot and/or its affiliates and licensors. You may not copy, display or use any of these marks without prior written permission of the mark owner. ## 15. International You agree to abide by U.S and other applicable export control laws and not to transfer, by electronic transmission, the Service, or otherwise, any content or software subject to restrictions under such laws to a national destination or person prohibited under such laws. ## 16. Promotions and Advertising TestingBot and/or its business partners may present advertisements and promotional materials on or through the Service. Your participation in any TestingBot promotional event is subject to the terms and conditions associated with that event. Your correspondence or business dealings with, or participation in promotions of, any third-party advertisers on or through the Service, including payment and delivery of related goods or services, and any other terms, conditions, warranties or representations associated with such dealings, are solely between you and such third-party. You agree that neither TestingBot nor its business partners shall be responsible or liable for any loss or damage of any sort incurred as the result of any such dealings or as the result of the presence of such third parties on the Service. ## 17. The Website and Links to Third Party Sites The Website means this web site, as accessed by any of the following domain names: testingbot.com, \*.testingbot.com and any web site owned or controlled by TestingBot (except as otherwise provided on such other site). However, the Website does not refer to any other web site linked to or from the Website, or to any third party site on which the Service may appear. The Service may present links to retailers and/or other third-party websites not owned or operated by TestingBot. Neither TestingBot nor its business partners are responsible for the availability of these outside sites or their contents. You understand and agree that neither TestingBot nor its business partners are responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with your use of or reliance on any content of any such site or goods or services available through any such site or from any such advertiser. You should direct any concerns regarding these third-party sites to those sites' administrators. ## 18. Modifications to Service and Materials TestingBot may, without liability or obligation, in its sole discretion and at any time: (i) make modifications to, or discontinue, any Materials and/or the Service, including deleting any Downloaded Materials we may have placed on your computer, with or without providing you with notice (except as we may expressly agree to provide you with notice elsewhere in this Agreement); and/or (ii) require you to use modified Materials and/or Service (e.g. Software updates) in order to have continued access to the Service and Materials. The modifications may result in certain Materials being unavailable, or incompatible with certain devices. Other Users may similarly delete or cease offering their User Supplied Materials at any time without notice. Upon TestingBot giving you notice, you shall promptly cease the use of, and destroy, all copies of any specified Materials, or otherwise modify your usage as directed by TestingBot. You agree that neither TestingBot nor the TestingBot Affiliates shall be liable to you or to any third party for any modification, suspension or discontinuance of the Service or Materials. ## 19. Remedies You understand and agree that any unauthorized use of the Service or the Materials would result in irreparable injury to TestingBot and/or the TestingBot Affiliates for which money damages would be inadequate, and in such event TestingBot and the TestingBot Affiliates, shall have the right, in addition to other remedies available at law and in equity, to immediate injunctive relief against you. Nothing contained in this paragraph or elsewhere in this Agreement shall be construed to limit remedies or relief available pursuant to statutory or other claims that TestingBot and the TestingBot Affiliates may have under separate legal authority, including but not limited to, any claim for intellectual property infringement. You understand and agree that your cancellation of your Account is your sole right and remedy with respect to any dispute with TestingBot. You can cancel your Account by delivering notice to TestingBot at info@testingbot.com. ## 20. Indemnity You agree to indemnify, and hold harmless, TestingBot, the TestingBot Affiliates, and each of their respective officers, directors, employees, agents, licensors, representatives, and third party providers from and against all claims, actions, demands, causes of action, and other proceedings, and all losses, expenses, fees, fines, damages and costs, including reasonable attorneys' fees and court costs, arising out of or relating to your breach of this Agreement or improper use of the Service or Materials. TestingBot reserves the right to assume, at its sole expense, the exclusive defense and control of any matter subject to indemnification by you, in which event you will fully cooperate with TestingBot in asserting any available defenses. ## 21. Suspension or Termination TestingBot may, in its sole discretion, terminate this Agreement or suspend your Account at any time with or without notice to you in the event that you breach (or TestingBot reasonably suspects that you have breached) any provision of this Agreement. If TestingBot terminates this Agreement, or suspends your Account for any of the reasons set forth in this paragraph, TestingBot shall have no liability or responsibility to you, and you agree that you forfeit any amounts you have paid TestingBot. TestingBot may terminate this Agreement and your Account for any reason or no reason at the end of the then-current Term by providing notice to you. You may cancel your Account (including Subscription Services) at any time by contacting info@testingbot.com. All fees paid and charges made prior to termination as provided herein are nonrefundable, including any advance charge or payment for the subscription term during which you terminate your subscription. Termination of your subscription shall not relieve you of any obligations to pay accrued charges. Upon termination of this Agreement for any reason, all of your rights to use the Service and materials shall immediately terminate, and you shall immediately cease using and destroy all Materials. ## 22. Disclaimers You understand and agree that your use of the Service and the Materials is at your own sole risk. TestingBot is not responsible or liable for any infections or contamination of your system, or delays, inaccuracies, errors, or omissions arising out of your use of the Service or Materials. The entire risk as to the quality, accuracy, adequacy, completeness, correctness and validity of any Materials rests with you. THE SERVICE AND THE MATERIALS ARE PROVIDED "AS IS" AND "AS AVAILABLE," AND WITHOUT WARRANTY BY TESTINGBOT AND THE TESTINGBOT AFFILIATES, AND, TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW, TESTINGBOT AND THE TESTINGBOT AFFILIATES EXPRESSLY DISCLAIM ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND ANY WARRANTY OF NONINFRINGEMENT. THERE IS NO WARRANTY THAT THE SERVICE OR THE MATERIALS WILL MEET YOUR REQUIREMENTS, OR THAT YOUR ACCESS TO THE SAME WILL BE UNINTERRUPTED OR ERROR-FREE. TESTINGBOT AND THE TestingBot AFFILIATES DO NOT WARRANT, GUARANTEE, OR MAKE ANY REPRESENTATIONS REGARDING THE USE OR THE RESULTS OF THE USE OF THE SERVICE OR THE MATERIALS WITH RESPECT TO PERFORMANCE, ACCURACY, RELIABILITY, SECURITY CAPABILITY, CURRENTNESS OR OTHERWISE. YOU WILL NOT HOLD TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES RESPONSIBLE FOR ANY DAMAGES THAT RESULT FROM YOU ACCESSING THE SERVICE OR USING THE SERVICE AND/OR THE MATERIALS. NO ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY ANY PERSON SHALL CREATE A WARRANTY IN ANY WAY WHATSOEVER RELATING TO TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES. UNDER NO CIRCUMSTANCES SHALL TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES BE LIABLE FOR ANY UNAUTHORIZED USE OF THE SERVICE AND/OR THE MATERIALS. ## 23. LIMITATION OF LIABILITY TO THE FULLEST EXTENT PERMISSIBLE PURSUANT TO APPLICABLE LAW, UNDER NO CIRCUMSTANCES SHALL TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES BE LIABLE TO YOU FOR ANY CONSEQUENTIAL, INCIDENTAL, INDIRECT, SPECIAL OR SIMILAR DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND THE LIKE) ARISING OUT OF THE USE OR INABILITY TO USE THE SERVICE AND/OR THE MATERIALS, EVEN IF TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES, HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE LIMITATION MAY NOT APPLY TO YOU. TO THE EXTENT THAT IN A PARTICULAR CIRCUMSTANCE ANY DISCLAIMER OR LIMITATION ON DAMAGES OR LIABILITY SET FORTH HEREIN IS PROHIBITED BY APPLICABLE LAW, THEN, INSTEAD OF THE PROVISIONS HEREOF IN SUCH PARTICULAR CIRCUMSTANCE, TESTINGBOT AND/OR THE TESTINGBOT AFFILIATES, SHALL BE ENTITLED TO THE MAXIMUM DISCLAIMERS AND/OR LIMITATIONS ON DAMAGES AND LIABILITY AVAILABLE AT LAW OR IN EQUITY BY SUCH APPLICABLE LAW IN SUCH PARTICULAR CIRCUMSTANCE, AND IN NO EVENT SHALL SUCH DAMAGES OR LIABILITY EXCEED TWENTY FIVE DOLLARS ($25). Notwithstanding the foregoing, in no event shall TestingBot's liability to you for any and all claims, damages, losses, and causes of action (whether in contract, tort or otherwise) exceed the amount paid by you, if any, for accessing the Service. ## 24. Claims and Arbitration Any action hereunder by a User must be brought, if at all, within one (1) year from the accrual of the cause of action. You agree that the all disputes and claims arising out of, or relating to, this Agreement, the Service or Materials, your use of the Service or Materials (including the arbitrability of any claim or dispute and the enforceability of this paragraph), or to any other alleged act or omission by you or TestingBot, shall be determined exclusively by final and binding arbitration. Provided however, that you agree that the terms of this paragraph do not apply to any breach or alleged breach of the ownership or license rights of TestingBot or any of its licensors with respect to any Materials and/or Service, or your (or any third party's) misuse of the Materials and/or Service, and that, in the event of any such breach of alleged breach, TestingBot and its licensors will be irreparably harmed and entitled to equitable and injunctive relief in addition to all other remedies provided by this Agreement or available at law. Except as expressly set forth above in this paragraph, you and TestingBot may litigate in court only to compel arbitration under this Agreement or to confirm, modify, vacate or enter judgment on the award rendered by the arbitrators. To the extent that you have breached or have indicated your intention to breach this Agreement in any manner which violates or may violate TestingBot's or any of its licensor's intellectual property rights, or may cause continuing or irreparable harm to TestingBot (including, but not limited to, any breach that may impact TestingBot's or its licensor's intellectual property rights, or a breach by reverse engineering), TestingBot may seek injunctive relief, or any other appropriate relief, in any court of competent jurisdiction. To the fullest extent permitted by applicable law: no arbitration under this Agreement shall be joined to an arbitration involving any other current or former licensee of TestingBot, whether through class arbitration proceedings or otherwise; no finding or stipulation of fact in any other arbitration, judicial or similar proceeding may be given preclusive or collateral estoppel effect in any arbitration hereunder (unless determined in another proceeding between you and TestingBot); and no conclusion of law in any other arbitration may be given any weight in any arbitration hereunder (unless determined in another proceeding between you and TestingBot). ## 25. Miscellaneous This Agreement and any other terms or documents referred to herein represent your entire agreement with TestingBot with respect to your use of the Service and Materials. As used in this Agreement the term "licensor" shall not refer to the person at that time entering into the Agreement. You understand and agree that, except as expressly set forth herein, this Agreement is not intended to confer and does not confer any rights or remedies upon any person other than the parties to this Agreement. If any part of this Agreement is held invalid or unenforceable, that portion shall be construed in a manner consistent with applicable law to reflect, as nearly as possible, the original intentions of the parties, and the remaining portions shall remain in full force and effect. TestingBot's failure to pursue any available claim or defense pursuant to this Agreement or otherwise will not be a waiver of such claim or defense. The headings used in this Agreement are for convenience only, and will have no effect on the interpretation or legal enforceability of the terms herein. This Agreement is personal to you and may not be transferred, assigned or delegated to anyone. Any attempt by you to assign, transfer or delegate this Agreement shall be null and void. Last updated: May 9, 2017 --- URL: https://testingbot.com/privacy # Privacy Policy TestingBot knows that you care how information about you is used and shared, and we appreciate your trust that we will do so carefully and sensibly. By visiting testingbot.com, you are accepting the practices described in this Privacy Policy. TestingBot knows that you care how information about you is used and shared, and we appreciate your trust that we will do so carefully and sensibly. We process personal information contained in Customer Data on behalf of our customers under the terms and conditions of our [TestingBot Customer Data Processing Addendum](https://trust.testingbot.com). - [What's your policy about Cookies?](https://testingbot.com#cookies) - [What personal information does TestingBot gather?](https://testingbot.com#personal) - [Which information do you share?](https://testingbot.com#information) - [What Data Subject Rights Do I Have?](https://testingbot.com#rights) - [How Long Do We Retain Your Personal Data?](https://testingbot.com#duration) - [Is my information safe on this website?](https://testingbot.com#secure) - [Which information can I access?](https://testingbot.com#access) - [Are children allowed to use TestingBot?](https://testingbot.com#children) - [How can I remove all my information from TestingBot?](https://testingbot.com#delete) - [Who is the Data Controller?](https://testingbot.com#controller) - [What Are Our Legal Bases for Processing Personal Data?](https://testingbot.com#legal) - [Conditions of use, notices, and revisions](https://testingbot.com#changes) - [Implemented Technologies](https://testingbot.com#technologies) ## What's your policy about Cookies? Please consult our [Cookie Policy](https://testingbot.com/cookie-policy). ## What personal information does TestingBot gather? The information we learn from customers helps us personalize and continually improve your experience at testingbot.com. During signup, you are asked for your first name and last name, together with an e-mail address. When upgrading your plan, you may be asked for a telephone number and address by our billing provider. Information from Other Sources: We might receive information about you from other sources and add it to our account information. You are not required to provide any personal data to us, but if you do not provide any personal data to us, you may not be able to use certain features of our Services... ## Which information do you share? - **Subcontractors, sub-processors and service providers:** We share your firstname, lastname and email address with our payment providers Stripe and PayPal and with our online chat widget Drift. - A third party, in order to enforce or defend our rights, or to address financial or reputational risks. - A third party to respond to requests relating to a criminal investigation or alleged or suspected illegal activity. - Other recipients where we are authorised or required by law to do so. - A purchaser or prospective purchaser of all or part of our assets or our business... ## What Data Subject Rights Do I Have? - **Right of access:** You have the right to obtain from us confirmation as to whether your personal data is being processed... - **Right to rectification:** You have the right to obtain from us the rectification of inaccurate personal data... - **Right to erasure:** You have the right to ask us to erase your personal data... - **Right to restriction of processing:** You have the right to request restriction of processing... - **Right to data portability:** You have the right to receive your personal data in a structured, commonly used... - **Right to object:** You have the right to object, on grounds relating to your particular situation... - **Right to Submit Complaints:** You have a right to lodge a complaint with a supervisory authority. ## How Long Do We Retain Your Personal Data? If you register for an account on our Services, we retain your personal data for as long as you have an account with us... ## Is my information safe on this website? TestingBot uses SSL (HTTPs) on all parts of its service/website. SSL encrypts information between you and our website. Payment data is handled by our payment provider (Stripe/PayPal)... All sensitive data is encrypted in our database and in our log files. Passwords and security tokens are stripped before they are logged into our system. We will notify serious data breaches... We restrict access to Account-Related Information and other Personal Information... ## Are children allowed to use TestingBot? We do not sell products for purchase by children. If you are under 18, you may use TestingBot only with the involvement of a parent or guardian. ## Which information can I access? You can access and modify your personal information in our member area. ## How can I remove all my information from TestingBot? Please log into our member area, click "Account" and click the "Remove account" button. ## Who is the Data Controller? If you are using our Services, the data controller is TestingBot - Belgium, +1 (855) 410-0024... ## What Are Our Legal Bases for Processing Personal Data? - **Contract Performance:** We process the personal data of users of our Services as necessary to perform our contractual obligations... - **Legitimate Interests:** To provide users with a good user experience, to maintain and secure our Services... - **Legal Obligations:** If we are subject to a lawful access request, engaged in a legal proceeding... - **Consent:** If we are required to obtain your consent to send you marketing communications... - **Vital Interests:** In extenuating circumstances, we may need to process your personal data to protect the vital interests... ## Conditions of use, notices, and revisions If you choose to visit testingbot.com, your visit and any dispute over privacy is subject to this Notice... We may periodically alter this policy and our Terms of service. Please check these pages frequently to see the most recent changes. **Last updated: April 9, 2024** ## Implemented Technologies If you have any questions, complaints or remarks about this Privacy Policy, you can contact our Data Protection Officer at [info@testingbot.com](mailto:info@testingbot.com). TestingBot Attn: Data Protection Officer [info@testingbot.com](mailto:info@testingbot.com) Telephone number: +1 (855) 410-0024 [Contact TestingBot](https://testingbot.com/contact/new) --- URL: https://testingbot.com/cookie-policy # Cookie Policy TestingBot uses cookies to improve your user experience. ## What's a cookie? A cookie is a small file which is placed on your computer to remember your preferences. You can read more about cookies on [AllAboutCookies](https://allaboutcookies.org). ## How are you using cookies? When you first visit our website, our partner Google Analytics will set a cookie to track which pages you visit. Next to that, we will set a cookie to determine if you're logged in or not (session cookie). Once you log out, this cookie is destroyed. We offer online chat as a way to help you with your questions. This 3rd party provider also sets cookies to enhance your user experience. ## Cookie List Below is the list of cookies we use on TestingBot: ### Strictly Necessary Cookies These cookies are necessary for the website to function and cannot be switched off in our systems... #### Cookies used | Cookie Name | Description | Expiration | | --- | --- | --- | | \_testingbot\_gsession | Keep track of whether you're signed in on TestingBot | Until you close your browser | | remember\_user\_token | If you enabled "Remember me" during login, we will use this cookie to remember your session. | 14 days | | \_\_stripe\_mid | Used by Stripe. More info on [Stripe's Cookie Policy](https://stripe.com/cookies-policy/legal). | 1 year | ### Performance Cookies These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site... #### Cookies used | Cookie Name | Description | Expiration | | --- | --- | --- | | \_gid | Used by Google Analytics. [More info](https://www.en.advertisercommunity.com/t5/Google-Analytics-Code/Information-about-a-cookie-of-Google-Analytics-named-gid/td-p/1127468). | 30 days | | \_ga | Used by Google Analytics to identify unique sessions. | 30 days | ### Targeting Cookies These cookies may be set through our site by our advertising partners... #### Cookies used | Domain | Cookies | | --- | --- | | youtube.com | - SID - HSID - demographics - VISITOR\_INFO1\_LIVE - PREF - APISID - SSID - LOGIN\_INFO - YSC - SAPISID | | google.com | - APISID - SSID - NID - PREF - SID - SAPISID - HSID | ### Social Media Cookies These cookies are set by a range of social media services that we have added to the site... #### Cookies used | Cookie Name | Description | Expiration | | --- | --- | --- | | intercom-id-[app\_id] | Anonymous visitor identifier for the online chat functionality. | 9 months | | intercom-session-[app\_id] | Keeps track of chat sessions. Gives users access to their previous conversations and identifies them in the Messenger. | 1 week | | intercom-device-id-[app\_id] | Identifier for each unique device that interacts with the Messenger. | 9 months | This policy was last updated on October 8, 2025. Please see our [Terms & Conditions](https://testingbot.com/terms) and our [Privacy Policy](https://testingbot.com/privacy) for additional information. --- URL: https://testingbot.com/features/smart-tv-testing # Online Test Automation On Smart TVs OTT test automation on living room devices such as Apple TV, Amazon Fire TV and Chromecast with TestingBot. Manual and automated crossplatform testing on real Apple TV (tvOS) and Android TV devices. [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) ![Online Test Automation On Smart TVs](https://testingbot.com/assets/hero/smarttv-5af19a1f001b85050d5408ac75376cb652d49188245a452b9e7393e20762fd4b.svg) Trusted by some of the world's most innovative companies ## Automated Testing for Smart TV apps Run Appium tests on TV apps running on Apple TV 4K, Chromecast and more. Get access to raw video and audio generated from the Smart TV device. Test DRM-protected content, by accessing a device via manual or automated testing. [Read SmartTV Testing Documentation](https://testingbot.com/support/app-automate/smart-tv) ### Automated Testing with Appium Upload your Smart TV app and run automated tests with Appium on the remote device. ### Connect to a remote TV device Access live video and audio generated from the device, through your own browser and control the remote as if it was in your hand. ### Device Coverage Test on various devices such as Apple TV 4K, Chromecast and more. ## Frequently Asked Questions ### What competitive edge does TestingBot offer with Smart TV testing, compared to its peers? TestingBot offers both manual and automated testing of apps on Smart TVs. View DRM-protected content, hear live audio of the device under test and manually send remote control (IR signals) to the device. ### How can I test Smart TV applications on a remote Smart TV device? Simply upload your app to TestingBot Storage and pick a device to test on. TestingBot provides a high quality video and audio stream of the device. ### Manual and Automated Testing on AppleTV and Chromecast Manually control a device such as Apple TV 4K or ChromeCast device, through your own browser. Run automated tests with Appium on remote smart-tv devices. ### Sign up for a Free Trial Start testing your apps with TestingBot. [Start a free trial](https://testingbot.com/users/sign_up) --- URL: https://testingbot.com/features/manual-browser-testing Live cross-browser testing # Real browsers, streamed to your screen Take control of any real Chrome, Safari, Firefox, Edge or Internet Explorer running on real macOS, Windows or Linux. No VM, no plugin, no install. Open a tab, click a browser, start testing in seconds. [Start free](https://testingbot.com/users/sign_up)[Request a demo](https://testingbot.com/demo) Combinations6100+ Platforms5 Uptime99.99% ![macOS Tahoe](https://testingbot.com/assets/environments/tahoe_logo-57c43a6991568db006f6302de4cda5171c2e1d56c4d3c0d81ce39ce7ae908146.png "macOS Tahoe")macOS Tahoe · Safari ![Safari](https://testingbot.com/assets/environments/svg/safari-e4837bb5f9a9729fef843af4180372e975c62587808b8ab479f615f3e240e858.svg "Safari")testingbot.com/demo Live Real browsers, streamed to your tab Buy now 96 × 20Pricing ElementsConsoleSourcesNetwork0 err \ \Real...\ \ ` **Incorrect:** `
` ## 2. Requirements for aria-braillelabel When using the `aria-braillelabel` attribute, the element must also have an accessible name provided by an `aria-label` or another naming attribute. **Correct:** ` 📁 Download ` **Incorrect:** ` 📁 Download ` ## 3. Requirements for aria-brailleroledescription When using the `aria-brailleroledescription` attribute, ensure the element also has an `aria-roledescription` attribute to provide context for its role. **Correct:** `
Menu
` **Incorrect:** `
Menu
` ## 4. Remove Unnecessary Attributes If the `aria-braillelabel` or `aria-brailleroledescription` attribute does not serve a clear purpose or is misused, it should be removed to maintain clarity and functionality. **Correct:** `
Menu
` **Incorrect:** `
Menu
` ## Common Mistakes to Avoid - Using `aria-braillelabel` without an `aria-label` or similar naming attribute. - Using `aria-brailleroledescription` without an `aria-roledescription`. **Warning:** Failing to provide corresponding attributes can result in these ARIA braille attributes being ignored or, worse, causing confusion in assistive technologies. ## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-command-name](https://testingbot.com/support/accessibility/web/rules/aria-command-name) - [aria-conditional-attr](https://testingbot.com/support/accessibility/web/rules/aria-conditional-attr) - [aria-deprecated-role](https://testingbot.com/support/accessibility/web/rules/aria-deprecated-role) - [aria-hidden-body](https://testingbot.com/support/accessibility/web/rules/aria-hidden-body) - [aria-hidden-focus](https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-command-name # ARIA commands must have an accessible name Rule ID: aria-command-nameUser Impact: seriousGuidelines: WCAG 2.0 The aria-command-name problem occurs when interactive elements (e.g., buttons, links, menus) are not assigned a valid ARIA role or when custom ARIA attributes are used incorrectly. This can lead to assistive technologies misinterpreting or ignoring these elements, reducing accessibility. For example screen readers are not able to discern the purpose of elements with role="link", role="button" or role="menuitem" that do not have an accessible name. Always use native HTML elements with their built-in accessibility features wherever possible. When custom elements are necessary, make sure they have proper ARIA roles, valid attributes and accessible names. Here is how you can fix issues related to `aria-command-name`: ### Ensure Proper Use of ARIA Roles - Verify that interactive elements like buttons and links have appropriate ARIA roles. Use `role="button"` for a custom button or `role="link"` for a custom hyperlink. - Avoid unnecessary ARIA roles when native HTML semantics suffice. For example, use `>button>` instead of `
`. ### Provide Accessible Names Make sure every interactive element has an accessible name that clearly describes its purpose, by using the `aria-label` or `aria-labelledby` attributes. ### Use ARIA Attributes Correctly - Use only valid ARIA attributes appropriate to the assigned role. - Avoid non-standard ARIA attributes like `aria-command-name`, as they might not be supported. - Consult the [WAI-ARIA specification](https://www.w3.org/TR/wai-aria/) for the correct attributes for each role. ## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-conditional-attr](https://testingbot.com/support/accessibility/web/rules/aria-conditional-attr) - [aria-deprecated-role](https://testingbot.com/support/accessibility/web/rules/aria-deprecated-role) - [aria-hidden-body](https://testingbot.com/support/accessibility/web/rules/aria-hidden-body) - [aria-hidden-focus](https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus) - [aria-input-field-name](https://testingbot.com/support/accessibility/web/rules/aria-input-field-name) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-conditional-attr # Ensure ARIA attributes are used as described in the specification of the element's role Rule ID: aria-conditional-attrUser Impact: seriousGuidelines: WCAG 2.0 Using ARIA attributes on elements where they are not intended can cause unpredictable behavior in assistive technologies. This could result in a poor user experience for individuals with disabilities who depend on these tools. Adhering to the ARIA specification is crucial to ensure assistive technologies can accurately interpret and convey the intended meaning of the content. ## Why It Matters Using ARIA attributes in unexpected ways can cause confusing behavior for assistive technologies. Adhering to ARIA specifications ensures that individuals with disabilities can effectively interpret and interact with web content. ## How to Fix For checkboxes, consider the following approaches: - Remove the `aria-checked` attribute from native HTML checkboxes and manage their state using the `indeterminate` property. - If replacing the native checkbox with a custom element, ensure it has the appropriate role and is keyboard accessible. For `tr` elements with a role of `row`, you may need to change the role of the parent `table` or `grid` to `treegrid`. ### Example #### Fail The following example incorrectly uses the `aria-checked` attribute on a native checkbox, and the `row` elements are part of a `table` instead of a `treegrid`:
...
...
...
#### Pass In this corrected example, the `aria-checked` attribute is removed from the native checkbox, and the parent element is correctly set to `treegrid` for the `row` elements:
...
...
...
## About This Rule This rule passes under the following conditions: - For `aria-checked`: - It is not used on an HTML `input` element of type `checkbox`. - Browsers ignore `aria-checked` on native checkboxes. - For `row` elements: - Attributes like `aria-posinset`, `aria-setsize`, `aria-expanded`, and `aria-level` are used only when the `row` is part of a `treegrid`. ## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-deprecated-role](https://testingbot.com/support/accessibility/web/rules/aria-deprecated-role) - [aria-hidden-body](https://testingbot.com/support/accessibility/web/rules/aria-hidden-body) - [aria-hidden-focus](https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus) - [aria-input-field-name](https://testingbot.com/support/accessibility/web/rules/aria-input-field-name) - [aria-meter-name](https://testingbot.com/support/accessibility/web/rules/aria-meter-name) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-deprecated-role # Make sure elements do not use deprecated roles Rule ID: aria-deprecated-roleUser Impact: minorGuidelines: WCAG 2.0 ## About This A11Y Rule This rule ensures that ARIA role attributes do not use deprecated or abstract values. Deprecated roles are those that the ARIA specification no longer recommends. Abstract roles are intended for user agent implementation and must not be used by web developers. ## Why It Matters Using deprecated ARIA roles can cause elements to be unrecognized by assistive technologies, leading to accessibility issues. This may prevent users from accessing essential information. ## How to Fix Replace deprecated roles with their modern equivalents. For example, use the `list` role instead of the deprecated `directory` role. ### Example #### Fail The following example uses the deprecated `directory` role:
...
#### Pass In this corrected example, the valid `list` role is used:
...
## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-hidden-body](https://testingbot.com/support/accessibility/web/rules/aria-hidden-body) - [aria-hidden-focus](https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus) - [aria-input-field-name](https://testingbot.com/support/accessibility/web/rules/aria-input-field-name) - [aria-meter-name](https://testingbot.com/support/accessibility/web/rules/aria-meter-name) - [aria-progressbar-name](https://testingbot.com/support/accessibility/web/rules/aria-progressbar-name) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-hidden-body # Make sure aria-hidden="true" is not present on the document body. Rule ID: aria-hidden-bodyUser Impact: criticalGuidelines: WCAG 2.0 The attribute `aria-hidden="true"` must not be used on the `` element. ## About This Rule This rule ensures that the `` element does not have the `aria-hidden` attribute, maintaining accessibility for assistive technologies. ## Why It Matters Applying `aria-hidden="true"` to the `` element hides all its content from assistive technologies, such as screen readers. While users can still navigate to focusable elements using the keyboard, the content remains inaccessible, leading to a poor user experience for individuals relying on these technologies. ## How to Fix - Remove `aria-hidden="true"` from the `` element. - Apply `aria-hidden="true"` only to elements whose content is decorative or redundant for assistive technology users. - Avoid using `aria-hidden="false"` on child elements of a parent with `aria-hidden="true"`, as it won't make them visible to assistive technologies. ### Example #### Fail In this example, `aria-hidden="true"` is incorrectly applied to the `` element, hiding all content from assistive technologies: ... ... #### Pass The attribute `aria-hidden="true"` must never applied to the `` element. Instead, when a dialog is open, elements outside the dialog can be removed from the tab order. ... ... ## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-hidden-focus](https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus) - [aria-input-field-name](https://testingbot.com/support/accessibility/web/rules/aria-input-field-name) - [aria-meter-name](https://testingbot.com/support/accessibility/web/rules/aria-meter-name) - [aria-progressbar-name](https://testingbot.com/support/accessibility/web/rules/aria-progressbar-name) - [aria-prohibited-attr](https://testingbot.com/support/accessibility/web/rules/aria-prohibited-attr) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-hidden-focus # Ensure aria-hidden elements are not focusable nor contain focusable elements Rule ID: aria-hidden-focusUser Impact: seriousGuidelines: WCAG 2.0 ## Why It Matters Applying `aria-hidden="true"` to an element hides it and all its children from assistive technologies, such as screen readers. However, users can still navigate to any focusable child elements using the keyboard. This discrepancy means that while these elements are focusable, their content remains inaccessible to assistive technology users, leading to confusion and a poor user experience. ## About This Rule This rule ensures that elements with `aria-hidden="true"` do not contain focusable elements. It passes if any of the following are true: - The element with `aria-hidden="true"` contains no focusable elements. - The element with `aria-hidden="true"` contains only focusable elements that are disabled or not tabbable. ## How to Fix - Use `aria-hidden="true"` only on elements whose content is decorative or redundant for assistive technology users. - Restructure the code so that focusable elements are not children of an element with `aria-hidden="true"`. - Make child elements non-focusable by applying the `disabled` attribute or non-tabbable by setting `tabindex="-1"`. - Where appropriate, hide elements from all users by applying the `hidden` attribute or using CSS properties like `display: none;` or `visibility: hidden;`. ### Example #### Fail An alert is positioned off-screen and marked with `aria-hidden="true"` until it’s needed. However, the alert contains an OK button that remains focusable even when the alert is hidden. Keyboard users can tab to the button but cannot discern its purpose. #### Pass When the alert is positioned off-screen, its OK button is marked with `tabindex="-1"`. Keyboard users encounter the button only when the alert is on-screen. ## Other Rules Interested in other web accessibility rules? Please see these other rules: - [aria-input-field-name](https://testingbot.com/support/accessibility/web/rules/aria-input-field-name) - [aria-meter-name](https://testingbot.com/support/accessibility/web/rules/aria-meter-name) - [aria-progressbar-name](https://testingbot.com/support/accessibility/web/rules/aria-progressbar-name) - [aria-prohibited-attr](https://testingbot.com/support/accessibility/web/rules/aria-prohibited-attr) - [aria-required-attr](https://testingbot.com/support/accessibility/web/rules/aria-required-attr) --- URL: https://testingbot.com/support/accessibility/web/rules/aria-input-field-name # Ensure every ARIA input field has an accessible name Rule ID: aria-input-field-nameUser Impact: seriousGuidelines: WCAG 2.0 ARIA input fields must have accessible names. ## About This Rule This rule passes if any of the following are true: - The element has an `aria-labelledby` attribute that references elements visible to screen readers. - The element has a non-empty `aria-label` attribute. - The element has a non-empty `title` attribute. There should be no mismatch between the element's `
`, `