0

Javascriptスニペットを使用して、テキストを持つ2つのdivが別のdivに存在することを確認しようとしています[基本的に、特定の投稿に対するコメントの存在を検証します]

JS は firebug では動作しますが、selenium IDE では失敗します。

javascript{
  return ($.grep(  $("#Posts li") .map(function(index,element){
    if($(element).has(".puls_content:contains('post text')").length > 0){
      if($(element).has("*:contains('this is a comment')").length > 0) {
        return true
      }
    }
    return false
  }) , function(x){ return x}).length > 0) }

Selenium-api.js から予期しない例外エラーが発生しました。

4

1 に答える 1

0

Selenium は、firebug と同じコンテキストで JavaScript を実行しません。実際には、テストしているウィンドウの外側のセレン ウィンドウから実行しています。しかし、恐れることはありません!彼らはこれについて考えました。次のようなものを追加する必要があります

var jQuery=selenium.browserbot.getUserWindow().jQuery;

をスクリプトに追加し、すべての $ を jQuery に変更して、希望どおりに動作させるようにします。この質問と回答を確認してください。

次に、CSS または Xpath セレクターを使用してこれを行い、投稿とコメント セクションを別々に検証することをお勧めします。そうすれば、必要なものを見つけるために必要な作業が少なくなります。

于 2012-07-30T01:57:35.783 に答える