Usar la clase TestContext
Actualización: noviembre 2007
La clase TestContext se utiliza en las pruebas unitarias con varios propósitos. Éstos son sus usos más frecuentes:
En cualquier prueba unitaria, porque la clase TestContext almacena la información que se proporciona a las pruebas unitarias, como la ruta de acceso al directorio de implementación. Para obtener más información, vea Estructura de las pruebas unitarias.
En pruebas unitarias que prueban servicios Web que se ejecutan en un servidor de desarrollo de ASP.NET. En este caso, TestContext almacena la dirección URL del servicio Web. Para obtener más información, vea Probar servicios Web.
En pruebas unitarias de ASP.NET, para obtener acceso al objeto Page. Para obtener más información, vea Trabajar con pruebas unitarias de ASP.NET.
En las pruebas unitarias controladas por datos, se requiere la clase TestContext porque proporciona acceso a la fila de datos. Para obtener más información, vea Trabajar con pruebas unitarias controladas por datos, Codificar una prueba unitaria orientada a datos y Tutorial: Utilizar un archivo de configuración para definir un origen de datos.
Obtener TestContext
Al ejecutar una prueba unitaria, se proporciona automáticamente una instancia concreta del tipo TestContext si la clase de prueba que contiene el método de prueba unitaria tiene definida una propiedad TestContext. El marco de trabajo de pruebas unitarias rellena automáticamente los miembros de TestContext para que los utilice durante todas las pruebas. (Para obtener más información sobre los miembros de TestContext, consulte TestContext.) Esto significa que no tiene que crear instancias o derivar el tipo TestContext en el código. Simplemente empiece a utilizarlo; es compatible con IntelliSense.
No se define la propiedad TestContext automáticamente para todas las clases de prueba. Todo depende de cómo se haya creado la prueba.
Cuándo se define automáticamente la propiedad TestContext
Al generar una prueba unitaria desde el código, se define automáticamente la propiedad TestContext. Para obtener más información acerca de las maneras de generar pruebas unitarias, vea Cómo: Generar una prueba unitaria.
Cuándo no se define automáticamente la propiedad TestContext
Las pruebas unitarias se pueden crear de otras formas, además de generarlas automáticamente. No se definirá la propiedad TestContext automáticamente para la clase de prueba si la prueba se crea de alguna de estas maneras:
Se codifica a mano una nueva clase de prueba.
Se agrega un nuevo archivo de prueba unitaria al proyecto. Por ejemplo, es posible si se elige la opción Nueva prueba en el menú Prueba y después se selecciona Prueba unitaria en el cuadro de diálogo Agregar nueva prueba.
En estos casos, se debe agregar manualmente la propiedad TestContext. Para obtener más información acerca de la codificación de pruebas unitarias, vea Cómo: Crear una prueba unitaria.
Ejemplo de TestContext
Para utilizar TestContext, cree un miembro y una propiedad dentro de la clase de prueba, como en el siguiente ejemplo en C#.
private TestContext testContextInstance;
/// <summary>
///Gets or sets the test context which provides
///information about and functionality for the current test run.
///</summary>
public TestContext TestContext
{
get
{
return testContextInstance;
}
set
{
testContextInstance = value;
}
}
El marco de pruebas establece automáticamente la propiedad, que podrá utilizar después en las pruebas unitarias.
Vea también
Tareas
Cómo: Crear una prueba unitaria
Conceptos
Codificar una prueba unitaria orientada a datos
Comprobar sitios y servicios Web en entornos de trabajo en equipo
Referencia
TestContext
Otros recursos
Cómo: Generar una prueba unitaria