Tests d'applications hybrides sur appareils réels : écrans natifs et WebViews
Votre application Ionic ou Capacitor est en partie native et en partie page web, chacune avec ses propres outils. Testez les deux dans une seule session sur un vrai iPhone ou téléphone Android, avec les DevTools complets sur les WebViews de votre application : console, réseau et DOM. Basculez entre NATIVE_APP et WEBVIEW dans Appium, ou laissez un agent IA le faire via MCP.
DevTools complets sur vos WebViews
Console, réseau et DOM sur le contenu web de votre application, sur de vrais appareils iOS et Android. Pas seulement les pages Safari et Chrome.
Écrans natifs et contenu web dans une seule session
Parcourez un écran natif, arrivez dans une WebView, inspectez-la et revenez. Une seule session en direct sur un seul vrai appareil, sans changer d'outil.
Une seule capture réseau, natif et web
Voyez côte à côte les appels du code natif et du contenu web, et simulez une réponse sur l'appareil pour tester un état d'erreur.
Des agents IA lisent la console et le DOM
Via MCP, Claude, Cursor ou votre propre agent lit la console et le DOM d'une WebView et pilote à la fois la couche native et la couche web.
Changement de contexte Appium
Passez entre les contextes NATIVE_APP et WEBVIEW, la voie standard d'Appium pour les applications hybrides. Votre suite existante s'exécute sur de vrais appareils, seul le point d'accès change.
Ionic, Capacitor, Cordova et plus
Les applications Ionic, Capacitor et Cordova, ou toute application qui intègre des vues web, sont des exemples de ce que vous pouvez tester ainsi.
Passez du natif à la WebView dans Appium
Changement de contexte Appium standard, sur Android et iOS. Seul le point d'accès change.
import { remote } from 'webdriverio';
const driver = await remote({
protocol: 'https',
hostname: '<subdomain>.robotactions.com',
port: 443,
path: '/',
headers: { Authorization: `Bearer ${process.env.RA_API_TOKEN}` },
capabilities: {
platformName: 'Android',
'appium:automationName': 'UiAutomator2',
'appium:appPackage': 'com.example.myhybridapp',
'appium:appActivity': '.MainActivity'
}
});
// Native screen first
await driver.$('~open-help').click();
// Find the WebView context and switch to it
const contexts = await driver.getContexts();
const webview = contexts.find((c) => String(c).includes('WEBVIEW'));
await driver.switchContext(webview);
// Standard CSS selectors now work on the web content
await driver.$('h1.title').waitForDisplayed();
console.log(await driver.$('h1.title').getText());
// Back to the native layer
await driver.switchContext('NATIVE_APP');
await driver.deleteSession();Déboguez la partie web de votre application
L'offre gratuite donne un appareil et ne demande aucune carte de crédit. Ouvrez votre build et inspectez une WebView sur du vrai matériel.