c# で統合テストを作成していますが、ダイアログ ボックス内の特定の要素で click() メソッドを使用すると、何も起こらず、エラーも発生しません。ダイアログ内の一部の要素をクリックしますが、他の要素はクリックしません。それらを適切に選択していないとスローして例外が発生すると思いましたが、実際にはボタンをクリックしていなくてもスムーズに実行され、テストに合格したと表示されます。ダイアログ ボックスは iframe です。
まだ表示されていない、または有効になっていないボタンをクリックしようとしているのかもしれないと思ったので、click() 呼び出しの前にこれを追加しました。
_driver.SwitchTo().Frame(_frameElement);
_wait.Until(d =>
{
var shippingInfoButton = d.FindElement(By.CssSelector("input[title ='Info']"));
return shippingInfoButton.Displayed && shippingInfoButton.Enabled;
});
var infoButton = _driver.FindElement(By.CssSelector("input[title ='Info']"));
ScrollToElement(infoButton);
infoButton.Click();
繰り返しますが、これはスローされた例外なしで実行されるため、要素が見つかり、表示され有効になっていると想定しています。
さらに情報が必要な場合はお知らせください。ありがとう