Estructura de un corredor de prueba

Test Runner es la unidad de ejecución del flujo de invocación. Aquí es donde realmente se ejecutan las pruebas.

Interfaces

Los ejecutores de pruebas se definen a través de la interfaz IRemoteTest , que proporciona un método de run simple para implementar que se llamará cuando se ejecuten las pruebas.

Esto permite que ocurra la definición más simple de una ejecución de prueba. Pero en la práctica, los escritores de pruebas necesitarán más información para escribir correctamente sus pruebas, por lo general, información sobre la compilación y el dispositivo. Aquí es donde las siguientes interfaces resultan útiles.

Básico

Estas dos interfaces son las más utilizadas en la actualidad, ya que representan las necesidades básicas de la mayoría de las pruebas.

  • IBuildReceiver permite que la prueba obtenga el objeto IBuildInfo creado en el paso del proveedor de compilación que contiene toda la información y los artefactos relacionados con la configuración de la prueba.
  • IDeviceTest permite que TF reciba el objeto ITestDevice que representa el dispositivo bajo prueba y proporciona una API para interactuar con él.

Avanzado

Existen interfaces adicionales que permiten una interacción más compleja entre el arnés de prueba y el corredor de prueba:

  • ITestFilterReceiver , que permite que la prueba reciba un conjunto de filtros para ejecutar solo ciertas pruebas. Esto es útil para ejecutar un subconjunto de las pruebas.
  • ITestCollector , que permite que un corredor de prueba solo ejecute las pruebas en seco en lugar de ejecutarlas realmente. Esto es útil para recopilar la lista de todos los casos de prueba.

Corredores de pruebas existentes

Ya existe una variedad de ejecutores de pruebas, algunos para los principales tipos de pruebas:

Además de los anteriores, existe una gran cantidad de ejecutores de pruebas personalizados; sirven para fines especializados para algunas pruebas funcionales, por ejemplo, Boot Test.

Escribiendo un nuevo corredor de prueba

Hay disponible más orientación sobre cómo escribir un nuevo corredor de pruebas en la sección de pruebas de escritura .