Tengo una biblioteca de clase que quiero probar en una unidad usando el marco de prueba de la unidad Microsofts. Algunas de las clases que quiero probar están configuradas usando la configuración de la aplicación. Esta configuración se define dentro del archivo Settings.settings
con alcance de aplicación y valores predeterminados adecuados. Cuando la aplicación utiliza la biblioteca, esta configuración puede ser anulada en el archivo App.Config
. Si no, se usan los valores predeterminados. Así es exactamente como quiero que sea.Modificación de la configuración de la aplicación en pruebas unitarias
En algunos de mis casos de prueba quiero probar combinaciones especiales de valores de configuración pero no sé cómo cambiar los valores vistos por la clase bajo prueba del código de prueba de la unidad. Estas configuraciones siempre tendrán su valor predeterminado cargado de los atributos de la clase generada por el código.
En mi clase de biblioteca puedo acceder a la configuración de la siguiente manera:
var mySetting1 = Settings.Default.MySetting1;
var mySetting2 = Settings.Default.MySetting2;
¿Cómo modificar estos ajustes en una unidad de prueba antes de que el ajuste se accede por la clase que se está probando? Hacer que la clase de configuración interna sea accesible mediante la prueba unitaria no resuelve el problema ya que las configuraciones tienen alcance de aplicación y son propiedades de solo lectura en la clase de configuración.
+1 para la solución alternativa del Accesor de Recarga + Propiedad. –
Gracias por esto, nunca lo hubiera descubierto por mi cuenta. –