我使用FirefoxDriver时使用Selenium,当它实例化时,FireFox浏览器自动打开,我们如何隐藏它?使用FirefoxDriver隐藏浏览器
WebDriver driver = new FirefoxDriver();
感谢,
我使用FirefoxDriver时使用Selenium,当它实例化时,FireFox浏览器自动打开,我们如何隐藏它?使用FirefoxDriver隐藏浏览器
WebDriver driver = new FirefoxDriver();
感谢,
您可能能够使用Win32附加到窗口句柄和隐藏它,但除此之外,我不认为这是可以做到。
Selenium中的FirefoxDriver是用于为UI测试自动化真正的Firefox浏览器(而不是它的一些表示)。正因为如此,真正的浏览器需要运行才能正常工作。
如果你想要一个不可查看的UI驱动程序,你需要使用HtmlUnit驱动程序。
然而,随着网站说:
主流浏览器都没有使用由 的HtmlUnit(犀牛)所使用的 JavaScript引擎。如果您使用 HtmlUnit测试JavaScript,则结果可能会与这些浏览器显着不同 。
所以我会小心信任HtmlUnit驱动程序。
源:http://seleniumhq.org/docs/03_webdriver.html#webdriver-implementations
编辑
另外,我想补充一点,一般的自动化测试将是一个专用的机器上没有用户。在这种情况下,不管天气如何,您都可以看到浏览器。
是的,但HtmlUnit驱动程序或事件HtmlUnit库不能解析此页面:https://www.oceanschedules .com/schedules/search.do – user340882 2011-03-06 14:27:01
您可能可以设置用户代理并欺骗站点。 HTTP://计算器。COM /问题/ 4565250 /设置用户代理的硒-RC – 2011-03-07 02:13:53
如果您不想打开像Firefox这样的真实浏览器,那么您应该使用Html单元驱动程序(远程网络驱动程序)。首先添加命名空间,然后编写代码。好运。
使用OpenQA.Selenium;使用OpenQA.Selenium.Remote的 ;
class Program
{
static void Main(string[] args)
{
ICapabilities desiredCapabilities = DesiredCapabilities.HtmlUnit();
IWebDriver driver = new RemoteWebDriver(desiredCapabilities);
//your code begins here
}
}
另外,我想补充一点,一般的自动化测试将是一个专用的机器,没有用户上。在这种情况下,不管天气如何,您都可以看到浏览器。
启动GUI比启动非gui浏览器要长。当你有一个庞大的项目并且不想让你的测试永恒完成时,这非常重要。
不知道,你试图达到什么目的,但据我了解,当硒测试运行时,你希望firefox窗口不要中断你的工作。所以你可以在另一个桌面上运行你的测试。使用例如这个工具:Desktops。简单而便宜的解决方案
如果你正在开发一个Linux环境,然后看看http://stackoverflow.com/a/38768819/399959 – 2016-08-04 13:36:40