Tengo un código contenedor que ejecuta un conjunto de pruebas NUnit que escanean sitios web en vivo para ciertos códigos de respuesta.¿Puedo anular temporalmente la resolución de DNS dentro de una aplicación .NET?
Me gustaría ejecutar estas pruebas contra un servidor diferente. Cuando se ejecuta de forma manual, puedo hacerlo editando el archivo/etc/hosts en Windows \ System32 \ drivers y configurando temporalmente www.mysite.com a 10.0.0.whatever
¿Hay alguna forma en que pueda hacer lo mismo dentro de una aplicación de consola .NET: ¿anula temporalmente un registro DNS o intercepta de algún modo la resolución y devuelve una dirección IP diferente?
EDITAR: Esto es para probar varios servidores en una granja de servidores web. Tengo tres servidores en vivo, los cuales PIENSO que son www.example.com. Como los servidores usan encabezados de host HTTP, no puedo simplemente ejecutar una prueba contra server1, luego server2, then server3, porque una solicitud HTTP a http://server1/ NO devolverá lo mismo que una solicitud a http://www.example.com/ que se resuelve en server1 ...
Creo que sería más fácil para no molestar con el DNS. En su lugar, configure la URL del destino para que se lea desde el archivo App.config. Luego, cambiaría el archivo de configuración que se lee según el entorno en el que se encuentre, que Visual Studio puede administrar para usted. – Jeff
Jeff - ver edición; Necesito escanear diferentes SERVIDORES pero no puedo usar diferentes nombres de host para hablar con ellos ... –
Ah, sí. Supongo que eso dificultaría las cosas. Sospeché por su representante y medallas de oro que había algo más sucediendo aquí :) – Jeff