2
<div id="member_sel_div" style="">
    <table class="dataTable" width="100%" cellspacing="0" cellpadding="0" border="0" summary="">
        <tbody>
               <tr class="heding">
                   <tr class="odd">
                           <td valign="top" width="4%">

                               <input id="mgrp_-1" class="reset" type="checkbox" onclick="showMembers(-1, 0)" value="-1" name="member_group_id[]" style="position: absolute; z-index: -1; visibility: hidden;"/>

                               <span class="jquery-checkbox jquery-checkbox-checked" style="-moz-user-select: none;">


                              <span class="mark jquery-checkbox-hover">

                              <img width="24" height="24" src="/purebenefits/dev/images/empty.png"/>

                             </span>
                         </span>
                    </td>

                   <td valign="top" style="padding-left:0;">NO GROUP</td>

            </tr>

複数のチェックボックスが表示され、各チェックボックスをクリックすると関数 showMembers(checkbox value, 0) が呼び出されるテストケースに取り組んでいます

私のテストケースでは、最初にチェックボックスの数を数えてから、ループを使用して各チェックボックスをクリックすることもできますが、チェックボックスをクリックしても onclick 関数が起動しないため、続行できません。私もfireevent関数を使用しましたが、結果は同じです

私はセレンIDEを使用しています。セクションのhtmlコードは上にあり、セレンIDE用に書いたコードは下にあります

<tr>
    <td>assertTextPresent</td>
    <td>New Quote</td>
    <td></td>
</tr>
<tr>
    <td>select</td>
    <td>name=insurance_type_id</td>
    <td>label=Group Life Assurance</td>
</tr>
<tr>
    <td>verifyTextPresent</td>
    <td>Policy Features </td>
    <td></td>
</tr>
<tr>
    <td>assertTextPresent</td>
    <td>Bronze</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>//div[@id='product_list_div']/table[@class='priceTable']/tbody/tr/th[4]/label/input[@id='prodid_6']</td>
    <td></td>
</tr>
<tr>
    <td>storeXpathCount</td>
    <td>//div[@id='member_sel_div']/table[@class='dataTable']/tbody/tr[@class='odd']/td/input[@type='checkbox']/</td>
    <td>count</td>
</tr>
<tr>
    <td>echo</td>
    <td>${count}</td>
    <td></td>
</tr>
<tr>
    <td>getEval</td>
    <td>alert(&quot;Number of Group : ${count}&quot;)</td>
    <td></td>
</tr>
<tr>
    <td>store</td>
    <td>1</td>
    <td>j</td>
</tr>
<tr>
    <td>store</td>
    <td>1</td>
    <td>i</td>
</tr>
<tr>
    <td>store</td>
    <td>javascript{storedVars.count;}</td>
    <td></td>
</tr>
<tr>
    <td>while</td>
    <td>storedVars.i&lt;=${count}</td>
    <td></td>
</tr>
<tr>
    <td>echo</td>
    <td>${i}</td>
    <td></td>
</tr>
<tr>
    <td>echo</td>
    <td>${j}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>${i}-${j}</td>
    <td>k</td>
</tr>
<tr>
    <td>storeEval</td>
    <td>window.document.getElementsByName('member_group_id[]')[${k}].value</td>
    <td>abc</td>
</tr>
<tr>
    <td>echo</td>
    <td>${abc}</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>//div[@id='member_sel_div']/table[@class='dataTable']/tbody/tr[@class='odd']/td/input[@value='${abc}']/</td>
    <td></td>
</tr>
<tr>
    <td>fireEvent</td>
    <td>//div[@id='member_sel_div']/table[@class='dataTable']/tbody/tr[@class='odd']/td/input[@value='${abc}']</td>
    <td>&quot;click&quot;</td>
</tr>
<tr>
    <td>store</td>
    <td>javascript{storedVars.i++;}</td>
    <td></td>
</tr>
<tr>
    <td>endWhile</td>
    <td></td>
    <td></td>
</tr>
4

1 に答える 1

0

fireEvent を適用する前に、その要素に Focusing を試しましたか? そういう場合もあるでしょう。

于 2012-09-28T08:01:24.687 に答える