UIテストを実行すると、Seleniumがchromedriverの自動ウィンドウサイズ変更をサポートしていないというエラーが表示され、テストが失敗します。
headless-chrome
のchrome-optionsを使用してこれを設定する方法はありますか?
私は以下を試しました、
ChromeOptions options = new ChromeOptions();
options.addArguments("--start-maximized");
また、"--start-maximized"
を"--start-fullscreen"
および"--kiosk"
に置き換えます。
しかし、上記のどれも私にはうまくいきませんでした。私に役立つ唯一のオプションは"--window-size=width,height"
です。
幅と高さの値をハードコーディングしたくないのですが、これを実行してフルスクリーンを設定する方法はありますか?
問題は、ヘッドレスモードは画面のないコンピューターで使用することを目的としているため、画面があったとしても画面のサイズを把握する方法がないことです。唯一の方法は、-window-sizeを使用してその情報をブラウザに渡すことです。
ヘッドレスモードでのデフォルトのウィンドウサイズと表示サイズは、すべてのプラットフォームで800x600です。
したがって、最大化されたウィンドウサイズはクロームヘッドレスには適用できず、必要に応じてユーザーが明示的に設定する必要があります。
別のオプションがあります。の代わりに --start-maximized
オプション、次のことができます。
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
これは私のために働いたdriver.manage().window().setSize(new Dimension(1600,700));