Compartir a través de


Cómo: Actualizar una condición de prueba personalizada de Visual Studio 2010 desde una versión anterior a SQL Server Data Tools

 

Para usar una condición de prueba unitaria creada en una versión anterior a SQL Server Data Tools, debe actualizarla:

  • Actualizar referencias

  • Actualizar atributos de clase y referencias de tipo

  • Instalar la condición de prueba actualizada

Actualizar referencias

Para actualizar las referencias del proyecto:

  1. Visual Basic solo: en el Explorador de soluciones, haga clic en Mostrar todos los archivos.

  2. En el Explorador de soluciones, expanda el nodo Referencias.

  3. Haga clic con el botón secundario en las referencias de ensamblado siguientes y, a continuación, haga clic en Quitar:

    1. Microsoft.Data.Schema.UnitTesting

    2. Microsoft.Data.Schema

  4. En el menú Proyecto, o haciendo clic con el botón secundario en la carpeta de proyecto en el Explorador de soluciones, haga clic en Agregar referencia.

  5. Haga clic en la pestaña .NET.

  6. En la lista Nombre de componente, seleccione System.ComponentModel.Composition y haga clic en Aceptar.

  7. Agregue las referencias de ensamblado necesarias.Haga clic con el botón secundario en el nodo del proyecto y, a continuación, haga clic en Agregar referencia.Haga clic en Examinar y navegue hasta la carpeta C:\Archivos de programa (x86) \MicrosoftSQL Server\110\DAC\Bin.Seleccione Microsoft.Data.Tools.Schema.Sql.dll, haga clic en Agregar y, a continuación, haga clic en Aceptar.

  8. En el menú Proyecto, haga clic en Descargar el proyecto.

  9. Haga clic con el botón secundario en el Proyecto, en el Explorador de soluciones, y seleccione Editarproject_name**.csproj**.

  10. Agregue la siguiente instrucción Import después de la importación de Microsoft.CSharp.targets:

    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\SSDT\Microsoft.Data.Tools.Schema.Sql.UnitTesting.targets" Condition="'$(VisualStudioVersion)' == ''" />
    
    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.Sql.UnitTesting.targets" Condition="'$(VisualStudioVersion)' != ''" />
    
  11. Guarde el archivo y ciérrelo.Haga clic con el botón secundario en el proyecto en el Explorador de soluciones y elija Volver a cargar el proyecto.

  12. Abra la clase de condición de prueba y quite todas las instrucciones using que empiezan por Microsoft.Data.Schema.La forma más sencilla de hacerlo consiste en hacer clic con el botón secundario en el archivo y elegir Organizar instrucciones Using y, a continuación, Quitar y ordenar.Se deben quitar las siguientes instrucciones using:

    using Microsoft.Data.Schema.UnitTesting;
    using Microsoft.Data.Schema.UnitTesting.Conditions;
    using Microsoft.Data.Schema.Extensibility;
    using Microsoft.Data.Schema;
    
  13. Agregue las siguientes instrucciones using al archivo si no están presentes:

    using System.ComponentModel;
    using Microsoft.Data.Tools.Schema.Sql.UnitTesting;
    using Microsoft.Data.Tools.Schema.Sql.UnitTesting.Conditions;
    

La condición de prueba emplea ahora referencias de ensamblado de pruebas unitarias de SQL Server.

Actualizar atributos de clase y referencias de tipo

Reemplazar los antiguos atributos de clase de pruebas unitarias con un nuevo atributo.La extensibilidad de pruebas unitarias de SQL Server se basa ahora en Managed Extensibility Framework (MEF).También debe actualizar algunas referencias de tipo.

Actualizar atributos de clase

Actualice el código de la manera siguiente:

  1. Quite el atributo o los atributos DatabaseSchemaProviderCompatibility.La característica de extensibilidad de la versión anterior necesitaba estos atributos, que no se admiten en las pruebas unitarias de SQL Server.

  2. Quite el atributo DisplayName.El nombre para mostrar se incluye en el nuevo atributo.

  3. Agregue el nuevo atributo ExportTestCondition.Este atributo debe estar presente para que la condición de prueba se detecte y utilice en las pruebas unitarias de SQL Server.ExportTestCondition y reemplaza los atributos DatabaseSchemaProviderCompatibility.ExportTestCondition requiere dos parámetros:

    • DisplayName es el primer parámetro.Reemplaza al atributo DisplayName y se emplea para describir todas las condiciones de prueba de este tipo.

    • El segundo parámetro se usa únicamente para identificar la extensión.Puede pasarlo simplemente en el tipo mediante typeof(NewTestCondition), ya que debe ser único.Sin embargo, también se puede pasar un id. de cadena si lo prefiere.

  4. La definición de clase se debe cambiar de la manera siguiente:

    Antes:

    [DatabaseSchemaProviderCompatibility(typeof(DatabaseSchemaProvider))]
    [DatabaseSchemaProviderCompatibility(null)]
    [DisplayName("NewTestCondition")]
    public class NewTestCondition:TestCondition
    {
       // Additional implementation to be added here
    }
    

    Después:

    [ExportTestCondition("NewTestCondition ", typeof(NewTestCondition))]
    public class NewTestCondition:TestCondition
    {
       // Additional implementation to be added here
    }
    

Actualizar referencias de tipo

Algunos nombres de tipo han cambiado en el marco de pruebas unitarias de SQL Server.Para actualizar el código de manera que use los nuevos nombres de tipo, use Buscar y reemplazar en el menú Edición.Los nombres de tipo empiezan ahora con Sql.Los nombres de clase se deben actualizar de la manera siguiente:

Nombre de tipo anterior

Nuevo nombre de tipo

ExecutionResult

SqlExecutionResult

Instalar la condición de prueba actualizada

En las versiones anteriores de las pruebas unitarias de base de datos, tenía que instalar la condición de prueba en la caché global de ensamblados o crear un archivo XML que contuviera la información de ensamblado.Con las pruebas unitarias de SQL Server, ya no es necesario este proceso adicional.(Para obtener más información, consulte Compilar el proyecto e instalar la condición de prueba.

Después de actualizar las referencias, compruebe que el ensamblado está firmado y compilado.

A continuación, copie el archivo de ensamblado desde el directorio de salida, que es, de forma predeterminada, Mis documentos\Visual Studio 2010\Projects\ <NombreDeSolución> \ <NombreDeProyecto> \bin\Debug\) al directorio %Program Files%\Microsoft Visual Studio <Version>\Common7\IDE\Extensions\Microsoft\SQLDB\TestConditions.Cuando Visual Studio se inicie, identificará las extensiones del directorio TestConditions y hará que estén disponibles para usarlas en la sesión:

Actualizar pruebas existentes que necesitan usar la nueva condición de prueba

Busque todos los proyectos de prueba que usen la condición de prueba anterior y que necesiten usar la nueva condición.Asegúrese de que estos proyectos de prueba se hayan actualizado.Para obtener más información, vea Actualizar un proyecto de prueba anterior que contiene pruebas unitarias de base de datos.

Quite la referencia de ensamblado a la condición de prueba anterior.

Agregue una nueva prueba unitaria de SQL Server al proyecto para crear una referencia de ensamblado a la condición de prueba actualizada del proyecto.Se debe agregar una clase de prueba para crear la referencia.Puede eliminar la clase de prueba una vez agregada la referencia.

Vea también

Condiciones de prueba personalizadas para pruebas unitarias de SQL Server