【发布时间】:2012-09-06 08:23:33
【问题描述】:
您好,我是第一次使用 Selenium,我正在执行以下代码。它运行良好,但在打开 Firefox 后它不会输出到控制台,因为代码说它应该在代码中的所有步骤完成后执行所有操作。
所以我的问题是如何在实际运行步骤时将该文本输出到控制台?
var ProxyIP = "xxx.xxx.xx.xxx:80";
RtbConsole.AppendText("Setting Up Firefox\n");
//Firefox driver + proxy setup
FirefoxProfile profile = new FirefoxProfile();
String PROXY = ProxyIP;
OpenQA.Selenium.Proxy proxy = new OpenQA.Selenium.Proxy();
proxy.HttpProxy = PROXY;
proxy.FtpProxy = PROXY;
proxy.SslProxy = PROXY;
profile.SetProxyPreferences(proxy);
RtbConsole.AppendText("Launching Firefox\n");
FirefoxDriver driver = new FirefoxDriver(profile);
RtbConsole.AppendText("Navigating to http://whatsmyip.net/ \n");
driver.Navigate().GoToUrl("http://whatsmyip.net/");
IWebElement ip = driver.FindElement(By.XPath("/html/body/div/div/h1/span"));
var myIP = ip.Text;
RtbConsole.AppendText("Checking IP for Proxy\n");
if (ProxyIP == myIP + ":80") {
RtbConsole.AppendText("Proxy Test: Success\n");
} else {
RtbConsole.AppendText("Proxy Test: Failed\n");
}
//Close the browser
driver.Quit();
【问题讨论】:
-
如果有人对这个问题的答案感兴趣,它真的不可能像我试图那样做我最终在单独的线程中运行驱动程序部分,然后使用委托函数来应用控制台更新。