24

SeleniumRemoteControlを使用しています。テストの実行中、実際のFirefoxウィンドウは非常に小さいです。何が起こっているのかを確認できるように、全画面表示にします。ブラウザ画面を最大化するにはどうすればよいですか?

4

9 に答える 9

36

windowMaximizeコマンドを試してください。

selenium.windowMaximize();

次のコマンドを使用して、特定の幅と高さを設定することもできます。

selenium.getEval("window.resizeTo(X, Y); window.moveTo(0,0);")

ここで、Xは幅、Yは高さです。

于 2009-10-06T08:44:15.533 に答える
26

これは私のために働きます。他のすべてのソリューションはFF7では機能しませんでした。

WebDriver driver = ((WebDriverBackedSelenium) selenium).getWrappedDriver();
driver.manage().window().setPosition(new Point(0, 0));
driver.manage().window().setSize(new Dimension(1920, 1080));
于 2011-12-09T04:15:25.037 に答える
5

次のことができます。

page.driver.browser.manage.window.maximize
于 2013-06-06T22:27:41.790 に答える
4

セレン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)
于 2013-03-14T16:43:39.633 に答える
2

Firefoxの場合:sel.key_press_native(122)(F11のキーコードの122)

于 2010-10-03T10:28:20.737 に答える
2

最善の方法は、ウィンドウのサイズを操作する代わりに、selenium.windowMaximize() selenium関数を使用することだと思います。

于 2011-03-12T18:44:10.817 に答える
2

-singlewindowパラメーターをSeleniumRCサーバーに渡す場合、提供された回答はいずれも機能しません。ただし、FirefoxプロファイルをSelenium RCサーバーに渡す場合(ここで少し詳しく説明します)、空のプロファイルフォルダーを作成し、このファイルをフォルダーに配置できます。

localstore.rdf (大文字と小文字を区別するファイル名!)

<?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は、ほとんどすべてのモニターを最大化します。

前述のlocalstore.rdfがホームディレクトリにあり、現在Selenium RCサーバーのディレクトリにいると仮定して、SeleniumRCサーバーをこのように実行する最も簡単な例は次のとおりです。

rm -rf ~/ffProfile
mkdir ~/ffProfile
cp localstore.rdf ~/ffProfile
java -jar selenium-server-*.jar -singlewindow -firefoxProfileTemplate "~/ffProfile"

これには、テストを「汚染」しないという追加の利点もあります。

于 2012-03-02T15:26:01.997 に答える
1

より具体的なウィンドウのサイズ変更と移動に関するDavidHuntの提案を拡張するには、次の点に注意してください。

ほとんどの環境で機能するには、サイズを変更する前に移動します。あれは:

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);");

于 2011-08-01T04:08:42.593 に答える
0

ルビーでは、呼び出しは

web_driver.manage.window.maximize

于 2015-05-04T20:54:23.897 に答える