Господа, у меня очень тупой новичковый вопрос, но так получилось, что с автотестированием знакомлюсь буквально на ходу. Пишу пока тупо xmlем, программирования не знаю от слова "совсем" пока, увы.
Есть задача - проверить корректность ввода текста в текстовые поля в профиле (имя, фамилия etc.). При этом текст вводится несколько раз подряд, т.к. прогоняются разные верные-неверные варианты. Вопрос: какую команду на ввод текста тут использовать наиболее корректно?
type - вводится, но не кликается кнопка на сохранение изменений.
sendKey - сохраненный ранее текст не стирается и вводится заново, что приводит к ошибкам.
TypeKey - заменяет текст, но при многократном вводе почему-то не вписывает вообще ничего, текст из полей просто стирается.
Собственно, кто виноват, что делать и как это обойти?
Пока решила вот так:
<td>sendKeys</td>
<td>id=family</td>
<td>фамилия1</td>
</tr>
<!--Заполнили фамилию с цифрой-->
<tr>
<td>waitForTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<!--Появляется сообщение об ошибке-->
<tr>
<td>clickAndWait</td>
<td>link=pusto</td>
<td></td>
</tr>
<tr>
<td>sendKeys</td>
<td>id=family</td>
<td>фамилияa</td>
</tr>
<!--Заполнили фамилию с латинской буковй-->
<tr>
<td>waitForTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<!--Появляется сообщение об ошибке-->
<tr>
<td>clickAndWait</td>
<td>link=pusto</td>
<td></td>
</tr>
<tr>
<td>sendKeys</td>
<td>id=family</td>
<td>фами лия </td>
</tr>
<!--Заполнили фамилию с пробелом-->
<tr>
<td>waitForTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Фамилия должна состоять из русских букв без пробелов. Допускается написание через дефис</td>
<td></td>
</tr>
<!--Появляется сообщение об ошибке-->
<tr>
<td>clickAndWait</td>
<td>link=pusto</td>
<td></td>
</tr>
То есть, наверное, понятно - после каждой проверки следует клик на ссылку профиля и обновление страницы.
Минусы - текст все равно не стирается, просто в качестве дефолтных фио на тесте стоит одна буква. Но это косяк.
- Лишние действия, удлиннение кода, я не программер, но понимаю, что это не гуд.
- Вообще это извращение, которое мне чисто эстетически не нравится.
Собственно, кто виноват, кроме моих кривых рук, и как решить ситуацию менее извратным путем?