2

Webページで非同期に実行されるデータベースのページ2へのクリックを自動化しようとしています。Xpathを使用する場合:

//id('standardView')/x:div[3]/x:div[3]/x:a[1]

次のエラーが発生します。

[error] Invalid xpath [2]: //id('rightMenu')/x:div[3]/x:div[3]/x:a[1]

そこで、DOMを使用してそのパスを見つけようとしました。以下のコードは、Firebugで実行したときにプッシュされる実際のリンクを表示します...

   main = document.getElementById("rightMenu"); mainCont = main.contentDocument;
   paging = mainCont.getElementsByTagName("a"); pageTwo = paging[0];

Firebugは以下を表示します:

<a href="javascript:chgPage(2);">

しかし、Seleniumはこのエラーをスローしています:

[error] Unexpected Exception: fileName -> chrome://selenium-ide/content/selenium-
core/scripts/selenium-api.js, lineNumber -> 2535, columnNumber -> 45

そして、アクションを記録するだけでは、ボタンが押されていることを認識していません。回避策が見つからないようです。何か洞察、私の友達?

4

1 に答える 1

2

ちょっと奇妙なxpath。使用してみてください//*[@id='standardView']/div[3]/div[3]/a[1]

ただし、インデックスを使用せず、できるだけ短いセレクターを使用するようにしてください

//a[@href='javascript:chgPage(2);']

また

//*[@id='standardView']//a[@href='javascript:chgPage(2);']

これらも同様に機能します(一意の場合は、firepathプラグインでfirebugを確認してください)

于 2013-03-23T01:42:00.193 に答える