問題タブ [user-extensions.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3264 参照

java - Selenium-Grid:`user-extensions.js`の使用方法

Selenium-Gridを使用するようにSeleniumテストを変換しています。

user-extensions.js以前に作成したものを使用できるように、selenium-gridのハブやリモートを起動する方法を見つけようとしています。拡張機能を除いて、古いテストですべてを機能させることができました。

オンラインで検索するとproject.properties、selenium-gridルートディレクトリのファイルを編集し、user_extensions.jsを指すようにuser_extension_fileプロパティを追加できることがわかりました。

また、そのプロパティの値に相対パスと絶対パスを使用しようとしましたが、いずれも機能しません。これをハブのルートセレングリッドフォルダーとRCのルートセレングリッドフォルダーの両方に追加してみました。

誰かがこれを行う方法を知っていますか?ありがとう。

0 投票する
1 に答える
613 参照

eclipse - Selenium RC - ユーザー拡張機能

http://wiki.openqa.org/display/SEL/Timer+Extensionを使用して「Timer Extension」を使用してページの応答時間を計算する計画。

「User-Extension.js」のコードをコピーし、Selenium RC のパスを更新しました。

Eclipse を使用して次のコードを実行すると、「method timerStart(string) is undefined」というエラー メッセージが表示されます。

System.out.println("テスト開始");

timerStart("ログインページ");

セレン.open(BASE_URL_1);

selenium.waitForPageToLoad(MAX_WAIT_TIME_IN_MS);

timerStop("ログインページ");

Eclipse にこの新しいメソッドを認識させるにはどうすればよいですか?

-バーラト

0 投票する
1 に答える
2105 参照

selenium - SeleniumException: エラー: 不明なコマンド

doFoo プロトタイプを定義する user-extensions.js ファイルで setExtensionJs を使用しています。これにより、Selenium が起動するたびに例外がスローされます。

もちろん、setExtensionJs 呼び出しは start 呼び出しの前にあります。

Selenium の起動:

問題なく動作します。

なぜ私が例外を受け取ったのか、誰にも分かりますか?

0 投票する
2 に答える
1197 参照

javascript - 新しいメソッドによる Selenium RC の拡張

user-extension.js を使用してセレン RC を拡張しています。新しいメソッド関数を呼び出すことはできますが、次のエラー メッセージがスローされます。

*エラー: コマンドの実行に失敗しました。ログ ウィンドウのエラーの詳細については、http://clearspace.openqa.orgのフォーラムを検索してください。エラー メッセージ: オブジェクトはこのプロパティまたはメソッドをサポートしていません*

このプログラムは Google.com で実行されるため、誰でもサンプル コードをコピーして、それぞれの PC で実行できます。

.jsと Selenium JAR は同じフォルダーにあり、次のコマンドを使用して Selenium JAR を実行します。

この問題に関するヘルプはありますか?

0 投票する
2 に答える
2051 参照

jquery - JQuery AddLocationStrategyを有効にしようとしているSelenium RC null sessionId例外の取得

インターウェブで見つけたさまざまな提案を使用して、Selenium RC で JQuery ロケーターを有効にしようと 1 日の大半を試みましたが、うまくいきませんでした。JQuery ロケーターを有効にするために、このスレッドに含まれる提案に従いました。

Selenium Remote Control に JQuery ロケーターを追加する方法

提案どおりに TestRunner ファイルにパッチを適用し、同じ修正を RemoteRunner ファイルに適用しました。また、それぞれの *.hta ファイルにもパッチを適用しました。また、縮小された jquery.min.js ファイルを JAR ファイルの lib ディレクトリに追加しました。

また、サーバー JAR をそのままにして、user-extensions.js ファイル (jquery.min.js を含む) を使用しようとしました。しかし、これもうまくいきませんでした。

いずれの場合も、次のランタイム エラーが発生します。

19:10:50.174 エラー - セッション null java.lang.NullPointerException: sessionId を null にすることはできません。このセッションはもう始まっていますか?

私の構成は次のとおりです。

Win7 64 ビット
IIS
selenium-server-1.0.3
Firefox
C#

.AddLocationStrategy() の呼び出し用に 2 種類の JavaScript を見つけました。これが私の実装です:

そして、これが私のユーティリティクラスです

呼び出しはここで失敗します:

19:10:13.297 情報 - org.openqa.jetty.jetty.Server@2747ee05 を開始しました
19:10:50.139 情報 - リソース エイリアスを確認しています
19:10:50.151 情報 - コマンド要求: addLocationStrategy[jquery,
var loc = locator;
...(残りの Javascript をエコーし​​ます)...
}] セッション null
19:14:09.796 エラー - セッション null で 'addLocationStrategy' コマンドを実行中に例外が発生しました java.lang.NullPointerException: sessionId は null であってはなりません。このセッションはもう始まっていますか?
org.openqa.selenium.server.FrameGroupCommandQueueSet.getQueueSet(FrameGroupCommandQueueSet.java:216)
で org.openqa.selenium.server.commands.SeleniumCoreCommand.execute(SeleniumCoreCommand.java:34) で

0 投票する
1 に答える
975 参照

python - Selenium サーバーに対して Python RC を実行しているときに、user-extensions.js ファイルからカスタム Selenium アサート関数を実行できない

Selenium IDE から Selenium スクリプトを Python にエクスポートしようとしています。ただし、いくつかの user-extension.js 関数を使用しています (Selenium IDE で動作しています)。Python にエクスポートすると、生成されたスクリプトは次のようになります。

ユーザー拡張コードを呼び出す最も興味深い行 (user-extensions.js ファイルの関数 "assertSomething" にマップされる関数 "assert_something") がコメント化されていることに注意してください。その行をアクティブにして、次のように Selenium サーバーに対してスクリプトを実行すると:

次のようなエラーが表示されます。

Selenium IDE がカスタム コールをコメントアウトする理由と、Python から実行しない理由を教えてください。

次のようにSeleniumサーバーを起動したことに注意してください。

ご協力いただきありがとうございます!

0 投票する
1 に答える
591 参照

python - user-extensions.js のカスタム ロケーター関数を使用して Selenium RC (Python) からカスタム アサート関数を呼び出す

ページ上の特定の要素を見つけるために、user-extensions.js にも実装されているカスタム ロケーター関数を使用するカスタム アサート関数を user-extensions.js に記述しました。

詳細に入ることなく; ページ上の別の名前空間で要素を見つけようとしているため、カスタム ロケーター関数が必要です。これは、Selenium がネイティブにサポートしていないようです。

Selenium IDE からカスタム アサート関数を呼び出すと、カスタム ロケータ関数を「暗黙的に」使用して、探している要素を検索し、アサートを実行して、すべて正常に動作します。「暗黙的に」とは、ターゲット「abc = ...」でアサート関数を呼び出すことを意味し、Selenium IDE は、locateElementByAbc ロケーター関数を使用して特定の要素を検索する必要があることを認識します。

ただし、Python で do_command 関数を使用して Selenium RC (Python) から同じカスタム アサート関数を呼び出すと、カスタム ロケーター関数は明らかに暗黙的に呼び出されず、要素が見つかりません。

Selenium RC Python スクリプトを作成して、locateElementByAbc 関数を使用するにはどうすればよいですか? Seleniumサーバーの起動時にuser-extensions.jsがロードされるため、その部分が機能していることに注意してください。assert 関数は、Python から Selenium do_command 関数を使用して呼び出すこともできます。

ご協力ありがとうございます。

0 投票する
3 に答える
1244 参照

selenium - Selenium サーバーで SelBlocks 拡張機能を使用するとエラーが発生する

SelBlocks 拡張機能を使用して、Selenium html スクリプトを記録/作成しています。次に、Selenium サーバーを使用して、さまざまなブラウザーでテストを実行します。

SelBlock xpi から JavaScript を抽出して取得し、セレン サーバーのバット ファイルでその JavaScript を参照しようとしました。javascript を参照してバット ファイルを実行しようとすると、Internet Explorer で実行すると「Line: 777 Error: 'XML' is undefined」というエラーが表示されます。これは、テスト スクリプトが TestRunner にロードされるときに発生します。

Firefox で実行しようとすると、スクリプトを実行する直前に TestRunner がハングします。

Selenium Server 2.1、Firefox 5、および IE8 を使用しています。

0 投票する
2 に答える
337 参照

selenium-rc - セレンRCのユーザー拡張は必要ですか?

testNGフレームワークを使用してSelenium自動化のためにEclipseでプロジェクトを作成しました。過去にユーザー拡張子ファイルを使用したことはありませんが、ユーザー拡張子ファイルを使用する必要があると聞きました。このファイルの適切な使用法がわからないため、使用したことがなく、プロジェクトはスムーズに実行されます。ここで問題となるのは、ユーザー拡張ファイルを使用していないために、後で問題が発生するのでしょうか。ユーザー拡張ファイルに関するアイデアをいくつか教えてください。また、セレンRCプロジェクトでの使用が必須かどうかを教えてください。

前もって感謝します

0 投票する
3 に答える
5614 参照

java - SeleniumWebDriverでuser-extensions.jsを呼び出す方法

user-extensions.jsで定義されている関数を使用する必要があります。RCからwebdriverへの移行中です。runScriptとgetEvalを置き換えるJavascriptExecutorがあることを知りましたが、user-extensions.jsファイルをどのように指定しますか。java -jar selenium-server-standalone.jar -userExtensions user-extensions.jsと同じですか?