Selenium IDEによって一部のWebサイトのデータトラフィックをウェイクアップするために、フォームの外側の空白領域をマウスクリックしたいと思います。何か案は?
X、yでクリックしようとしましたが、テストケースでは効果がありません。シナリオは以下のとおりです。
次のコマンドを使用できます。
driver.findElement(By.xpath("//html")).click();
しかし、時々それは空白を取りません、
このような場合は、次を使用します。
driver.get("//html");
確かに存在するページ上の別の要素をクリックするだけです。
Browser.Driver.FindElement(By.Id("testtest123")).Click();
別の解決策は、その電子メールフィールドからフォーカスを削除してJavaScriptを呼び出すことです。これは、ajaxがトリガーするように設定したトリガーに依存します。
「html」は特別な要素であり、必要なのは「body」(「表示」される最初のDOM要素)です。
したがって、以下を使用してください(Chrome問題なく動作することを確認)でテスト済み):
pythonの例driver.find_element_by_xpath("//body").click()
最善の解決策は、次のステートメントを実行して、キーボードのTAB
キーを使用することです。
element.sendKeys(Keys.TAB);
それは次の要素に焦点を合わせます-したがってフィールド外-そしてあなたはあなたが望む結果を得るでしょう。
反応コードの空白領域をクリックする必要があります。
以下のコードは私の問題を修正しました。
driver.FindElement(By.XPath("//body")).Click();
それでも人々に役立つことを願っていますので、答えがあります=)ドロップダウン、フィールド、または他のボタンが非アクティブになる場合、Seleniumは単純なクリックで常に例外をスローします。私にとっての方法は、一時停止でアクションを使用することでした。ここに私の例のいくつかのコード行があります:
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("your path")))
.click().pause('your amount of milliseconds').click().build().perform();
それをいくつかの関数にラップすると、新しいクリッカーができます。