1

セレンのbrowser.getEval関数は、iterateNextにnullを返すようにします..それ以外の場合、firebugでは値を返します(同じスクリプト)

document.evaluate("//button[text()='Save']",
                  document, 
                  null,
                  XPathResult.ANY_TYPE,
                  null)
        .iterateNext()
        .disabled;

true を返します

しかし

browser.getEval("document.evaluate(\"//button[text()='Save']\", 
                                     document,
                                     null,
                                     XPathResult.ANY_TYPE,
                                     null)
                         .iterateNext()
                         .disabled;");

そのエラーを次のように返します。

"com.thoughtworks.selenium.SeleniumException: エラー: 例外がスローされました: res.iterateNext() が null です"

4

3 に答える 3

1

で置き換えdocument.evaluateてみてくださいthis.browserbot.getUserWindow().document.evaluate

于 2009-10-22T12:39:17.263 に答える
0
window.document.evaluate()
于 2009-10-27T18:31:14.553 に答える
0

交換してみる

document.evaluate

selenium.browserbot.getCurrentWindow().document.evaluate
于 2010-05-08T17:45:23.253 に答える