Compartir a través de


Configurar pruebas unitarias usando un archivo .runsettings

Las pruebas unitarias en Visual Studio 2012 se pueden configurar utilizando un archivo de .runsettings.Por ejemplo, puede cambiar .NET Framework en las que se ejecutarán las pruebas, el directorio donde se envían los resultados de pruebas, y los datos recopilados durante una ejecución de pruebas.

[!NOTA]

.runsettings y .testsettings

.runsettings es nuevo en Visual Studio 2012.Si está familiarizado con pruebas unitarias en versiones anteriores de Visual Studio, es posible que pueda sobre los archivos de .testsettings.Todavía puede utilizar .testsettings en Visual Studio 2012, por lo que cualquier configuración de pruebas que escribió para las ediciones anteriores funcionará.Pero .testsettings se puede utilizar para configurar solo las pruebas creadas para el adaptador MSTest.Por el contrario, .runsettings se puede utilizar con los adaptadores cualquiera de los compilados para el marco extensible de pruebas unitarias en Visual Studio 2012, como xUnit.red y NUnit.

Las pruebas que utilizan archivos de .testsettings podrían ejecutarse más despacio que pruebas que utilizan archivos de .runsettings, o para los que no es ningún archivo de configuración en absoluto.

Es necesario un archivo de .testsettings para algunos tipos de pruebas:

  • Pruebas que se implementan en un entorno de laboratorio.

  • Rendimiento web y pruebas de carga.

  • Personalizar algunos tipos de adaptadores de datos de diagnóstico, como IntelliTrace y registro de eventos.

Para obtener más información sobre .testsettings, vea Especificar la configuración para las pruebas de Visual Studio.

Personalizar pruebas con un archivo de .runsettings

  1. Agregue un archivo XML a la solución de Visual Studio y cambie su nombre para que la extensión de archivo es .runsettings.

  2. Reemplace el contenido del archivo con ejemplo.

    Modifíquelo el propio necesita.

  3. En el menú prueba, elija configuración de pruebas, Seleccionar archivo de configuración de pruebas.

Puede crear más de un archivo de .runsettings en la solución, y los habilita o deshabilita en momentos diferentes mediante el menú configuración de pruebas.

Habilitar un archivo de parámetros de ejecución

Copie este archivo de ejemplo .runsettings

A continuación se muestra un archivo típico de .runsettings.Cada elemento del archivo es opcional, porque cada valor tiene un valor predeterminado.

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <!-- Configurations that affect the Test Framework -->
  <RunConfiguration>
    <!-- Path relative to solution directory -->
    <ResultsDirectory>.\TestResults</ResultsDirectory>

    <!-- [x86] | x64  
      - You can also change it from menu Test, Test Settings, Default Processor Architecture -->
    <TargetPlatform>x86</TargetPlatform>

    <!-- Framework35 | [Framework40] | Framework45 -->
    <TargetFrameworkVersion>Framework40</TargetFrameworkVersion>
  </RunConfiguration>
  
  <!-- Configurations for data collectors -->
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
        <Configuration>
          <CodeCoverage>
            <ModulePaths>
              <Exclude>
                <ModulePath>.*CPPUnitTestFramework.*</ModulePath>
              </Exclude>
            </ModulePaths>
          </CodeCoverage>
        </Configuration>
      </DataCollector>
      
    </DataCollectors>
  </DataCollectionRunSettings>
  
  <!-- Adapter Specific sections -->
  
  <!-- MSTest adapter -->
  <MSTest>
    <MapInconclusiveToFailed>True</MapInconclusiveToFailed>
    <CaptureTraceOutput>false</CaptureTraceOutput>
    <DeleteDeploymentDirectoryAfterTestRunIsComplete>False</DeleteDeploymentDirectoryAfterTestRunIsComplete>
    <DeploymentEnabled>False</DeploymentEnabled>
  </MSTest>
  
  
</RunSettings>

El resto de este tema se describe el contenido del archivo.

Edite el archivo de .runsettings

El archivo de .runsettings tiene los elementos siguientes.

JJ635153.collapse_all(es-es,VS.110).gifConfiguración de pruebas

Nodo

Default

Valores

ResultsDirectory

El directorio donde los resultados de pruebas se colocarán.

TargetFrameworkVersion

Framework40

Framework35, Framework40, Framework45

Especifica qué versión del marco de pruebas unitarias se utiliza para detectar y ejecutar las pruebas.Puede ser diferente de la versión de la plataforma.NET que se especifica en las propiedades de compilación del proyecto de prueba unitaria.

TargetPlatform

x86

x86, x64

TreatTestAdapterErrorsAsWarnings

false

false, true

JJ635153.collapse_all(es-es,VS.110).gifAdaptadores de datos de diagnóstico (recopiladores de datos)

El elemento de DataCollectors especifica los valores de los adaptadores de datos de diagnóstico.Los adaptadores de datos de diagnóstico se utilizan para recopilar información adicional sobre el entorno y la aplicación en pruebas.Cada adaptador tiene configuraciones predeterminadas, y tiene que proporcionar sólo valores si no desea utilizar los valores predeterminados.

JJ635153.collapse_all(es-es,VS.110).gifAdaptador de cobertura de código

El recopilador de datos de cobertura de código crea un registro de las partes del código de aplicación se han utilizado en la prueba.Para obtener más información sobre cómo personalizar los valores para la cobertura de código, vea Personalizar el análisis de cobertura de código.

JJ635153.collapse_all(es-es,VS.110).gifOtros adaptadores de datos de diagnóstico

El adaptador de cobertura de código es actualmente el único adaptador que se puede personalizar utilizando el archivo de configuración de ejecución.

Para personalizar cualquier otro tipo de adaptador de datos de diagnóstico, debe utilizar un archivo de configuración de pruebas.Para obtener más información, vea Especificar la configuración para las pruebas de Visual Studio.

JJ635153.collapse_all(es-es,VS.110).gifParámetros de ejecución de MSTest

Estos valores son específicos del adaptador de prueba que ejecuta los métodos de prueba que tienen el atributo de [TestMethod].

Configuración.

Default

Valores

ForcedLegacyMode

false

En Visual Studio 2012, el adaptador MSTest se ha optimizado para que sea más rápido y escalable.Un comportamiento determinado, como el orden en el que se ejecutan las pruebas, podría no estar exactamente igual que estaba en versiones anteriores de Visual Studio.Establezca este valor true para utilizar el adaptador de prueba más antiguo.

Por ejemplo, puede utilizar esto si tiene un archivo app.config especificado para una prueba unitaria.

Se recomienda que considere refactorización las pruebas para permitir que se use el adaptador más reciente.

IgnoreTestImpact

false

La característica de impacto de pruebas asigna prioridades a las pruebas afectadas por los cambios recientes, cuando se ejecuta en MSTest o desde Microsoft test manager.Este valor desactiva la característica.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.

SettingsFile

Puede especificar un archivo de configuración de pruebas para utilizar con el adaptador de prueba de MS aquí.También puede especificar un archivo de configuración de pruebas mediante el menú prueba, configuración de pruebas, Seleccionar archivo de configuración de pruebas.

Si especifica este valor, ForcedlegacyMode se establece automáticamente en true.

KeepExecutorAliveAfterLegacyRun

false

Una vez finalizada la ejecución de pruebas, se cierra MSTest.Cualquier proceso que se inicia como parte de la prueba también se eliminará en este momento.Si desea mantener el ejecutor de pruebas activo, active esta configuración en true.

Por ejemplo, puede utilizar esto para conservar el explorador entre las pruebas de IU codificadas.

DeploymentEnabled

true

Si establece esto en false, los elementos de implementación especificados en el método de prueba no se copia en el directorio de implementación.

CaptureTraceOutput

true

Puede escribir en la depuración de traza del método de prueba mediante Trace.WriteLine.Con esta configuración, puede desactivar estos seguimientos de depuración.

DeleteDeploymentDirectoryAfterTestRunIsComplete

true

Puede conservar el directorio de implementación después de una ejecución de pruebas al establecer este valor en false.

MapInconclusiveToFailed

false

Si una prueba vuelve con un estado no concluyente, se asigna normalmente el estado de Skipped en el Explorador de la prueba.Si desea que las pruebas de Inconcluso que se mostrarán como error, utilice esta configuración.

InProcMode

false

Si desea que las pruebas que se ejecutan en el mismo proceso que el adaptador de prueba de MS, establezca este valor en true.Este valor proporciona un aumento secundaria del rendimiento.Pero si una prueba finaliza con una excepción, las otras pruebas no seguirán.

Vea también

Conceptos

Personalizar el análisis de cobertura de código

Otros recursos

Especificar la configuración para las pruebas de Visual Studio