Compartir a través de


Codificar pruebas unitarias personalizadas con el marco de pruebas unitarias

El marco de pruebas unitarias admite las pruebas unitarias en Visual Studio. Utilice las clases y los miembros del espacio de nombres Microsoft.VisualStudio.TestTools.UnitTesting cuando codifique pruebas unitarias. Puede utilizarlas cuando escriba la prueba unitaria desde cero o si está adaptando una que generó a partir del código que está probando.

Grupos de elementos

Para ayudar a proporcionar información general más clara del marco de pruebas unitarias, en esta sección se organizan los elementos del espacio de nombres UnitTesting en grupos de funcionalidad relacionada.

Nota

Los elementos de atributo, cuyos nombres concluyen con la cadena Attribute, se pueden utilizar con la cadena o sin ella. Por ejemplo, los dos ejemplos de código siguientes tienen un funcionamiento idéntico:

[TestClass()]

[TestClassAttribute()]

Elementos utilizados para preparar pruebas controladas por datos

Utilice los elementos siguientes para preparar pruebas unitarias controladas por datos. Para obtener más información, vea Cómo: Crear una prueba unitaria controlada por datos y Tutorial: Utilizar un archivo de configuración para definir un origen de datos.

Atributos utilizados para establecer un orden de llamada

Un elemento de código decorado con uno de los atributos siguientes recibe una llamada en el momento en que se especifica. Para obtener más información, vea Anatomía de las pruebas unitarias.

Para los ensamblados

Se llama a AssemblyInitialize y AssemblyCleanup inmediatamente después de que se cargue el ensamblado e inmediatamente antes de que se descargue.

Para las clases

Se llama a ClassInitialize y ClassCleanup inmediatamente después de que se cargue la clase e inmediatamente antes de que se descargue.

Para los métodos Test

Atributos utilizados para identificar clases y métodos Test

Todas las clases Test deben tener el atributo TestClass y todos los métodos Test deben tener el atributo TestMethod. Para obtener más información, vea Anatomía de las pruebas unitarias.

Clases Assert y excepciones relacionadas

Las pruebas unitarias pueden comprobar el comportamiento de aplicaciones concretas según su uso de diversos tipos de instrucciones, excepciones y atributos Assert. Para obtener más información, vea Utilizar las clases Assert.

La clase TestContext

Los atributos siguientes y los valores que tienen asignados aparecen en la ventana Propiedades de Visual Studio para un método Test determinado. Estos atributos no están diseñados para que se permita el acceso a ellos mediante el código de la prueba unitaria. Pero sí afectan a la manera en que se utiliza o se ejecuta la prueba unitaria, bien lo haga usted a través del IDE de Visual Studio, o por el motor de pruebas de Visual Studio. Por ejemplo, algunos de estos atributos aparecen como columnas en la ventana Administrador de pruebas y en la ventana Resultados de pruebas, lo que significa que puede utilizarlos para agrupar y ordenar las pruebas y sus resultados. Uno de estos atributos es TestPropertyAttribute, que se utiliza para agregar metadatos arbitrarios a las pruebas unitarias. Por ejemplo, podría utilizarlo para almacenar el nombre de una prueba superada que cubre esta prueba, marcando la prueba unitaria con [TestProperty("TestPass", "Accessibility")]. O podría utilizarlo para almacenar un indicador de la naturaleza de la prueba: [TestProperty("TestKind", "Localization")]. La propiedad creada utilizando este atributo, y el valor que se le asigna, se muestran en la ventana Propiedades de Visual Studio bajo el encabezado Específico de la prueba.

Clases de configuración de pruebas

Atributos utilizados para generar informes

Los atributos de esta sección relacionan el método de prueba que decoran con entidades de la jerarquía de un proyecto de equipo de Team Foundation Server.

Clases utilizadas con descriptores de acceso privados

Como se explica en Usar Publicize para crear un descriptor de acceso privado, se puede generar una prueba unitaria para un método privado. Esta generación crea una clase de descriptor de acceso privado, que crea instancias de un objeto de la clase PrivateObject. La clase PrivateObject es una clase contenedora que utiliza la reflexión como parte del proceso del descriptor de acceso privado. La clase PrivateType es similar, pero se utiliza para llamar a métodos estáticos privados, en lugar de a métodos de instancia privados.

Vea también

Referencia

Microsoft.VisualStudio.TestTools.UnitTesting