Compartir a través de


Cómo: Configurar pruebas unitarias cuyo destino sea .NET Framework 3.5

Cuando se usa Visual Studio 2010, la versión de destino predeterminada de .NET Framework en proyectos de prueba es .NET Framework 4. Además, si actualiza los proyectos de prueba de Visual Studio 2008, de forma predeterminada, estos proyectos usarán como destino .NET Framework 4. Puede modificar las propiedades del proyecto y cambiar explícitamente el destino del proyecto a .NET Framework 3.5.

Nota de precauciónPrecaución

Si desea cambiar el destino de los proyectos de prueba para que usen .NET Framework 3.5, debe instalar Visual Studio 2010 Service Pack 1.

Visual Studio 2010 Service Pack 1 habilita la siguiente compatibilidad básica para las pruebas unitarias que tienen como destino .NET Framework 3.5:

  • Puede crear proyectos de prueba unitaria y destinarlos a .NET Framework 3.5.

  • Puede ejecutar pruebas unitarias que tengan como destino .NET Framework 3.5 con Visual Studio 2010 Service Pack 1 en el equipo local.

  • Puede ejecutar pruebas unitarias que tengan como destino .NET Framework 3.5 utilizando MSTest.exe desde el símbolo del sistema.

  • Puede ejecutar pruebas unitarias en un agente de compilación como parte de una compilación.

Probar aplicaciones de SharePoint 2010

Las funcionalidades indicadas anteriormente también permiten escribir pruebas unitarias y pruebas de integración para SharePoint 2010 usando Visual Studio 2010 Service Pack 1. Para obtener más información sobre cómo desarrollar aplicaciones de SharePoint 2010 usando Visual Studio 2010, vea Implementación de SharePoint en Visual Studio, Compilar y depurar soluciones de SharePoint y Comprobar y depurar código de SharePoint usando características de ALM.

Limitaciones

Las siguientes limitaciones se aplican cuando cambia los proyectos de prueba para que usen como destino .NET Framework 3.5:

  • En .NET Framework 3.5, la compatibilidad con múltiples versiones (multi-targeting) se admite en proyectos de prueba que solo contienen pruebas unitarias. .NET Framework 3.5 no es compatible con ningún otro tipo de prueba, como pruebas de IU codificada o pruebas de carga. Los cambios de destino están bloqueados en los tipos de prueba que no son pruebas unitarias.

  • La ejecución de pruebas de .NET Framework 3.5 solo se admite en el adaptador host predeterminado. No se admite en el adaptador host de ASP.NET. Las aplicaciones ASP.NET que tienen que ejecutarse en el contexto del servidor de desarrollo de ASP.NET deben ser compatibles con .NET Framework 4.

  • La compatibilidad con la recolección de datos está deshabilitada cuando se ejecutan pruebas que admiten la compatibilidad con múltiples versiones (multi-targeting) de .NET Framework 3.5. Puede ejecutar la cobertura de código utilizando las herramientas de línea de comandos de Visual Studio.

  • Las pruebas unitarias que usan .NET Framework 3.5 no puede ejecutarse en un equipo remoto.

Cambiar el destino a .NET Framework 3.5 en proyectos de pruebas unitarias de Visual Basic

  1. Cree un nuevo proyecto de prueba unitaria de Visual Basic. En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Proyecto.

    Aparecerá el cuadro de diálogo Nuevo proyecto.

  2. En Plantillas instaladas, expanda Visual Basic. Seleccione Prueba y, a continuación, seleccione la plantilla Proyecto de prueba.

  3. En el cuadro de texto Nombre, escriba un nombre para su proyecto de prueba de Visual Basic y, a continuación, haga clic en Aceptar.

  4. En el Explorador de soluciones, haga clic con el botón secundario en el nuevo proyecto de prueba de Visual Basic y seleccione Propiedades.

    Se muestran las propiedades del proyecto de prueba de Visual Basic.

  5. Seleccione la pestaña Compilar y haga clic en el botón Opciones de compilación avanzadas tal y como se muestra en la ilustración siguiente.

    Opciones de compilación avanzadas

  6. Utilice la lista desplegable Versión de .Net Framework de destino (todas las configuraciones) para cambiar la versión de destino .NET Framework 4 por .NET Framework 3.5 tal y como se muestra en la llamada B de la siguiente ilustración.

    Lista desplegable Versión de .NET Framework de destino

    Nota

    Si aparece un mensaje de error en el que se le pide confirmación, siga las instrucciones que se indican en el vínculo del mensaje o vea el siguiente procedimiento Posibles pasos adicionales para habilitar el cambio de destino a .NET Framework 3.5. en proyectos de prueba.

Cambiar el destino a .NET Framework 3.5 en proyectos de pruebas unitarias de Visual C#

  1. Cree un nuevo proyecto de prueba unitaria de Visual C#. En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Proyecto.

    Aparecerá el cuadro de diálogo Nuevo proyecto.

  2. En Plantillas instaladas, expanda Visual C#. Seleccione Prueba y, a continuación, seleccione la plantilla Proyecto de prueba.

  3. En el cuadro de texto Nombre, escriba un nombre para su proyecto de prueba de Visual C# y, a continuación, haga clic en Aceptar.

  4. En el Explorador de soluciones, haga clic con el botón secundario en el nuevo proyecto de prueba de Visual C# y seleccione Propiedades.

    Se muestran las propiedades del proyecto de prueba de Visual C#.

  5. Seleccione la pestaña Aplicación y, a continuación, use la lista desplegable Versión de .NET Framework de destino (todas las configuraciones) para cambiar la versión de destino .NET Framework 4 por .NET Framework 3.5 como se muestra en la ilustración siguiente.

    Lista desplegable Versión de .NET Framework de destino

    Nota

    Si aparece un mensaje de error en el que se le pide confirmación, siga las instrucciones que se indican en el vínculo del mensaje o vea el siguiente procedimiento Posibles pasos adicionales para habilitar el cambio de destino a .NET Framework 3.5. en proyectos de prueba.

Cambiar el destino a .NET Framework 3.5 en proyectos de pruebas unitarias de CLI/C++ administrado

  1. Cree un nuevo proyecto de prueba unitaria de C++. En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Proyecto.

    Aparecerá el cuadro de diálogo Nuevo proyecto.

    Nota de precauciónPrecaución

    Si tiene proyectos de pruebas unitarias que se crearon utilizando Visual Studio 2008 y desea compilar proyectos de pruebas unitarias de C++/CLI que tienen como destino .NET Framework 3.5 usando Visual Studio 2010 Service Pack 1, debe instalar Visual Studio 2008 Service Pack 1 en Visual Studio 2008 antes de utilizar los proyectos en Visual Studio 2008. Este es un requisito necesario para usar como destino .NET Framework 3.5. Si instala únicamente el paquete de .NET Framework 3.5 redistribuible no funcionará. Las herramientas de Visual C++, como cl.exe en Visual Studio 2010, solo pueden usar como destino .NET Framework 4. Por tanto, para usar como destino .NET Framework 3.5, debe tener las herramientas de la versión anterior. Estas herramientas se incluían con Visual Studio y no con .NET Framework.

  2. En Plantillas instaladas, expanda Visual C ++. Seleccione Prueba y, a continuación, seleccione la plantilla Proyecto de prueba.

  3. En el cuadro de texto Nombre, escriba un nombre para su proyecto de prueba de C++ y, a continuación, haga clic en Aceptar.

  4. En el Explorador de soluciones, haga clic con el botón secundario en el nuevo proyecto de prueba de C++ y seleccione Descargar el proyecto.

  5. En el Explorador de soluciones, haga clic con el botón secundario en el proyecto de prueba de Visual C++ descargado y seleccione Editar <nombre de proyecto>.vcxproj.

    El archivo .vcxproj se abre en el editor.

  6. Establezca TargetFrameworkVersion en la versión 3.5 del objeto PropertyGroup etiquetado como "Globals":

    <PropertyGroup Label="Globals">
        <TargetName>DefaultTest</TargetName>
        <ProjectTypes>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</ProjectTypes>
        <ProjectGUID>{CE16D77A-E364-4ACD-948B-1EB6218B0EA3}</ProjectGUID>
        <TargetFrameworkVersion>3.5</TargetFrameworkVersion>
        <Keyword>ManagedCProj</Keyword>
        <RootNamespace>CPP_Test</RootNamespace>
      </PropertyGroup>
    
  7. Guarde y cierre el archivo .vcxproj.

  8. En el Explorador de soluciones, haga clic con el botón secundario en el nuevo proyecto de prueba de C++ y seleccione Volver a cargar el proyecto.

Posibles pasos adicionales para habilitar del cambio de destino a .NET Framework 3.5 en proyectos de prueba

Si modificó el archivo devenv.exe.config antes de instalar Service Pack 1 en Visual Studio 2010, tendrá que realizar pasos adicionales para habilitar el cambio de destino a .NET Framework 3.5. La instalación de Service Pack 1 no sobrescribe el archivo de configuración si detecta que se ha modificado.

Nota

El archivo devenv.exe.config se puede modificar si se han instalado complementos de Visual Studio.

Si el archivo devenv.exe.config se modificó antes de instalar el Service Pack 1 y el archivo no se ha corregido, aparecerá un mensaje de error en los siguientes casos:

  • Cuando intente cambiar el destino a .NET Framework 3.5 en un proyecto de prueba utilizando Visual Studio 2010 con el Service Pack 1 instalado.

  • Cuando intente abrir un proyecto de prueba en el que ya se ha cambiado el destino.

Para solucionar este problema, siga el procedimiento que se describe a continuación.

Para agregar las entradas XML que faltan al archivo de configuración

  1. Cierre todas las instancias de Visual Studio 2010.

  2. Abra el símbolo del sistema de Visual Studio 2010 como administrador.

  3. Cambie el directorio a "%programfiles%\MicrosoftVisual Studio 10.0\Common7\IDE" si está utilizando Windows de 32 bits o a "%programfiles(x86)%\MicrosoftVisual Studio 10.0\Common7\IDE" si está utilizando Windows de 64 bits.

  4. Abra el archivo devenv.exe.config en un editor de texto, como notepad.exe.

  5. Agregue las siguientes entradas bajo el nodo <assemblyBinding>:

    <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.UnitTestFramework" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.ObjectModel" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
  6. Agregue la siguiente entrada bajo el nodo <configuration>:

    <appSettings>
        <add key="TestProjectRetargetTo35Allowed" value="true" />
     </appSettings>
    
  7. Guarde el archivo devenv.exe.config.

  8. Reinicie Visual Studio 2010.

    Ahora debería poder cambiar el destino a .NET Framework 3.5 en el proyecto de prueba.

Vea también

Conceptos

Crear y ejecutar pruebas unitarias para código existente

Otros recursos

Implementación de SharePoint en Visual Studio

Compilar y depurar soluciones de SharePoint