1

Web サイトの属性 (セルの色) を取得して、Selenium で比較しようとしています。

私がこれを置くとき:

javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color");

Chrome Omnibox では正しい回答が得られますが、storeEval または assertEval を使用してこの値を取得しようとすると、正しく機能しません。
編集:このようにセレンコマンドに入れました。私は storeEval を使用し、値をエコーすると、このコマンドが返されます。私はFirefoxを使用しています。コマンドが正しいかどうかを確認するためだけにChromeを使用しました。("rgb(220, 22, 92)" のはずです) edit2: はい、コマンドは問題ありませんが、Selenium-IDE ツールでの使用に問題があります。storeEval コマンドで使用すると、値が返されません。ログ: [情報] スクリプト: var テスト javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color"); エコーテスト; [info] 実行中: |echo | ${テスト} | | | [情報] エコー: var テスト javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color"); エコーテスト;


このようにseleniumコマンドに入れます。私は storeEval を使用し、値をエコーすると、このコマンドが返されます。私はFirefoxを使用しています。コマンドが正しいかどうかを確認するためだけにChromeを使用しました。(「rgb(220, 22, 92)」である必要があります)

4

1 に答える 1

0

部品を取り外して、をjavascript:参照する必要があります。コマンドは次のようになります。documentwindow.document

window.getComputedStyle(window.document.getElementById('simple_cname'),null).getPropertyValue('background-color');

このjavascript:部分は、URL バーからコードを実行する場合にのみ必要です。他の場所では冗長です。アドレスバーの代わりに を使用してConsole、Chrome で JS コマンドを実行します。

document->のwindow.documentことは、セクションの下のドキュメントstoreEvalに記載されています。

また、スクリプトは最新のブラウザーでのみ機能することに注意してください。IE 9 未満では失敗します。問題がなければ、問題ありません。そうでない場合は、Google が解決策を提供します。

于 2012-07-02T08:34:11.173 に答える