Saltar al contenido principal

Conceptos de pruebas de integración

Aprende sobre las pruebas de integración en Flutter.

Las pruebas unitarias y las pruebas de Widgets validan clases, funciones o Widgets individuales. No validan cómo funcionan juntas las piezas individuales en su totalidad ni capturan el rendimiento de una aplicación que se ejecuta en un dispositivo real. Para realizar estas tareas, utiliza pruebas de integración.

Las pruebas de integración verifican el comportamiento de la aplicación completa. Este tipo de prueba también puede llamarse prueba de extremo a extremo (end-to-end testing) o prueba de interfaz gráfica de usuario (GUI testing).

Frameworks de prueba

#

Comúnmente se utilizan dos paquetes para realizar pruebas de integración en Flutter. Estos son:

  • El paquete integration_test: El paquete de pruebas de integración oficial que forma parte del SDK de Flutter. Las pruebas escritas con integration_test pueden realizar las siguientes tareas: ejecutarse en el dispositivo de destino, ejecutarse desde la máquina host con flutter test integration_test, y usar las APIs de flutter_test. Esto hace que las pruebas de integración sean similares a escribir pruebas de Widgets. Sin embargo, integration_test no puede interactuar con la interfaz de usuario nativa de la plataforma.

  • El paquete patrol: Un paquete de pruebas de integración de terceros muy popular que tiene muchas de las características admitidas por el paquete integration_test, pero que además puede interactuar con la interfaz de usuario nativa de la plataforma, como diálogos de permisos, notificaciones o el contenido de las vistas de la plataforma.

Terminología

#
máquina host

El sistema en el que desarrollas tu aplicación, como una computadora de escritorio.

dispositivo de destino

El dispositivo móvil, navegador o aplicación de escritorio que ejecuta tu aplicación Flutter.

Si ejecutas tu aplicación en un navegador web o como una aplicación de escritorio, la máquina host y el dispositivo de destino son los mismos.

Primeros pasos

#

Para usar integration_test, añádelo como una dependencia para el archivo de prueba de tu aplicación Flutter.

Para migrar proyectos existentes que utilizan flutter_driver, consulta la guía Migración desde flutter_driver (Migrating from flutter_driver).

Para usar patrol, sigue la guía de configuración de Patrol.

Casos de uso para las pruebas de integración

#

Las otras guías de esta sección explican cómo usar las pruebas de integración para validar la funcionalidad y el rendimiento.