1

各シナリオを webdriver の最大化モードで実行することはできますか?

TestNG アノテーションを使用して Runner クラス メソッドに追加しようとしました@BeforeClassが、一度だけ機能しますが、シナリオが成功または失敗すると、ブラウザーが閉じられ、最小化モードで再び開きます。@Before一方、キュウリの注釈をすべての機能ファイルに追加したくありません。一箇所だけ変えたい。

open()メソッドは最終的なものであるため、オーバーライドできませんでした。ランナークラスで、またはプロパティで直接実行できる場合の解決策を探しています。

どんな助けでも大歓迎です。

また:

  1. 最大化する方法を知っている
  2. 私は拡張PageObjectクラスとカスタムクラスで最大化しようとしていましたが、コンストラクターで直接 getDriver().manage().window().maximize(); を書きました。このソリューションはうまく機能しますが、私にとってはそれほど良くないように見えます。
  3. また、ブラウザの高さと重さを追加してプロパティでやろうとしていましたが、この方法は好きではありません。

ありがとう。

4

6 に答える 6

1

これを試して:

@WhenPageOpens
public void maximiseScreen() {
    getDriver().manage().window().maximize();
}
于 2017-07-20T06:51:57.310 に答える
0

あなたの説明が紛らわしいので、あなたの問題が正確にはわかりません。1 つのクラスに複数のテストがあり、最初のテストが終了すると、ドライバーが閉じて、新しいインスタンスとして再び開きます。

BeforeClass の代わりに BeforeMethod を使用してみてください。何かのようなもの

@BeforeMethod(alwaysRun = true)
public void setup()
{
    WebDriver driver;
    driver.manage().window().maximize();
}
于 2016-04-07T03:06:45.170 に答える
0

これをプロジェクトフォルダのserenity.propertiesに入れてください

 serenity.browser.maximized = true

これにより、serenity-bdd でブラウザが最大化されます

于 2022-02-15T12:18:21.823 に答える