在C#中解析任意主机名/ IP地址

时间:2017-04-07 13:05:53

标签: c# .net debugging

我正在使用Selenium和Chrome网络驱动程序在C#中编写行为测试。除了本地调试之外,我还想通过强制C#将我们站点的主机名解析为暂存IP地址来测试暂存上下文中的更改。

有没有办法为给定的主机名设置任意IP地址,而无需编辑C:\ windows \ system32 \ drivers \ etc \ hosts,也无需设置实际的DNS记录?

例如,当我进行以下调用时,我希望Selenium转到我可以在调试应用程序的上下文中手动设置的IP地址:

rowwise

2 个答案:

答案 0 :(得分:0)

您的行为测试应该在设置步骤中获取/读取一些配置源(自定义配置文件,环境变量等),并从该源获取站点地址。因此,您只需更改配置设置,而不是更改测试中的主机文件或代码。

另外,在理想的世界中,你应该为staging和prod环境提供不同的主机名......在你的情况下,你可以直接在测试中使用IP地址,而不是主机名。

答案 1 :(得分:0)

您可以将值添加到app.config中,并根据您要使用的环境更改网址。

    //app.config file
    <add key="URL" value="http://123.45.67.89/" />


   using System.Configuration;

   using(var driver = new ChromeDriver())
   {

   driver.Navigate().GoToUrl(ConfigurationManager.AppSettings["URL"]);
   }
相关问题