Problem or motivation
Hi team,
First of all, great work on mobilewright — it’s very exciting to see initiatives bringing a modern, Playwright-like experience into the mobile automation space.
Secondly, please excuse me if this is not the right space to address my concerns / seek for help.
I’m currently at a decision point in my organization and would really appreciate your guidance.
And Mobilewright project came just in time and I hope it will be just the saviour I need.
Context (our current situation)
We are quite a large QA organization with multiple teams.
As of today we handle:
- Desktop automation → Selenium
- Mobile automation → Appium
Because both rely on WebDriver, we have:
- Shared locator strategies
- Reusable Page Objects / business logic
However:
We are actively exploring Playwright as a replacement for Selenium.
We already see strong benefits (speed, reliability, modern API).
We are also moving towards AI-driven automation, where Playwright seems more aligned.
The challenge
We are trying to unify automation across:
- Desktop Web
- Android WebView
- iOS WebView
- Native Mobile Screens
What we observed:
Playwright works great for:
- Desktop
- Mobile web
- Android WebView (via experimental _android support)
But:
- No direct support for iOS WebView (e.g. WKWebView)
- No native mobile automation
This leads to a fragmented architecture:
- Playwright → Desktop + Android WebView
- Appium → iOS WebView + Native
Which introduces:
- Duplication of locators
- Different interaction models
- Increased maintenance cost
As of this exact moment, in our organisation, we've built a strong automation PoC library around Playwright for Desktop Browser automation + Android WebView using the experimental "android" support from Playwright and Appium for native screens.
This basically means that we can reuse the same Page Objects defined for Desktop Browser automation also for WebView rendered screens on Android (where the same POM is rendered via WebView) as we can extract the "page" from the mobile WebView and pass it along to any POM or playwright action relying on "page" / fixture. For the native screens (Android + iOS) we're still relying on Appium.
But as you can see, we're fully missing from the scope of our automation the iOS WebView rendered screens as currently Playwright does not provide a way to extract the "page" on iOS devices and play around with it.
This would eventually force use to rely fully on Appium for iOS automation (native + WebView screens) and would also introduce overhead with locators, shadow-roots etc. Everything basically that playwright excels.
Therefore I would have a couple of questions for you guys:
-
WebView support (critical for us)
What is the current real support level for WebView (especially iOS WKWebView) in mobilewright?
Is there a way that we can reuse the existing playwright POMs + actions that we've defined for Desktop Browser automation using mobilewright?
Basically, I suppose it resumes to extracting the "page" object/fixture and play around with it as your would normally do it under Playwright.
-
Shadow DOM
How does Mobilewright handle WebView content using Shadow DOM?
Especially, does it support deep traversal?
-
Hybrid apps (native + WebView)
What is your recommended architecture for hybrid apps?
Native screens + WebView screens mixed
Would you recommend:
- One unified Mobilewright layer?
- Or combining Mobilewright with Playwright/Appium?
The framework we choose will be adopted organization-wide, so long-term maintainability and reusability are key concerns.
Any guidance, clarifications, or even high-level direction would be extremely valuable.
Thanks a lot 🙏
Proposed solution
Possibility to extract "page" class/fixture and reuse existing Playwright POMs and actions relying exclusively on "page".
Target platform
Both
Alternatives considered
No response
Additional context
No response
Problem or motivation
Hi team,
First of all, great work on mobilewright — it’s very exciting to see initiatives bringing a modern, Playwright-like experience into the mobile automation space.
Secondly, please excuse me if this is not the right space to address my concerns / seek for help.
I’m currently at a decision point in my organization and would really appreciate your guidance.
And Mobilewright project came just in time and I hope it will be just the saviour I need.
Context (our current situation)
We are quite a large QA organization with multiple teams.
As of today we handle:
Because both rely on WebDriver, we have:
However:
We are actively exploring Playwright as a replacement for Selenium.
We already see strong benefits (speed, reliability, modern API).
We are also moving towards AI-driven automation, where Playwright seems more aligned.
The challenge
We are trying to unify automation across:
What we observed:
Playwright works great for:
But:
This leads to a fragmented architecture:
Which introduces:
As of this exact moment, in our organisation, we've built a strong automation PoC library around Playwright for Desktop Browser automation + Android WebView using the experimental "android" support from Playwright and Appium for native screens.
This basically means that we can reuse the same Page Objects defined for Desktop Browser automation also for WebView rendered screens on Android (where the same POM is rendered via WebView) as we can extract the "page" from the mobile WebView and pass it along to any POM or playwright action relying on "page" / fixture. For the native screens (Android + iOS) we're still relying on Appium.
But as you can see, we're fully missing from the scope of our automation the iOS WebView rendered screens as currently Playwright does not provide a way to extract the "page" on iOS devices and play around with it.
This would eventually force use to rely fully on Appium for iOS automation (native + WebView screens) and would also introduce overhead with locators, shadow-roots etc. Everything basically that playwright excels.
Therefore I would have a couple of questions for you guys:
WebView support (critical for us)
What is the current real support level for WebView (especially iOS WKWebView) in mobilewright?
Is there a way that we can reuse the existing playwright POMs + actions that we've defined for Desktop Browser automation using mobilewright?
Basically, I suppose it resumes to extracting the "page" object/fixture and play around with it as your would normally do it under Playwright.
Shadow DOM
How does Mobilewright handle WebView content using Shadow DOM?
Especially, does it support deep traversal?
Hybrid apps (native + WebView)
What is your recommended architecture for hybrid apps?
Native screens + WebView screens mixed
Would you recommend:
The framework we choose will be adopted organization-wide, so long-term maintainability and reusability are key concerns.
Any guidance, clarifications, or even high-level direction would be extremely valuable.
Thanks a lot 🙏
Proposed solution
Possibility to extract "page" class/fixture and reuse existing Playwright POMs and actions relying exclusively on "page".
Target platform
Both
Alternatives considered
No response
Additional context
No response