ホームページ >Java >&#&チュートリアル >Java WebDriver から JavaScript コードを実行するにはどうすればよいですか?
Java から WebDriver JavaScript を実行する: 拡張ガイド
質問で言及されているコマンド ./go webdriverjs は、設計されたシェル コマンドです。特定のフォルダーに WebDriverJs 環境をセットアップして初期化します。ただし、WebDriverJs は、Java から JavaScript スニペットを実行するのではなく、JavaScript テストを可能にする言語バインディングであることに注意することが重要です。
Java WebDriver 内で JavaScript コードを実行するには、次のアプローチを利用します。
<code class="java">WebDriver driver = new AnyDriverYouWant(); if (driver instanceof JavascriptExecutor) { ((JavascriptExecutor)driver).executeScript("yourScript();"); } else { throw new IllegalStateException("This driver does not support JavaScript!"); }</code>
代わりに、次のことを検討してください。
<code class="java">WebDriver driver = new AnyDriverYouWant(); JavascriptExecutor js; if (driver instanceof JavascriptExecutor) { js = (JavascriptExecutor)driver; } // else throw... // later on... js.executeScript("return document.getElementById('someId');");</code>
JavaScriptExecutor は、広範なドキュメントと機能を提供します。そのexecuteScript()メソッドでは、関数呼び出し、生のJS、戻り値を実行し、複雑な引数を渡すことができます。
例:
<code class="java">js.executeScript("return document.getElementById('someId');");</code>
<code class="java">WebElement element = driver.findElement(By.anything("tada")); js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
<code class="java">js.executeScript( "var inputs = document.getElementsByTagName('input');" + "for(var i = 0; i < inputs.length; i++) { " + " inputs[i].type = 'radio';" + "}" );</code>
以上がJava WebDriver から JavaScript コードを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。