Selenium IDEでこのアンカータグをクリックするのを自動化するにはどうしたらいいですか?私は2つの異なる方法を試しましたが、どちらも効果がありませんでした。これがポップアップウィンドウにあることが重要ですか?私は他のコントロールを働かせることができます。Selenium IDEがポップアップウィンドウのclickAndWaitコマンドでスタックする
HTML:
<のhref = "javascriptを:__ doPostBack( 'EditTestResult $ EditOverallTestResults $ BucketMove $ LBuSelect'、 '')" クラス= "標準テキスト" ID = "EditTestResult_EditOverallTestResults_BucketMove_LBuSelect"> - >
コマンド:動作しませんでした</A>
セレンコードがclickAndWait
対象:ID = EditTestResult_ EditOverallTestResults_BucketMove_LBuSelect
値:
セレンコードは動作しませんでした:
コマンド:clickAndWait
ターゲット:リンク= - >
値:
を====== ====================
2011/08/7更新
だから私はこの情報を得ました。私は私の "clickAndWait" コマンドでスクリプト( "S" のキープレス)を起動すると
オプション1:
コマンド:addSelection
対象:ID = idofmultiselect
値このコマンドの前のコマンドは以下のとおりです。上記のとおり、両方のバージョンでうまく動作します。 これは、IDEがclickAndWaitコマンドでSTUCKを取得したときに、この複数選択を選択したときです。私は "addSelectionAndWait"を使ってみましたが、それは修正されませんでした。
==========================
2011年8月8日更新
私は置くことができません実際のダイナミックコードが入っているので、これで十分です。
<html>
<body>
<form>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span id="EditTestResult_EditOverallTestResults_BucketMove_LblUnselectedBox">Does Not Have Results...</span><br>
<select size="4" name="EditTestResult$EditOverallTestResults$BucketMove$LBoUnselected" multiple="multiple" id="EditTestResult_EditOverallTestResults_BucketMove_LBoUnselected" style="height:100px;width:220px;">
<option value="214">Cocaine/Metabolite - Positive</option>
<option value="213">Opiate - Positive</option>
<option value="37">Phencyclidine - Positive</option>
<option value="58">THC Metabolite - Positive</option>
</select></td>
<td vAlign="middle">
<table>
<tr>
<td><a id="EditTestResult_EditOverallTestResults_BucketMove_LBuSelect" class="standard-text" href="javascript:__doPostBack('EditTestResult$EditOverallTestResults$BucketMove$LBuSelect','')">-></a></td>
</tr>
<tr>
<td><a id="EditTestResult_EditOverallTestResults_BucketMove_LBuUnselect" class="standard-text" href="javascript:__doPostBack('EditTestResult$EditOverallTestResults$BucketMove$LBuUnselect','')"><-</a></td>
</tr>
</table>
</td>
<td><span id="EditTestResult_EditOverallTestResults_BucketMove_LblSelectedBox">Has Results...</span><br>
<select size="4" name="EditTestResult$EditOverallTestResults$BucketMove$LBoSelected" multiple="multiple" id="EditTestResult_EditOverallTestResults_BucketMove_LBoSelected" style="height:100px;width:220px;">
<option value="206">Amphetamine - Positive</option>
</select></td>
</tr>
</table>
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['Form1'];
if (!theForm) {
theForm = document.Form1;
}
function __doPostBack(eventTarget, eventArgument) {
alert("doing postback");
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
</form>
</body>
</html>
====================
2011年8月22日更新:
は、ASP.NETの検証が発生する可能性がありますことを発見暗黙的に失敗するclickAndWaitコマンドSeleniumでスクリプトを実行している場合、Selenium IDEの検証メッセージは、Webブラウザを手動で使用した場合のようには表示されません。したがって、コマンドが失敗するように見えるかもしれませんが、実際にはフォームは送信できず、マウスでボタンを手動でクリックすると通常通りに赤色の確認メッセージがブラウザに表示されません。それを行うclickAndWaitコマンド)。それは私の問題の束を固定しましたが、これは問題ではありません。私はまだ答えを探しています。
ありがとうございます。はい、これはフォームに含まれるものの単なるスニペットです。私は今日後でこれをテストします。私はそれが完全なポストバックをしていると思います。それは "__doPostBack"を呼び出します。私たちのアプリの機能の束は今、AJAXを使用しています...それは私が変換しようとしてきたものです。しかし、私はこれを撃つだろう。助けを求める投票。私はそれが動作するかどうかをお知らせします – MacGyver
私の他の選択肢は、別のコントロールを使用するだけです。ユーザーに余分なクリックをする必要はありません。このフォームの目的は、雇用前の薬物検査のための検体のリストを取得することです。だから、 " - >"ボタンをクリックするだけで、コントロール+クリックされたものが正しいコントロールに移動します。 – MacGyver
これは正解ではありませんが、私は戻ってこれを再現するつもりはありません。私はあなたにいくつかの無料ポイントを与えるでしょう。私は現在WebDriverを使用しています。 Selenium IDEには非常に多くのバグがあります。 – MacGyver