1

私のコードでは、ajaxリクエストを実行する前は、テーブルの行の不透明度は0.5であり、ajaxリクエストが完了すると不透明度は1になります。

waitForConditionメソッドのテーブル行の不透明度を使用して、ajaxリクエストの読み込みが完了したかどうかを確認しています。コードは機能していません。毎回タイムアウトします。waitForConditionの前後の不透明度の値を確認しました。返された値は正しいですが、それでもタイムアウトになります。

私が使ったコードはこんな感じです

<tr>
  <td>echo</td>
  <td>javascript{selenium.browserbot.getCurrentWindow().document.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].style.opacity}</td>
  <td></td>
</tr>
<tr>
  <td>waitForCondition</td>
  <td>javascript{selenium.browserbot.getCurrentWindow().document.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].style.opacity == 1}</td>
  <td>30000</td>
</tr>
<tr>
  <td>echo</td>
  <td>javascript{selenium.browserbot.getCurrentWindow().document.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].style.opacity}</td>
  <td></td>
</tr>
4

1 に答える 1

0

私は自分の問題の解決策を持っています。

このメソッドは、このメソッドにjavascriptを与えていると暗黙的に見なすため、waitForConditionでjavascript{}コンストラクトを使用する必要はありませんでした。

したがって、正しい式は次のとおりです。

<tr>
  <td>waitForCondition</td>
  <td>selenium.browserbot.getCurrentWindow().document.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].style.opacity == 1</td>
  <td>30000</td>
</tr>
于 2012-08-29T07:12:56.457 に答える