我正在使用Selenium 遥控器。在执行测试期间,实际的 Firefox 窗口非常小。我想要它全屏,所以我可以看到发生了什么。如何最大化浏览器屏幕?
9 回答
试试 windowMaximize 命令:
selenium.windowMaximize();
您还可以使用以下命令设置特定的宽度和高度:
selenium.getEval("window.resizeTo(X, Y); window.moveTo(0,0);")
其中 X 是宽度,Y 是高度。
这对我有用。所有其他解决方案在 FF7 中都不起作用。
WebDriver driver = ((WebDriverBackedSelenium) selenium).getWrappedDriver();
driver.manage().window().setPosition(new Point(0, 0));
driver.manage().window().setSize(new Dimension(1920, 1080));
您可以执行以下操作:
page.driver.browser.manage.window.maximize
硒 2.31.0
driver = webdriver.Firefox()
# Resize the window to the screen width/height
driver.set_window_size(300, 500)
# Move the window to position x/y
driver.set_window_position(200, 200)
将-singlewindow参数传递给 Selenium RC 服务器时,提供的答案均无效。但是,如果您将 firefox 配置文件传递给 Selenium RC 服务器(此处有些详细说明),您可以创建一个空的配置文件文件夹并将此文件放入文件夹中:
<?xml version="1.0"?>
<RDF:RDF xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<RDF:Description RDF:about="chrome://browser/content/browser.xul#main-window"
sizemode="normal"
height="9999"
width="9999"
screenX="0"
screenY="0" />
lastSelected="paneTabs" />
<RDF:Description RDF:about="chrome://browser/content/browser.xul">
<NC:persist RDF:resource="chrome://browser/content/browser.xul#main-window"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#PersonalToolbar"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#nav-bar"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#status-bar"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#toggle_taskbar"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#navigator-toolbox"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#toolbar-menubar"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#sidebar-box"/>
<NC:persist RDF:resource="chrome://browser/content/browser.xul#sidebar-title"/>
</RDF:Description>
</RDF:RDF>
用您喜欢的宽度和高度替换宽度和高度。9999x9999 几乎可以最大化任何显示器。
以这种方式运行 Selenium RC 服务器的最简单示例,假设我们的主目录中有前面提到的localstore.rdf,并且我们当前位于 Selenium RC 服务器的目录中:
rm -rf ~/ffProfile
mkdir ~/ffProfile
cp localstore.rdf ~/ffProfile
java -jar selenium-server-*.jar -singlewindow -firefoxProfileTemplate "~/ffProfile"
这还具有不“污染”您的测试的额外好处。
对于 Firefox:sel.key_press_native(122)(122 在 F11 的键码中)
好吧,我认为最好的方法是使用selenium.windowMaximize()硒函数而不是操纵窗口大小。
要扩展 David Hunt 关于更具体的窗口大小调整和移动的建议,请注意以下内容。
要在大多数环境中工作,请在调整大小之前移动。那是:
selenium.getEval("window.moveTo(X, Y); window.resizeTo(X, Y);")
要覆盖 2/3 的屏幕,这对于查看下面的硒驱动窗口的一部分很方便,并且无论您的目标屏幕分辨率如何,都要这样做:
selenium.getEval("window.moveTo(screen.availWidth / 3,0); window.resizeTo(screen.availWidth * (2/3), screen.availHeight); ");
在红宝石中,调用将是
web_driver.manage.window.maximize