Compartir a través de


Elegir la carpeta de instrumentación

Si desea recopilar datos de cobertura de código durante una prueba de código en un ensamblado, Visual Studio debe instrumentar primero ese ensamblado. El proceso de instrumentación agrega código al ensamblado que genera datos de cobertura de código.

Puede determinar la carpeta en la que se instrumentan los ensamblados. Visual Studio puede instrumentar los ensamblados en una de estas dos ubicaciones:

  • En contexto. Si selecciona la instrumentación en contexto, Visual Studio instrumenta el ensamblado en la carpeta donde se encuentra antes de que se ejecute la prueba. Si el ensamblado forma parte de una aplicación que se está creando, es la carpeta donde Visual Studio compiló el ensamblado.

  • En la carpeta de implementación. Si opta por no seleccionar la instrumentación en contexto, Visual Studio instrumenta el ensamblado en la carpeta de implementación. Las carpetas de implementación se crean específicamente para las ejecuciones de pruebas. Para obtener más información sobre cómo configurar la implementación de pruebas, vea Cómo: Configurar la implementación de pruebas.

Determinar la carpeta de instrumentación

La elección entre instrumentar el ensamblado en contexto o en la carpeta de implementación depende del nivel de acceso que se tenga al ensamblado y del tipo de ensamblado.

Ensamblados con disponibilidad limitada. Un ensamblado con alguno de los estados siguientes recibe el nombre de ensamblado con disponibilidad limitada en la tabla siguiente:

  • Varias personas comparten el ensamblado. La desventaja de los ensamblados compartidos reside en que pueden haber conflictos entre los distintos usuarios. Esto ocurre, por ejemplo, si dos usuarios inician ejecuciones de pruebas y solicitan además datos de cobertura de código del mismo ensamblado a la vez.

  • El ensamblado está en un recurso compartido de red y no en su equipo local.

  • Tiene acceso de solo lectura al ensamblado.

Ensamblados con una ubicación de carga fija. El motor de ejecución de pruebas puede cargar determinados ensamblados solo desde una ubicación concreta. Este tipo de ensamblados se denominan ensamblados con ubicación de carga fija en la tabla siguiente. Incluyen los siguientes tipos de archivos:

  • Componentes COM

  • Páginas de Panel de control

En la tabla siguiente se proporcionan instrucciones para elegir la carpeta de instrumentación correcta. Vea la columna Notas adicionales para aquellos casos en los que haya que considerar factores especiales.

Ubicación de carga del ensamblado

Disponibilidad del ensamblado

Instrumentar en esta carpeta

Notas adicionales

fixed

no limitada

en contexto

(ninguno)

no fija

limitada

en la carpeta de implementación

(ninguno)

no fija

no limitada

Ambas carpetas funcionan, pero es aconsejable que elija 'en la carpeta de implementación'.

Si, después de elegir la instrumentación en contexto, vuelve a compilar un ensamblado instrumentado durante la ejecución de pruebas, el motor de pruebas detecta que el ensamblado recompilado es más reciente, no restaura su versión preinstrumentada y genera una advertencia de nivel de ejecución.

fixed

limitada

En contexto, pero consulte las notas adicionales

Si no elige la instrumentación en contexto, no se instrumentan los ensamblados de ubicación fija. Esto significa que, aunque la ejecución de la prueba se realice correctamente y no se genere ninguna advertencia de nivel de ejecución, no se recopilarán los datos de cobertura de código.

Especificar la carpeta de instrumentación

Puede elegir entre instrumentar en contexto y en la carpeta de implementación de dos maneras:

  • Para convertir su elección en la configuración predeterminada, vaya al cuadro de diálogo Opciones en el menú Herramientas de Visual Studio. Para encontrar esta opción, busque en la página Ejecución de prueba bajo el nodo Herramientas de prueba.

  • También puede especificar la carpeta de instrumentación para la configuración de pruebas al configurar el adaptador de datos de diagnóstico para la cobertura de código. Para obtener más información, vea Cómo: Configurar la cobertura de código mediante la configuración de pruebas para pruebas automatizadas.

Ensamblados de ubicación fija y disponibilidad limitada

Para modificar el ensamblado que se va a instrumentar en contexto, se deben cumplir los siguientes criterios:

  • El archivo de ensamblado no debe tener definido el atributo de solo lectura. Puede corregir esta configuración si tiene permisos suficientes en el archivo.

  • El usuario que ejecuta la prueba debe tener los privilegios necesarios para modificar los ensamblados. Dado que la aplicación host realiza la instrumentación, la cuenta que necesita estos privilegios es la cuenta bajo la que se ejecuta devenv.exe o MSTest.exe, independientemente de que la ejecución sea local o remota. Esta cuenta pertenece a la persona que ejecuta Visual Studio, que ha ejecutado el comando MSTest.exe o que ha iniciado una generación que, a su vez, ejecuta pruebas.

  • El archivo de ensamblado no debe estar en uso ni bloqueado por otro programa. Si esto ocurre, debe finalizar el programa que está produciendo el bloqueo o esperar a que finalice.

Si el motor de pruebas sigue sin poder instrumentar uno o varios ensamblados, generará una advertencia de nivel de ejecución.

Vea también

Tareas

Cómo: Configurar la implementación de pruebas

Conceptos

Instrumentar y volver a firmar ensamblados

Otros recursos

Crear una configuración de pruebas para ejecutar pruebas automatizadas desde Visual Studio

Crear una configuración de pruebas para pruebas automatizadas como parte de un plan de pruebas

Configurar la cobertura de código