Cómo: Probar un método privado
Actualización: noviembre 2007
Para probar métodos públicos y privados, puede utilizar pruebas unitarias. Como con los métodos públicos, las pruebas unitarias para métodos privados se crean automáticamente al generar pruebas desde el código que se desea probar.
Aunque las pruebas unitarias se pueden codificar manualmente para probar cualquier método, esta tarea es más difícil para los métodos privados que para los públicos, puesto que requiere un mejor conocimiento de las complejidades de la reflexión. Por tanto, le dará mejor resultado generar pruebas para los métodos privados en lugar de codificarlos a mano.
Cuando se genera una prueba unitaria para un método privado, Visual Studio crea un descriptor de acceso privado. Un descriptor de acceso privado es un ensamblado a través del cual la prueba puede tener acceso a un método privado desde fuera de la clase de ese método. Para obtener más información, vea Utilizar descriptores de acceso privados.
Nota: |
---|
Además de métodos privados, también puede utilizar un descriptor de acceso privado para probar los campos y las propiedades privadas. Sin embargo, no puede utilizar un descriptor de acceso privado para probar las versiones privadas de los siguientes elementos: eventos, delegados, métodos anónimos y miembros marcados con el atributo CompilerGeneratedAttribute. |
¿Cuál se deberá utilizar: InternalsVisibleTo o un descriptor de acceso privado?
Puede utilizar un ensamblado de descriptor de acceso privado para obtener acceso tanto a miembros privados como a miembros internos. Si el código sometido a prueba contiene miembros internos pero no miembros privados, es mejor utilizar el atributo InternalVisibleTo en el código sometido a prueba y renunciar a la creación de un ensamblado de descriptor de acceso privado. Por el contrario, si el código tiene miembros internos y privados que desee probar, utilice el descriptor de acceso privado, ya que proporciona acceso a ambos. Para obtener más información, consulte Utilizar descriptores de acceso privados.
Para generar una prueba unitaria para un método privado
Abra un archivo de código fuente que contenga un método privado.
Haga clic con el botón secundario en el método privado y seleccione Crear pruebas unitarias.
Aparecerá el cuadro de diálogo Crear pruebas unitarias. En la estructura de árbol visible, sólo está activada la casilla correspondiente al método privado.
(Opcional) En el cuadro de diálogo Crear pruebas unitarias, puede cambiar el Proyecto de salida. También puede hacer clic en Configuración para reconfigurar la manera en que se generan las pruebas unitarias.
Haga clic en Aceptar.
Se genera el código para tener acceso al método privado, se genera el proyecto de prueba y se crea o actualiza el ensamblado de descriptor de acceso privado.
Si el proyecto de prueba no tuviera ninguna prueba unitaria antes de este punto, también se crearía un archivo de código fuente para alojar las pruebas unitarias. Como con el archivo que contiene los descriptores de acceso privados, el archivo que contiene las pruebas unitarias también aparece en el proyecto de prueba en el Explorador de soluciones.
Abra el archivo que contiene las pruebas unitarias y desplácese a la prueba para el método privado. Busque las instrucciones que estén marcadas con comentarios // TODO: y complételas siguiendo las instrucciones de los comentarios. Esto ayuda a obtener resultados más precisos con la prueba. Para obtener más información, vea Cómo: Crear una prueba unitaria.
La prueba unitaria para el método privado ahora está lista para ejecutarse. Para obtener más información, consulte Cómo: Ejecutar las pruebas seleccionadas.
Vea también
Tareas
Cómo: Crear una prueba unitaria
Tutorial: Crear y ejecutar pruebas unitarias
Conceptos
Utilizar descriptores de acceso privados
Usar Publicize para crear descriptores de acceso privados
Establecer el atributo InternalsVisibleTo