特定のボタンをクリックすると、テストサイトがモーダルウィンドウを開きます。
ただし、モーダルウィンドウの開き方は異なります。modal window 1 or modal window 2
両方とも異なるタイトル、異なるオプション、異なるロケーターを持っています。モーダルwindow open Either 1 or 2
。
いずれかのモーダルウィンドウ(WebElement)が表示されるまで待つことは可能ですか?
WebDriverWaitメソッドで検索しましたが、すべてのメソッドは特定のWebElementが表示またはクリック可能になるまで待機します。
どちらかが表示されるまで待機するより良い方法を見つけることができません。
この状況を解決するための1つの方法を提案できますか?
or
expected conditions を使用できます
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.or(
ExpectedConditions.visibilityOfElementLocated(By.id("id1")),
ExpectedConditions.visibilityOfElementLocated(By.id("id2"))
));
または、cssSelector
または,
を使用します
wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#id1, #id2"));