Partekatu honen bidez:


Ejecutar pruebas automatizadas desde planes de prueba

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

Automatice los casos de prueba en el test plans 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 cuando tiene una nueva compilación que incluye correcciones para las pruebas con errores.

Requisitos previos

Categoría Requisitos
Niveles de acceso - Al menos Basic access, con permisos para ver los elementos de trabajo en la ruta de área correspondiente.
- Para agregar planes de prueba y conjuntos de pruebas, eliminar artefactos de prueba y definir configuraciones de prueba: Acceso Basic + Test Plans.
O bien, uno de los siguientes Visual Studio subscriptions:
- Empresa
- Test Professional
- Plataformas MSDN
Permisos - Para agregar o modificar planes de prueba, suites de prueba, casos de prueba u otros tipos de elementos de trabajo basados en pruebas: El permiso Editar elementos de trabajo en este nodo debe estar establecido en Permitir en la correspondiente Ruta de área.
- Para modificar las propiedades del plan de pruebas, como la configuración de compilación y de pruebas: Administrar planes de prueba permiso establecido en Permitir en el Área de ruta de acceso correspondiente.
- Para crear y eliminar conjuntos de pruebas, agregar y quitar casos de prueba de los conjuntos de pruebas, cambiar las configuraciones de prueba asociadas y modificar la jerarquía de un conjunto de pruebas (mover un conjunto de pruebas): establezca el permiso de administración de conjuntos de pruebas en Permitir en la Ruta de Área correspondiente.
- Permisos para crear y administrar versiones, editar un entorno de versión y administrar la implementación. Para obtener más información, consulte los permisos de lanzamiento
Herramientas y configuraciones - Un plan test que contiene las pruebas automatizadas asociadas a métodos de prueba automatizados mediante Visual Studio 2017 o Visual Studio 2015 o versiones anteriores.
- Una canalización build que genera compilaciones que contienen los archivos binarios de prueba.
- Una aplicación que se va a probar. Puede implementar la aplicación como parte del flujo de trabajo de compilación y publicación y usarla también para las pruebas a petición.

Configurar el entorno

  1. En Test Plans, elija el plan de pruebas, abra el menú contextual y, a continuación, seleccione Configuración del plan De prueba.

    La captura de pantalla muestra la selección de la 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. Se admiten las pipelines de compilación tanto clásica como YAML. A continuación, puede seleccionar un número de compilación específico para probarlo o permitir que el sistema use automáticamente la compilación más reciente cuando se ejecuten las pruebas.

    La captura de pantalla muestra la selección de la compilación y el número de compilación.
  3. Para ejecutar pruebas desde los planes de prueba en Azure Test Plans, necesita una canalización de lanzamiento que se creó a partir de la plantilla Ejecutar pruebas automáticas desde el Administrador de Pruebas. 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. Se admiten los canales de lanzamiento clásicos y los pipelines YAML. 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 Visual Studio Test ya agregada.

    La captura de pantalla muestra la selección de una pipeline de lanzamiento o la creación de una nueva.

    ¿Cómo paso parámetros a mi código de prueba desde un flujo de trabajo de compilación o despliegue?

  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 Visual Studio Test Platform Installer a la definición de canalización.

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

    • Compruebe que usa la versión 3 de la tarea prueba de Visual Studio.

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

    • En vsTestVersion, seleccione herramientasInstalar.

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

    • Si está ejecutando pruebas de interfaz de usuario en un navegador sin interfaz gráfica, no es necesaria 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 Publish build artifacts en el pipeline de compilación para publicar el archivo de configuración en una ubicación de despliegue si el archivo no está incluido 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 almacenamiento provisional mediante la configuración Invalidar parámetros de ejecución de pruebas .

    La captura de pantalla muestra la comprobación de la configuración del número de versión de la tarea.

    Para obtener información sobre la configuración de opciones de la tarea Visual Studio Test, vea Visual Studio Test task.

  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 sus pruebas requieren máquinas especiales del grupo de agentes, puede agregar demandas que se seleccionen en tiempo de ejecución.

    Es posible que pueda minimizar los tiempos de prueba distribuyendo las pruebas entre varios agentes configurando Paralelismo en Múltiples ejecuciones y especificando el número de agentes.

    Nota

    Si está ejecutando pruebas de UI como Coded UI o Selenium en navegadores web 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 Pipeline de la pipeline de lanzamiento, compruebe que la pipeline de compilación que contiene los binarios de prueba se vincula a esta pipeline de lanzamiento como fuente de artefactos.

    La captura de pantalla muestra la verificación de los artefactos de construcción vinculados.

  9. Guarde el canal de lanzamiento.

  10. Si eligió Crear nuevo en el cuadro de diálogo Configuración del plan de prueba, 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 lanzamiento y la etapa que guardó.

    La captura de pantalla muestra la selección de la pipeline de lanzamiento y la etapa.

Ejecución de las pruebas automatizadas

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

  2. Seleccione los casos de prueba que desea ejecutar y, a continuación, seleccione Ejecutar para la aplicación web.

    La captura de pantalla muestra la selección de Ejecutar prueba.

    Los artefactos de compilación generados por el pipeline de compilación deben incluir los archivos binarios de prueba para estas pruebas.

  3. El sistema comprueba que solo ha seleccionado pruebas automatizadas y omite las pruebas manuales. Valida la fase para asegurarse de que la tarea de prueba de Visual Studio esté presente y tenga una configuración válida, comprueba el permiso para crear una versión en la canalización de versión seleccionada, crea una ejecución de prueba y, después, desencadena la creación de una versión en la fase seleccionada.

    La captura de pantalla muestra el inicio de la ejecución de la prueba.
  4. Seleccione Ver ejecución de prueba para ver el progreso de la prueba y analizar las pruebas fallidas. Los resultados de las pruebas incluyen información relevante para depurar pruebas fallidas, como el mensaje de error, el rastreo de la pila, los registros de consola y los archivos adjuntos.

  5. Una vez completada la ejecución de la prueba, la página Runs de la 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.

    La captura de pantalla muestra el resumen de la ejecución de la prueba.

    El vínculo Versión facilita la búsqueda de la versión que ejecutó las pruebas si necesita volver más adelante y analizar los resultados. También puede usar este vínculo para abrir la versión y ver los registros de la versión.

Nota

No es compatible adjuntar manualmente 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.

    La captura de pantalla muestra los detalles de los resultados de la prueba.

  2. En Test Plans, vaya a la página Runs donde puede encontrar información general de todas las ejecuciones de pruebas. Desde aquí, puede abrir la vista detallada de cada ejecución de prueba.

    La captura de pantalla muestra el plan de pruebas.

Preguntas más frecuentes

Consulte las siguientes preguntas más frecuentes sobre Azure Test Plans.

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

A: Ser colaborador de Project 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, vea Release permissions.

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?

R: Sí, puede invalidar la compilación o fase establecida en el nivel de plan de prueba. Use el comando Ejecutar con opciones . Abra el menú contextual del conjunto de pruebas en la columna izquierda y seleccione Ejecutar con opciones.

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

Introduzca los siguientes valores en el cuadro de diálogo Ejecutar con opciones y, a continuación, 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.
  • Release Pipeline: Seleccione un pipeline de la lista de release pipelines que pueda consumir el artefacto de compilación seleccionado.
  • Fase de lanzamiento: seleccione el nombre de la fase configurada en la pipeline de lanzamiento.

La captura de pantalla muestra el cuadro de diálogo Ejecutar con opciones configurado.

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

A: Azure Pipelines ofrece un flujo de trabajo de orquestación atractivo para obtener archivos binarios de prueba como artifacts y ejecutar pruebas. Este flujo de trabajo comparte los mismos conceptos que se usan en el flujo de trabajo de pruebas programadas, por lo que los usuarios que ejecutan pruebas en el flujo de trabajo programado lo encuentran fácil de adaptar. Por ejemplo, puede clonar una canalización de lanzamiento de pruebas programadas existente.

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

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 desde las versiones históricas y los identificadores de las ejecuciones de pruebas hasta los ensayos presentados para su ejecución bajo demanda.

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

A: Si ejecuta pruebas de IU como coded UI o Selenium, el agente de las máquinas de prueba debe ejecutarse en modo interactivo con el inicio de sesión automático habilitado, no como servicio, para permitir que el agente inicie un navegador web. Si utiliza un navegador sin interfaz gráfica, como PhantomJS, el agente se puede ejecutar como un servicio o en modo interactivo. Para obtener más información, vea Compilar y liberar agentes, Desplegar un agente en Windows y Pools de agentes.

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

A: Consulte Iniciar con las pruebas de Selenium.

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

R: Actualmente, el flujo de trabajo bajo demanda 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 una fuente como Jenkins?

A: La funcionalidad actual está optimizada para que una sola compilación de equipo se pruebe a petición mediante un flujo de trabajo de Azure Pipelines. La compatibilidad con versiones de múltiples artefactos, incluidos los artefactos que no son de Azure Pipelines, como Jenkins, se evalúa en función de los comentarios de los usuarios.

P: Ya tengo una canalización de versión de prueba programada. ¿Puedo reutilizar el mismo canal para ejecutar pruebas bajo demanda o debo crear uno nuevo?

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

  • Es posible que no desee implementar la aplicación cada vez que desee ejecutar unas pocas pruebas bajo demanda. 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. El gran volumen de versiones dificulta la búsqueda de versiones que se activan en el pipeline que contiene pruebas programadas y despliegue en producción.

  • Es posible que desee configurar la tarea de prueba de Visual Studio con un identificador de ejecución de Test como entrada para que pueda realizar un seguimiento de lo que inició la publicación. Para obtener más información, vea Cómo funciona la selección de "Ejecución de pruebas (para ejecuciones a petición)" en la tarea de 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. Microsoft Test Manager solo funciona en la interfaz basada en web para Azure Pipelines. Todas las nuevas inversiones en desarrollo de productos de pruebas manuales y automatizadas se realizan en la interfaz basada en web. No se planea ningún desarrollo adicional para Microsoft Test Manager. Consulte la guía 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 pipeline de lanzamiento?

R: Pueden utilizar el mismo canal de lanzamiento para activar varias ejecuciones de pruebas en paralelo si:

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

  • Tiene suficientes trabajos para permitir la ejecución de trabajos en paralelo. Para obtener más información, consulte Trabajos en paralelo en Azure Pipelines o Trabajos en paralelo en Azure DevOps Server.

  • Los evaluadores no ejecutan las mismas pruebas en paralelo. Si lo hicieran, los resultados podrían sobrescribirse dependiendo del orden de ejecución.

Para habilitar varias ejecuciones de pruebas diferentes para ejecutarse en paralelo, establezca la opción de desencadenador de fase de Azure Pipelines para behavior cuando hay varias versiones a la 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 su aplicación no admite pruebas que se ejecutan en paralelo desde diferentes fuentes, establezca esta opción en Permitir solo una implementación activa a la vez.

P: ¿Cómo paso parámetros a mi código de prueba desde una canalización de compilación o implementación?

R: Utilice un archivo runsettings para pasar valores como parámetros a su 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 las tareas de prueba de cada fase. Especifique el archivo runsettings y los parámetros coincidentes en la tarea Visual Studio Test.

La captura de pantalla muestra cómo pasar parámetros al código de prueba desde una pipeline de compilación o lanzamiento.

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

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

  • La pipeline de lanzamiento y la etapa en la que quiero ejecutar las 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 Artifacts 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 los permisos de Publicació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 de opciones de columna en Azure Test Plans para agregar la columna de estado de automatización 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.

    • Utilice el vínculo de la página resumen de ejecución para acceder a la instancia de la versión utilizada para ejecutar las pruebas y ver los registros de lanzamiento.

  • 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 Visual Studio Test. La versión 1 de la tarea y la tarea Ejecutar pruebas funcionales no son compatibles.