セレンjsのコードの実行

値の入力入力ボックスを取得します:

1 JavascriptExecutor JS = (JavascriptExecutor)ドライバ。
2 merchatName = js.executeScript(m1.byId( "subMerName") "引数[0] .VALUEを返す")のtoString()。

 

また、実行される方法JSコードを提供するセレンで:

(オブジェクト...引数を、文字列スクリプト)executeScriptオブジェクト。        

オブジェクトexecuteAsyncScript(文字列のスクリプト、オブジェクト...引数)

1、executeScript方法は、2つのパラメータと戻り値をとります。

スクリプト、javascriptのコードスニペット、完全なボディjsの関数として、この方法jsのコードスニペット、return文は関数の戻り値として使用することができます。
引数、配列パラメータ、外部スクリプト(JS断片)へデータを転送するためのパラメータ配列、スクリプトは、引数[インデックス]引数パラメータ配列インデックス付け方法によって、パラメータのデータ型は、以下の(数、ブール値でなければなりません、文字列、WebElement、またはデータ収集リストのより多くの種類)は、当然のことながら、何のパラメータは空白のままにすることはできません。
 戻り値、戻り値はコードの断片JS return文に戻りにより算出され、戻り値のデータ型は(WebElement、ダブル、ロング、ブールかもしれ 、文字列、リストはnullまたはマップ)、ノーリターン文はありません、この戻りデータ。

2、executeAsyncScript方法は、2つのパラメータと戻り値をとります。

スクリプト、javascriptのコードスニペットは、これは主に二つの方法で完全なメソッド本体JS機能、およびexecuteScriptなどのコードスニペットをJS:
 A、ここでのスクリプトは、明示的にスクリプトの実行が終了webdriverを通知するためのコードの最後にコールバックメソッドを呼び出す必要があります;引数[arguments.lengthを-1]により取得された、とだけコールバック関数パラメータへ戻るの結果(結果を返すために、コールバック関数を使用することができ、コールバックメソッドは、配列の最後の要素にwebdriverを引数から噴射されますあなたことができます)。

B、スクリプトがタイムアウトを実行しますが、デフォルトではJavascriptExecutorがタイムアウト例外をスローし、60年代は、コールバックメソッドは、タイムアウト時間内で呼び出されていないです。
 引数、executeScriptとルール。戻り値、同じルールexecuteScript


https://blog.csdn.net/a578133380/article/details/80262681:より転載

おすすめ

転載: www.cnblogs.com/zddwork/p/11412237.html