Ejecutar pruebas en el proceso de compilación
Se puede utilizar Team Foundation Build para ejecutar pruebas automatizadas y analizar el impacto de los cambios de código en las pruebas como parte de su proceso de compilación.Por ejemplo, puede definir un proceso de compilación que sirva como prueba de comprobación de la compilación programada regularmente por el equipo.También se pueden ejecutar pruebas automatizadas y realizar tareas relacionadas con pruebas desde los procesos de compilación personalizados.
[!NOTA]
Si se desea implementar la aplicación como parte del proceso de compilación, se debe utilizar un flujo de trabajo compilación-implementación-pruebas y un entorno de laboratorio.Después se pueden ejecutar pruebas automatizadas como parte del flujo de trabajo, o se pueden ejecutar pruebas individualmente después de que se haya completado el flujo de trabajo.Para obtener más información, vea Configurar flujos de trabajo automatizados de compilación-implementación-prueba.
En este tema
Preparar la ejecución de las pruebas en el proceso de compilación
Permisos necesarios
Utilice una ejecución de pruebas para ejecutar pruebas automatizadas
Elija y configure un ejecutor de pruebas
Utilice el ejecutor de Visual Studio para ejecutar pruebas
Utilice MSTest para ejecutar pruebas
Deshabilitar pruebas temporalmente
Habilitar el análisis de impacto de las pruebas
Configure un marco de pruebas unitarias de Terceros
Ejecute pruebas desde un proceso de compilación personalizado
Para obtener más información
Prepare la ejecución de las pruebas en el proceso de compilación
Antes de ejecutar pruebas en el proceso de compilación, puede ser necesario primero preparar las pruebas y el sistema de compilación.
Prepare las pruebas: Asegúrese de que la solución y los archivos de prueba están protegidos en el control de versiones.Vea Uso del control de versiones.
Categorizar y priorizar sus pruebas (Opcional): Se pueden asignar categorías y prioridades a las pruebas y después filtrar esos atributos al ejecutarlos en su compilación.Por ejemplo, puede crear una categoría de pruebas llamada CI y, a continuación, especificar esa categoría en las compilaciones de integración continuas.Puede crear otra categoría para las pruebas de comprobación de la compilación denominada bvt y, a continuación, especificar esa categoría en compilaciones programadas, por ejemplo, en una compilación nocturna.Para obtener más información, vea Definir categorías de listas para agrupar las pruebas, TestCategoryAttribute y PriorityAttribute.
Preparar a El compilar el servidor: Algunos tipos de pruebas se pueden ejecutar únicamente por un agente de compilación en un servidor de compilación especialmente configurada.Por ejemplo, si ejecuta pruebas de IU codificadas, debe configurar el agente para ejecutar interactivamente.Antes de utilizar el proceso de compilación para ejecutar las pruebas, asegúrese de que pueden ejecutarse en el servidor de compilación que piensa utilizar.Para obtener más información, vea Permite al agente de compilación para ejecutar pruebas.
Microsoft Visual Studio se requiere estar instalado en el servidor de compilación para los escenarios siguientes:
Para compilar un proyecto de prueba de CPP, debe instalar Visual Studio Professional o posterior.
Para ejecutar pruebas unitarias, o pruebas de IU codificadas, debe instalar Visual Studio Professional o posterior.
Para utilizar datos y adaptadores de datos de diagnóstico:
Cobertura de código: Visual Studio Premium o posterior.
Impacto de pruebas: Visual Studio Ultimate.
IntelliTrace: Visual Studio Ultimate.
Para compilar las aplicaciones modernas de estilo en un equipo de compilación: Visual Studio Ultimate o Visual Studio Express para Windows 8 (el sistema operativo en el servidor compilado debe ser Windows 8).
Para compilar y ejecutar pruebas para un proyecto con un ensamblado false: Visual Studio Ultimate.
Permisos necesarios
Para realizar estos procedimientos, debe tener establecido el permiso Editar definición de compilación en Permitir.Para obtener más información, vea Permisos de Team Foundation Server.
Ejecutar pruebas automatizadas
Puede realizar una o varias ejecuciones de pruebas en la compilación que se basa en la plantilla predeterminada.Para cada ejecución, se pueden especificar los siguientes valores:
Qué pruebas se han ejecutado
Qué valores se van a usar para ejecutar las pruebas
Si la compilación se va a suspender en caso de que se produzca un error en alguna prueba
Para ejecutar pruebas automatizadas en un proceso de compilación basado en la plantilla predeterminada
En la barra de menús, seleccione Vista, Team Explorer.
En Team Explorer, elija Inicio, y luego elija Compilaciones.
En la página Compilaciones , elija Definición de nueva compilación o abra el acceso directo de la compilación o la definición de compilación que eligió y elija Editar definición de compilación.
Aparecerá la ventana de definición de nueva compilación.
En la pestaña Proceso de la definición de compilación, expanda el nodo Basic.
Active la casilla Pruebas automatizadas, y después elija el botón de puntos suspensivos (...).
Aparece el cuadro de diálogo Pruebas automatizadas.
Realice uno de estos pasos:
Para agregar un conjunto de pruebas, elija Agregar.
Para modificar un conjunto de pruebas, elíjalo y después elija Editar.
Aparece el cuadro Agregar o editar prueba.
(Opcional) Especifique el Nombre de la ejecución de pruebas.Este nombre aparece en la ventana de resultados de compilación.Si no se especifica un nombre, el sistema automáticamente lo genera.
Si se desea que la compilación falle en caso de que cualquiera de las pruebas falle, elija Suspender compilación tras error de pruebas.Si deja esta casilla desactivada y se producen errores en alguna prueba, la compilación completada se clasificará como Completada parcialmente.
Elija un ejecutor de pruebas.Especifique cómo el ejecutor de pruebas funcionará con las opciones que aparecen.Para obtener más información, consulte Elegir y configurar un ejecutor de pruebas.
Elija y configure un ejecutor de pruebas
Cuando se defina el proceso de compilación, elija un ejecutor de pruebas que proporcione la funcionalidad que se necesita.
Función |
Ejecutor de pruebas de Visual Studio |
MSTest |
---|---|---|
Pruebas unitarias escritas en el marco Microsoft.VisualStudio.TestTools.UnitTesting . |
Sí |
Sí |
Ejecute pruebas de interfaz de usuario codificadas, genéricas y por orden |
Sí |
Sí |
Recopile datos de cobertura de código |
Sí |
Sí |
Ejecute pruebas unitarias escritas en varios marcos como NUnit, xUnit y otros. |
Sí |
No |
Ejecute pruebas unitarias en binarios nativos (por ejemplo, C++). |
Sí |
No |
Ejecute pruebas unitarias en una aplicación Tienda Windows . |
Sí |
No |
Ejecute pruebas de 64 bits
Nota
MSTest puede ejecutar pruebas de 64 bits en los binarios compilados con Cualquier CPU especificada como Plataforma.
|
Sí |
No |
Ejecute pruebas que dependen de objetos de framework falsos. Para obtener más información sobre cómo utilizar el framework de pruebas de falsificaciones para crear las pruebas basadas en delegados de talones y láminas de ajuste en las aplicaciones de .NET Framework, consulte Aislar métodos de prueba unitaria con Microsoft Fakes. |
Sí |
No |
Genere datos de prueba de bases de datos y pruebas unitarias de bases de datos de ejecución |
No |
Sí |
Recopile datos de análisis de impacto de pruebas |
No |
Sí |
Ejecute pruebas de carga y de web |
No |
Sí |
[!NOTA]
Algunas de estas funciones solo funcionan en un agente de compilación en un servidor de compilación especialmente configurada.Para obtener más información, vea Permite al agente de compilación para ejecutar pruebas.
Una vez que comprenda las capacidades que la ejecución de pruebas requiere, elija un ejecutor de pruebas:
Ejecutor de pruebas de Visual Studio
MSTest con el archivo de configuración de pruebas
MSTest con el archivo de metadatos
Utilice el ejecutor de Visual Studio para ejecutar pruebas
Para utilizar Visual Studio ejecutor para ejecutar pruebas desde un proceso de compilación basado en la plantilla predeterminada
En el Explorador de equipos, abra Compilaciones y agregue o modifique una definición de compilación.
En la página Proceso , expanda Básica y seleccione Pruebas automatizadas.Elija los puntos suspensivos (...) del final de la línea y después elija a Add o a Modificar un origen de la prueba.
En el cuadro de diálogo Agregar/Editar ejecución de pruebas , en Ejecutor de pruebas seleccione Ejecutor de pruebas de Visual Studio.
Especificación del archivo de ensamblado de pruebas
Especifique los archivos binarios que contienen las pruebas que se desean ejecutar.Deje el valor predeterminado (**\*test*.dll) si desea que el agente de compilación busque recursivamente cualquier archivo .dll que coincida con *test*.dll en el subdirectorio binaries del directorio de trabajo del agente de compilación.Si lo desea, también puede modificar la especificación del archivo para que se ajuste a sus necesidades.
Si se desea que la ejecución de pruebas recopile y publique datos de cobertura de código, establezca Opciones en Habilitar cobertura de código.
Como alternativa, se puede utilizar la opción Personalizar para especificar un archivo .runsettings.Para obtener más información, vea Personalizar el análisis de cobertura de código.
Desde el menú Seleccione plataforma de destino para la ejecución de pruebas , elija x86 para probar los binarios de 32 bits, o x64 para probar los binarios de 64 bits.
Se pueden especificar los criterios de las pruebas que se ejecutan.
Especifique los criterios para la ejecución de pruebas por el ejecutor de Visual Studio
Se pueden especificar pares de nombre/valor para filtrar las pruebas que se ejecutan.Si se utilizan atributos de prioridad y categoría de pruebas para organizar y asignar prioridades a las pruebas, se pueden filtrar las pruebas que se están ejecutando mediante los nombres TestCategory y Priority.
Puede especificar categorías de pruebas en uno de los siguientes formatos:
Especifique un único par nombre/valor a incluir. Por ejemplo, tiene una categoría de pruebas denominada bvt.Establezca Filtro de casos de prueba a TestCategory=bvt sólo para ejecutar pruebas en esta categoría.
Especifique varias categorías de pruebas usando || (operador "o"). Por ejemplo, se puede especificar TestCategory=quick||TestCategory=gui para ejecutar pruebas en la categoría rápida y pruebas de la categoría de GUI.
Usar MSTest para ejecutar pruebas
Para ejecutar pruebas utilizando MSTest en un proceso de compilación basado en la plantilla predeterminada
Utilice una ejecución de pruebas para ejecutar pruebas automatizadas y realizar otras tareas de pruebay, en el cuadro de diálogo Agregar/editar ejecución de pruebas , en Ejecutor de pruebas elija:
Ejecutor MSTest.exe
Especifique los archivos binarios que contienen las pruebas que se desean ejecutar.Deje el valor predeterminado (**\*test*.dll) si desea que el agente de compilación busque recursivamente cualquier archivo .dll que coincida con *test*.dll en el subdirectorio binaries del directorio de trabajo del agente de compilación.Si lo desea, también puede modificar la especificación del archivo para que se ajuste a sus necesidades.
(Opcional) Especifique un Archivo de configuración de pruebas para definir el modo en que se van a ejecutar las pruebas.Para obtener más información, vea Especificar la configuración para las pruebas de Visual Studio.
Archivo de metadatos de MsTest (en desuso)
Si se elige esta opción, haga clic en Examinar para buscar y especificar el archivo de metadatos que se desea usar.Puede dejar activada la casilla Ejecutar todas las pruebas en este archivo VSMDI o desactivarla y seleccionar una o varias pruebas de la Lista de pruebas que se ejecutarán.
[!NOTA]
Se han dejado de utilizar listas de pruebas.Para obtener más información, vea Definir categorías de listas para agrupar las pruebas.
Elija la pestaña Criterios/Argumentos .
Se pueden filtrar las pruebas para ejecutarlas por categoría.
Puede especificar categorías de pruebas en uno de los siguientes formatos:
Especificar una única categoría de pruebas de inclusión o exclusión. Por ejemplo, tiene una categoría de pruebas denominada bvt.Establecerá este parámetro en bvt para ejecutar únicamente las pruebas en esta categoría o !bvt para ejecutar todas las pruebas excepto las pruebas de esta categoría.
Especifique varias categorías de pruebas usando el & (operador "y") y el ! (operador "no"). Por ejemplo, se puede especificar quick&&gui&&!deep para ejecutar únicamente las pruebas que forman parte de las categorías "quick" y "gui" pero no las que forman parte de la categoría "deep".
Especificar varias categorías de pruebas usando | (operador "o") y ! (operador "not"). Por ejemplo, puede especificar quick|gui|!deep para ejecutar únicamente las pruebas que forman parte de las categorías "quick" y "gui" y las que no forman parte de la categoría "deep".
(Opcional) Filtre las pruebas para ejecutarlas por prioridad.
Sugerencia Si asigna prioridades a las pruebas, use este parámetro para equilibrar mejor las pruebas y la rapidez de las compilaciones.
Establezca Prioridad de prueba mínima en un entero positivo que sea igual o menor que Prioridad de prueba máxima o en -1 para no indicar ningún valor mínimo.
Establezca Prioridad de prueba máxima en un entero positivo que sea igual o mayor que Prioridad de prueba mínima o en -1 para no indicar ningún valor máximo.
Elija Aceptar.
Deshabilite pruebas temporalmente
Si se necesita deshabilitar pruebas temporalmente sin eliminar los conjuntos de pruebas que los contienen, expanda el nodo Avanzadas y establezca Deshabilitar pruebas en TRUE.Establezca el valor de nuevo en False cuando desee volver a habilitar las pruebas.
Habilite el análisis de impacto de pruebas
Es posible que los evaluadores y los desarrolladores necesiten conocer de qué modo los cambios implicados en una compilación completada han afectado a las pruebas.Al habilitar el análisis de impacto de las pruebas en una compilación, el sistema analiza e indica en el informe de la compilación completada de qué modo han afectado a las pruebas los cambios de código.
Para habilitar el análisis de impacto de pruebas en un proceso de compilación basado en la plantilla predeterminada
Configure el análisis de impacto de las pruebas en un archivo de configuración de pruebas.
Para obtener más información, vea Cómo: Recopilar datos para comprobar qué pruebas se deben ejecutar después de realizar cambios en el código.
Cree una ejecución de pruebas que esté configurada de forma que use el archivo de configuración de pruebas.
Para obtener más información, vea Ejecutar pruebas automatizadas más arriba en este tema.
Expanda el nodo Advanced y asegúrese de que Analyze Test Impact está establecido en True y Disable Tests está establecido en False.
Defina las múltiple ejecuciones de pruebas
Se pueden configurar tantas ejecuciones de pruebas como se necesiten para satisfacer los requisitos de compilación y el proceso de prueba del equipo.Por ejemplo, es posible que se necesiten configurar varias ejecuciones de pruebas en una única compilación en los siguientes escenarios:
Se desea utilizar el ejecutor de pruebas de Visual Studio para probar una solución que genere binarios con 32 y valores de bits de 64 bits.
Se tienen algunas pruebas que se pueden ejecutar por el Ejecutor de pruebas de Visual Studio y otras pruebas que se pueden ejecutar únicamente por MSTest.
Tiene dos conjuntos de pruebas:
Un conjunto de pruebas básicas de alta prioridad que deben pasarse correctamente.Se define un conjunto de pruebas que incluyan una Prioridad de prueba mínima y una Prioridad de prueba máxima de 1.Activa la casilla Suspender compilación tras error de pruebas.
Un conjunto de pruebas menos importantes que desea ejecutar, pero que no es necesario superar correctamente para que la compilación pueda usarse.Se define un conjunto de pruebas que incluyen una Prioridad de prueba mínima de 2 y una Prioridad de prueba máxima de 3.Deja la casilla Suspender compilación tras error de pruebas desactivada.
Desea ejecutar el mismo conjunto de pruebas con configuraciones distintas.
Desea que el conjunto principal de ensamblados que va a compilar esté sujeto a la cobertura de código.Sin embargo, tiene otro conjunto de ensamblados de un origen externo que no requieren la cobertura de código.Para habilitar este tipo de proceso, se pueden usar dos ejecuciones de pruebas que estén configuradas de modo que usen dos conjuntos de archivos de configuraciones de pruebas.
Habilitar un marco de pruebas unitarias de Tercero- entidad en un controlador de compilación
El proceso de compilación puede ejecutar las pruebas unitarias basadas en marcos de terceros de la prueba unitaria sólo si ha proporcionado del controlador de compilación acceso a ensamblados de terceros del marco.
Obtenga un complemento de otro fabricante de prueba unitaria.Puede encontrar vínculos a algunos de ellos aquí: Lista de los complementos de prueba unitaria.
Cambie el nombre del archivo de complemento .vsix a un archivo .zip.Por ejemplo, utilice el símbolo del sistema como ésta:
C:\Downloads>ren NUnitTestAdapter.vsix NUnitTestAdapter.zip
Descomprima el contenido del archivo .zip en la carpeta del área de trabajo local que asignó en el paso 2.
-
Sugerencia Para que las estrategias ejecutan los archivos binarios de terceros en control de versiones, vea Binarios de terceros de la aprovechan que el código no compila.
[Visual Studio 2012,1] incluye un aumento para que los marcos de pruebas de otro fabricante unitaria automatizan su inclusión en definiciones de compilación de equipo.
Precaución |
---|
Puede que tenga que instalar la versión más reciente de los paquetes de NuGet para que el marco de pruebas unitarias 3rd-party asegure el marco incluye el aumento de la definición de compilación. |
Habilitar un marco de pruebas unitarias de Tercero- entidad en un controlador de compilación - [Visual Studio 2012,1]
En el explorador de soluciones, abra el menú contextual del proyecto de prueba y elija Administrar los paquetes de NuGet.
En el cuadro de diálogo de los paquetes de NuGet de administrar, en la columna izquierda, elija En línea.
Seleccione el paquete de NuGet para el marco de pruebas de otro fabricante unitaria y elija Instalar.
Después de que el paquete de NuGet es el instalar finalizado, elija Cerrar.
En el explorador de soluciones, abra el menú contextual en la solución y elija Agregar solución al control de código fuente.
Ahora puede cola la compilación y las pruebas con el marco de pruebas de otro fabricante unitaria se ejecutarán automáticamente.
Trabajar con pruebas en un proceso de compilación personalizado
Si el equipo requiere un proceso de compilación con funciones personalizadas en mayor profundidad, se pueden ejecutar pruebas y realizar otras tareas relacionadas a pruebas dentro del proceso de compilación personalizado.Para obtener más información, vea:
Para obtener más información
Definir un proceso de compilación basado en la plantilla predeterminada proporciona más información sobre cómo crear una definición de compilación basada en la plantilla predeterminada.Este tema incluye información sobre valores de bits Plataforma que se pueden utilizar para compilar el código.
Guía para flujos de trabajo de compilación-implementación-prueba proporciona información sobre cómo implementar una aplicación y ejecutar pruebas en un entorno de laboratorio mediante el proceso de compilación.
Ejecutar pruebas en Microsoft Test Manager proporciona más información sobre cómo ejecutar pruebas.