Селен тестовая проблема с диалогом - PullRequest
1 голос
/ 09 июня 2011

Я хочу использовать селен для тестирования моего веб-приложения.

Работает ... но ...

Для диалогового окна подтверждения я переписал метод

function confirm(text,cbk) {
                                $.prompt(text,{
                                    buttons:{Ok:true, Cancel:false},
                                    opacity: 0.3,
                                    overlayspeed: 'fast',
                                    promptspeed: 'slow',
                                    callback: function(v,m){
                                        if(v){
                                            cbk.call();
                                        }
                                        else{

                                        }
                                    }
                                });
                            }

Я использовал jquery и плагин Экспромт для графики окна подтверждения.

Я записываю свой тест с помощью Selenium IDE. После того, как я начну свой тест и тест не пройден. Тест " нажмите на ссылку и должно появиться диалоговое окно (импровизированный стиль), и после этого я хочу нажать клавишу" ОК ""

Это код теста

<!-- login page -->
<tr>
    <td>open</td>
    <td>/demoit/action/Home</td>
    <td></td>
</tr>
<!-- inser the username and the password -->
<tr>
    <td>type</td>
    <td>user_name</td>
    <td>tommaso</td>
</tr>
<tr>
    <td>type</td>
    <td>pass_word</td>
    <td>pwdtommaso</td>
</tr>
<!-- click in the login image that call a script for login -->
<tr>
    <td>clickAndWait</td>
    <td>css=body &gt; div:nth(2) &gt; p &gt; img</td>
    <td></td>
</tr>
<tr>
    <td>chooseCancelOnNextConfirmation</td>
    <td></td>
    <td></td>
</tr>
<!-- click on exit link -->
<tr>
    <td>click</td>
    <td>css=#mycontentheader &gt; table &gt; tbody &gt; tr:nth(1) &gt; td:nth(1) &gt; table.entrata &gt; tbody &gt; tr &gt; td &gt; a &gt; img</td>
    <td></td>
</tr>
<tr>
    <td>assertConfirmation</td>
    <td>Do you want to exit?</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>jqi_state0_buttonOk</td>
    <td></td>
</tr>

Это было произведено Selenium IDE .

В чем проблема?

Пожалуйста, помогите мне,

С уважением,

Томмазо

1 Ответ

2 голосов
/ 09 июня 2011

Вероятно, это проблема синхронизации.Вам нужно подождать, пока селен появится раньше, чем assertConfirmation.Также я подозреваю, что вызов действительно только для подлинных всплывающих окон JS, а не для «поддельных» всплывающих окон в стиле jQuery, которые не являются модальными, поэтому вам, вероятно, следует использовать обычный assert.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...