Ejecución de pruebas automatizadas desde planes de pruebas

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Automatice los casos de prueba en los planes de prueba y ejecútelos directamente desde Azure Test Plans . Las pruebas automatizadas proporcionan las siguientes ventajas:

  • Un proceso fácil de usar para los evaluadores que podrían no estar bien familiarizados con la ejecución de pruebas en flujos de trabajo de compilación o versión.
  • Flexibilidad para ejecutar pruebas seleccionadas a petición, en lugar de pruebas programadas en flujos de trabajo de compilación o versión en los que se ejecutan todas las pruebas que cumplen los criterios de filtro.
  • La capacidad de volver a ejecutar algunas pruebas que no se pudieron realizar debido a problemas de infraestructura de prueba o tiene una nueva compilación que incluye correcciones para las pruebas con errores.

Requisitos previos

Configurar el entorno

  1. En la página Planes de prueba, elija el plan de prueba, abra el menú contextual y, a continuación, seleccione Configuración del plan de prueba.

    Captura de pantalla que muestra cómo elegir Configuración del plan de prueba.

  2. En el cuadro de diálogo Configuración del plan de prueba, seleccione la canalización de compilación que genera compilaciones que contienen los archivos binarios de prueba. A continuación, puede seleccionar un número de compilación específico para probar o permitir que el sistema use automáticamente la compilación más reciente cuando se ejecuten las pruebas.

    Captura de pantalla que muestra la selección del número de compilación y compilación.

  3. Necesita una canalización de versión que se creó a partir de la plantilla Ejecutar pruebas automatizadas de Test Manager para ejecutar pruebas de planes de prueba en Azure Test Plans. Si tiene una canalización de versión existente creada con esta plantilla, selecciónela y, a continuación, seleccione la fase existente en la canalización de versión para la ejecución de pruebas. De lo contrario, seleccione Crear nuevo en el cuadro de diálogo para crear una nueva canalización de versión que contenga una sola fase con la tarea Prueba de Visual Studio ya agregada.

    Captura de pantalla que muestra la selección de una canalización de versión o la creación de una nueva.

    Cómo pasar parámetros al código de prueba desde una canalización de compilación o versión?

  4. Asigne nombres significativos a la canalización de versión y a la fase según sea necesario.

  5. Si Visual Studio ya está instalado en el equipo del agente, omita este paso. Si no es así, agregue la tarea Instalador de plataforma de prueba de Visual Studio a la definición de canalización.

  6. Agregue la tarea Prueba de Visual Studio a la canalización de versión y configúrela de la siguiente manera:

    • Compruebe que está seleccionada la versión 2 de la tarea Prueba de Visual Studio. El número de versión se muestra en la lista desplegable del panel de configuración de tareas.

      Captura de pantalla que muestra la comprobación de la configuración del número de versión de la tarea.

    • Compruebe que Select tests using (Seleccionar pruebas con ) está establecido en Test run (Ejecución de pruebas). ¿Qué significa esta configuración?

      Captura de pantalla que muestra la comprobación de la configuración del método de selección de prueba.

    • Para probar la versión de la plataforma , seleccione Instalado por el Instalador de herramientas.

      Captura de pantalla que muestra cómo establecer la opción del instalador.

    • Si tiene pruebas de IU que se ejecutan en exploradores físicos o clientes gruesos, asegúrese de que el agente está configurado para ejecutarse como un proceso interactivo con el registro automático habilitado. Debe configurar un agente para que se ejecute de forma interactiva antes de poner en cola la compilación o versión. La casilla Combinación de pruebas contiene pruebas de IU no configura automáticamente el agente en modo interactivo; solo se usa como recordatorio para configurar el agente correctamente para evitar errores.

    • Si está ejecutando pruebas de IU en un explorador sin encabezado, no se requiere la configuración del proceso interactivo.

    • Seleccione cómo se aprovisiona la plataforma de prueba y la versión de Visual Studio o la ubicación de la plataforma de prueba instalada en las máquinas de prueba.

    • Si las pruebas necesitan parámetros de entrada , como direcciones URL de aplicación o cadenas de conexión de base de datos, seleccione el archivo de configuración pertinente en los artefactos de compilación. Puede usar las tareas Publicar artefactos de compilación en la canalización de compilación para publicar el archivo de configuración en una ubicación de colocación si este archivo no se incluye en los artefactos. En el ejemplo siguiente, la dirección URL de la aplicación se expone en el archivo de configuración de ejecución y se reemplaza para establecerla en una dirección URL de ensayo mediante la configuración Invalidar parámetros de ejecución de pruebas.

      Captura de pantalla que muestra la especificación de las propiedades de la tarea Prueba de Visual Studio.

      Para obtener información sobre la configuración de opciones de la tarea Prueba de Visual Studio, vea Tarea de prueba de Visual Studio.

  7. Elija el elemento de trabajo Agente y compruebe que la cola de implementación está establecida en la que contiene las máquinas en las que desea ejecutar las pruebas. Si las pruebas requieren máquinas especiales del grupo de agentes, puede agregar demandas que seleccionen en tiempo de ejecución.

    Captura de pantalla que muestra la especificación de las propiedades del trabajo del Agente.

    Es posible que pueda minimizar los tiempos de prueba mediante la distribución de pruebas entre varios agentes estableciendo Paralelismo en Varias ejecuciones y especificando el número de agentes.

    Nota:

    Si está ejecutando pruebas de iu como CodeUI o Selenium en exploradores físicos como IE, Firefox o Chrome, el agente de las máquinas debe ejecutarse en modo interactivo y no como servicio. Más detalles.

  8. En la página Canalización de la canalización de versión, compruebe que la canalización de compilación que contiene los archivos binarios de prueba vincula a esta canalización de versión como origen de artefacto.

    Captura de pantalla que muestra la comprobación de los artefactos de compilación vinculados.

  9. Guarde la canalización de versión.

  10. Si eligió Crear nuevo en el cuadro de diálogo Configuración del plan de prueba en el paso 2 de este ejemplo, vuelva a la página del explorador que contiene la configuración del plan de prueba. En el cuadro de diálogo Configuración del plan de prueba, seleccione la canalización de versión y la fase que guardó.

    Captura de pantalla que muestra la selección de la canalización de versión y la fase.

Ejecución de las pruebas automatizadas

  1. En el portal web de Test Plans, abra el plan de pruebas y seleccione un conjunto de pruebas que contenga las pruebas automatizadas.

  2. Seleccione las pruebas que desea ejecutar, abra el menú Ejecutar y, a continuación, seleccione Ejecutar prueba.

    Captura de pantalla que muestra la selección de Ejecutar prueba.

    Los archivos binarios de prueba de estas pruebas deben estar disponibles en los artefactos de compilación generados por la canalización de compilación.

  3. Seleccione Aceptar para iniciar el proceso de prueba. El sistema comprueba que solo las pruebas automatizadas se seleccionan (se omiten las pruebas manuales), valida la fase para asegurarse de que la tarea Prueba de Visual Studio está presente y tiene una configuración válida, comprueba el permiso del usuario para crear una versión para la canalización de versión seleccionada, crea una ejecución de prueba y, a continuación, desencadena la creación de una versión en la fase seleccionada.

    Captura de pantalla que muestra cómo iniciar la ejecución de la prueba.

  4. Seleccione Ver ejecución de pruebas para ver el progreso de la prueba y analizar las pruebas con errores. Los resultados de las pruebas tienen la información pertinente para depurar pruebas con errores, como el mensaje de error, el seguimiento de la pila, los registros de consola y los datos adjuntos.

  5. Una vez completada la ejecución de la prueba, la página Ejecuciones del Azure Test Plans muestra los resultados de la prueba. En la página Resumen de ejecución se muestra información general de la ejecución.

    Captura de pantalla que muestra el resumen de la ejecución de pruebas.

    Hay un vínculo a la versión usada para ejecutar las pruebas, lo que facilita la búsqueda de la versión que ejecutó las pruebas si necesita volver más adelante y analizar los resultados. Use también este vínculo si desea abrir la versión para ver los registros de versión.

Nota:

No se admiten datos adjuntos manualmente de archivos para los resultados de pruebas automatizadas.

¿Cuáles son los escenarios o problemas de error típicos que debo buscar si mis pruebas no se ejecutan?

  1. En la página Resultados de la prueba se enumeran los resultados de cada prueba de la ejecución de pruebas. Seleccione una prueba para ver la información de depuración de pruebas con errores, como el mensaje de error, el seguimiento de la pila, los registros de consola y los datos adjuntos.

    Captura de pantalla que muestra la visualización de los detalles de los resultados de la prueba.

  2. Abra la página Test Plans y seleccione el plan de pruebas para ver el estado de las pruebas si las pruebas se actualizan una vez completada la ejecución de la prueba. Seleccione una prueba para ver los resultados de las pruebas recientes.

    Captura de pantalla que muestra la visualización del plan de prueba.

Preguntas más frecuentes

Consulte las siguientes preguntas más frecuentes (P+F) sobre azure Test Plans.

P: ¿Qué permisos necesito para ejecutar pruebas automatizadas desde Azure Test Plans?

R: Debe ser colaborador del proyecto o tener los permisos siguientes:

  • Creación de versiones
  • Administración de las versiones
  • Editar fase de lanzamiento
  • Administrar la implementación

Para obtener más información, consulte Permisos de versión.

P: ¿Puedo invalidar la compilación o el conjunto de fases en el nivel de plan de prueba para una instancia específica de la ejecución de pruebas?

Un: Sí, puede hacerlo mediante el comando Ejecutar con opciones . Abra el menú contextual del conjunto de pruebas en la columna izquierda y seleccione Ejecutar con opciones.

Captura de pantalla que muestra la configuración del cuadro de diálogo Ejecutar con opciones.

Escriba los valores siguientes en el cuadro de diálogo Ejecutar con opciones y seleccione Aceptar:

  • Tipo de prueba y ejecutor: seleccione Pruebas automatizadas mediante la fase de lanzamiento.
  • Compilación: seleccione la compilación que tiene los archivos binarios de prueba. Los resultados de la prueba están asociados a esta compilación.
  • Canalización de versión: seleccione una canalización de la lista de canalizaciones de versión que pueden consumir el artefacto de compilación seleccionado.
  • Fase de lanzamiento: seleccione el nombre de la fase configurada en la canalización de versión.

Captura de pantalla que muestra el cuadro de diálogo Ejecutar con opciones configurado.

P: ¿Por qué usar fases de versión para ejecutar pruebas?

Un: Azure Pipelines ofrece un flujo de trabajo de orquestación atractivo para obtener archivos binarios de prueba como artefactos y ejecutar pruebas. Este flujo de trabajo comparte los mismos conceptos usados en el flujo de trabajo de pruebas programadas, lo que significa que los usuarios que ejecutan pruebas en el flujo de trabajo programado encuentran fácil de adaptar; por ejemplo, mediante la clonación de una canalización de versión de prueba programada existente.

Otra ventaja importante es la disponibilidad de un amplio conjunto de tareas en el catálogo de tareas que permiten realizar una serie de actividades antes y después de ejecutar pruebas. Entre los ejemplos se incluyen la preparación y limpieza de los datos de prueba, la creación y limpieza de archivos de configuración, etc.

P: ¿Cómo funciona la selección de "Ejecución de pruebas" en la tarea Prueba de Visual Studio versión 2?

R: El subsistema de administración de pruebas usa el objeto de ejecución de pruebas para pasar la lista de pruebas seleccionadas para su ejecución. La tarea de prueba busca el identificador de ejecución de pruebas, extrae la información de ejecución de pruebas, como los nombres del contenedor y del método de prueba, ejecuta las pruebas, actualiza los resultados de la ejecución de pruebas y establece los puntos de prueba asociados a los resultados de la prueba en la ejecución de pruebas. Desde una perspectiva de auditoría, la tarea de Visual Studio proporciona un seguimiento de las versiones históricas y los identificadores de ejecución de pruebas a las pruebas enviadas para la ejecución de pruebas a petición.

P: ¿El agente debe ejecutarse en modo interactivo o como servicio?

R: Si ejecuta pruebas de IU como pruebas automatizadas de IU o Selenium , el agente de las máquinas de prueba debe ejecutarse en modo interactivo con el registro automático habilitado, no como servicio, para permitir que el agente inicie un explorador web. Si usa un explorador sin encabezado como PhantomJS, el agente se puede ejecutar como servicio o en modo interactivo. Para obtener más información, consulte Build and release agents, Deploy an agent on Windows (Implementar un agente en Windows) y Agent pools (Implementar un agente en Windows) y Grupos de agentes.

P: ¿Dónde puedo encontrar documentación detallada sobre cómo ejecutar pruebas de Selenium?

Un: Consulte Introducción a las pruebas de Selenium.

P: ¿Qué ocurre si selecciono varias configuraciones para la misma prueba?

R: Actualmente, el flujo de trabajo a petición no es compatible con la configuración.

P: ¿Qué ocurre si necesito descargar archivos binarios de productos y probar archivos binarios de diferentes compilaciones? ¿O si necesito obtener artefactos de un origen como Jenkins?

Un: La funcionalidad actual está optimizada para que una única compilación de equipo se pruebe a petición mediante un flujo de trabajo de Azure Pipelines. Se evalúa la compatibilidad con versiones de varios artefactos, incluidos artefactos que no son de Azure Pipelines, como Jenkins, en función de los comentarios del usuario.

P: Ya tengo una canalización de versión de prueba programada. ¿Puedo reutilizar la misma canalización para ejecutar pruebas a petición o debo crear una nueva canalización?

Un: Se recomienda usar una canalización de versión independiente y una fase para las pruebas automatizadas a petición de Azure Test Plans porque:

  • Es posible que no quiera implementar la aplicación cada vez que quiera ejecutar algunas pruebas a petición. Normalmente, las fases de pruebas programadas se configuran para implementar el producto y, a continuación, ejecutar pruebas.

  • Las nuevas versiones se desencadenan para cada ejecución a petición. Si tiene muchos evaluadores que ejecutan algunas ejecuciones de pruebas a petición todos los días, la canalización de versión de prueba programada podría sobrecargarse con versiones para estas ejecuciones, lo que dificulta la búsqueda de versiones que se desencadenan para la canalización que contiene pruebas programadas e implementación en producción.

  • Es posible que desee configurar la tarea Prueba de Visual Studio con un identificador de ejecución de prueba como entrada para que pueda realizar un seguimiento de lo que desencadenó la versión. Para obtener más información, vea ¿Cómo se selecciona "Ejecución de pruebas (para ejecuciones a petición)" en el trabajo de la tarea Prueba de Visual Studio.

P: ¿Puedo desencadenar estas ejecuciones y ver los resultados en Microsoft Test Manager?

R: No. Microsoft Test Manager no admite la ejecución de pruebas automatizadas en compilaciones de Team Foundation. Solo funciona en la interfaz basada en web para Azure Pipelines. Todas las nuevas inversiones manuales y automatizadas en desarrollo de productos se encuentran en la interfaz basada en web. No se planea ningún desarrollo adicional para Microsoft Test Manager. Consulte Instrucciones sobre el uso de Microsoft Test Manager.

P: Tengo varios evaluadores en mi equipo. ¿Pueden ejecutar pruebas de diferentes conjuntos de pruebas o planes de prueba en paralelo mediante la misma canalización de versión?

Un: Pueden usar la misma canalización de versión para desencadenar varias ejecuciones de pruebas en paralelo si:

  • El grupo de agentes asociado a la fase tiene suficientes agentes para atender las solicitudes paralelas. Si no hay suficientes agentes disponibles, las ejecuciones se pueden desencadenar, pero se libera la cola para su procesamiento hasta que los agentes estén disponibles.

  • Tiene suficientes trabajos para habilitar trabajos paralelos. Para más información, consulte Trabajos paralelos en Azure Pipelines o trabajos paralelos en TFS.

  • Los evaluadores no ejecutan las mismas pruebas en paralelo. Si lo hace, los resultados se sobrescriben en función del orden de ejecución.

Para habilitar varias ejecuciones de prueba diferentes para que se ejecuten en paralelo, establezca la opción de desencadenador de fase de Azure Pipelines para el comportamiento cuando hay varias versiones en espera de implementarse de la siguiente manera:

  • Si la aplicación admite pruebas que se ejecutan en paralelo desde orígenes diferentes, establezca esta opción en Permitir que se implementen varias versiones al mismo tiempo.

  • Si la aplicación no admite pruebas que se ejecutan en paralelo desde orígenes diferentes, establezca esta opción en Permitir solo una implementación activa a la vez.

P: ¿Cómo pasar parámetros al código de prueba desde una canalización de compilación o versión?

R: Use un archivo runsettings para pasar valores como parámetros al código de prueba. Por ejemplo, en una versión que contiene varias fases, puede pasar la dirección URL de la aplicación adecuada a cada una de las tareas de prueba de cada una. El archivo runsettings y los parámetros coincidentes deben especificarse en la tarea Prueba de Visual Studio.

Captura de pantalla que muestra cómo pasar parámetros para probar el código desde una canalización de compilación o versión.

P: ¿Cuáles son los problemas o escenarios de error típicos que debo buscar si no se ejecutan mis pruebas?

Un: Compruebe y resuelva los problemas de la siguiente manera:

  • La canalización de versión y la fase en la que quiero ejecutar pruebas no se muestran después de seleccionar la compilación.

    • Asegúrese de que la canalización de compilación que genera la compilación esté vinculada como artefacto principal en la pestaña Artefactos de la canalización de versión.

  • Obtengo un error que no tengo permiso suficiente para desencadenar una versión.

    • Configure Los permisos Crear versiones y Administrar implementaciones para el usuario en el menú Seguridad de la canalización de versión. Consulte Permisos de versión.

  • Obtengo un error que no se encontró ninguna prueba automatizada.

    • Compruebe el estado de automatización de las pruebas seleccionadas. Hágalo en el elemento de trabajo del caso de prueba o use el vínculo Opciones de columna de Azure Test Plans para agregar la columna estado de Automation a la lista de pruebas. Para obtener más información, consulte la sección requisitos previos.
  • Mis pruebas no se ejecutaron y sospecho que la canalización de versión es incorrecta.

    • Use el vínculo de la página Resumen de ejecución para acceder a la instancia de versión usada para ejecutar las pruebas y ver los registros de versión.

  • Mis pruebas entran en el estado de error o permanecen "en curso" incluso después de que se desencadene la versión en la fase.

    • Compruebe si la fase de lanzamiento seleccionada tiene seleccionada la tarea y la versión correctas. Debe usar la versión 2 o posterior de la tarea Prueba de Visual Studio . No se admite la versión 1 de la tarea y la tarea Ejecutar pruebas funcionales.