Ir al contenido

Pruebas móviles al estilo Playwright para Android e iOS

Novedades de la 0.7: localizadores componibles y tokens por sesión para los agentes

Pruebas al estilo Playwright para apps reales de Android e iOS.

Astur maneja tu app a través de agentes nativos, UIAutomator en Android y XCUITest en iOS, sin un servidor Appium de por medio. Apps nativas, React Native y Flutter, en emuladores, simuladores y dispositivos reales.

npm create astur@latest
Un astrolabio cuyas agujas estelares señalan Android, iOS, Flutter, React Native y WebView 0306090120150180210240270300330 Android iOS Flutter React Native WebView

Una prueba, de tu editor al dispositivo.

Escribes la prueba con la API de Playwright Test que ya conoces. Astur se encarga del resto del camino.

  1. Tu pruebaPlaywright Test: fixtures, proyectos, reintentos, el informe HTML y el botón de ejecutar de VS Code.
  2. El runtime de AsturAcciones con espera automática, aserciones que reintentan, capturas y vídeo cuando algo falla.
  3. Un agente nativoUIAutomator en Android, XCUITest en iOS. Sin servidor Appium ni puente WebDriver.
  4. El dispositivoUn emulador, un simulador o el teléfono que tienes en la mesa.
tests/sign-in.spec.ts
import { test, expect } from '@astur-mobile/test';

test('sign in', async ({ device }) => {
  await device.getByLabel('Email').fill('qa@example.com');
  await device.getByRole('button', { name: 'Sign in' }).tap();
  await expect(device.getByText('Welcome')).toBeVisible();
});

Funciona con aquello con lo que esté hecha tu app.

  • AndroidEmuladores y dispositivos reales, con un agente UIAutomator.
  • iOSSimuladores y dispositivos reales, con un agente XCUITest.
  • React Native y ExpotestID y etiquetas de accesibilidad, leídos de forma nativa.
  • FlutterEl árbol de widgets en vivo en Android; el árbol de accesibilidad en iOS.
  • Compose y SwiftUITodo lo que dibuje vistas nativas, incluido .NET MAUI.
  • WebViews y web móvilControl real del DOM dentro de la app, y Chrome o Safari en el dispositivo.

Todo lo que necesita una suite móvil, en un solo paquete.

Inspector y codegen
Refleja el dispositivo, recorre el árbol en vivo y graba toques en una prueba que te quedas.
Localizadores componibles
getByRole, filter, and/or, nth: señala la fila exacta en una lista de elementos iguales.
Aserciones fiables
Esperan a la condición y fallan si no se puede leer el dispositivo. Una acción perdida nunca se repite.
Observación de red
Comprueba las llamadas HTTP que hace tu app, no solo lo que muestra.
Comparación visual
toHaveScreenshot con referencias por dispositivo y regiones enmascaradas.
Seguro por defecto
Cada agente y el inspector exigen un token por sesión.

Míralo en marcha.

Inspección, autoría y una ejecución multiplataforma, en un recorrido breve.

Con el nombre de un instrumento que cabía en la mano.

El astrolabio era una computadora analógica lo bastante pequeña para llevarla encima: giras la red, apuntas a una estrella con la alidada y lees la respuesta en el limbo. En el Alepo del siglo X, Mariam al-Asturlabiya era conocida por construirlos.

Astur aplica la misma idea a las pruebas móviles: un runtime nativo pequeño, que cabe en una prueba, en lugar de una pila de servidores.

Tu primera prueba está a un comando de distancia.

El generador te pregunta qué plataformas quieres y escribe una configuración que funciona y una primera prueba.

npm create astur@latest