Очистка входного текстового поля с помощью FuncUnit

Я пишу FuncUnit для моего приложения. Я просматриваю приложение в Google Chrome. У меня есть текстовое поле, которое изначально скрыто. Мне нужно сделать его видимым, а затем очистить текст, уже присутствующий в этом текстовом поле. У меня есть следующий код, который делает поле видимым, но не может очистить текст в нем.

 S('#search').visible().clearText();

Может кто-нибудь сказать, что здесь не так?

4 ответа

Ваше утверждение не является точным. visible() не делает вещи видимыми Это функция ожидания, которая ждет, пока исходный элемент станет видимым, прежде чем перейти к следующему действию.

последовательность клавиш Коаликс работает. С помощью команды type() вам может понадобиться сначала щелкнуть текстовый ввод перед его очисткой.

Пытаться:

S('#search').visible().click().type('[ctrl]a[ctrl-up][delete]');

Вы также можете попробовать пустые кавычки <"">

var input = S('input.my-input');

input.type('', function() {
    // remove existing text
});

Попробуйте очистить текстовое поле, набрав - Ctrl+A и Delete.

var input = S('input.my-input');

input.type('[ctrl]a[ctrl-up][delete]', function() {
    // Continue in test case after the text has been removed
});

Я не знаю, ждешь ли ты еще ответа. Я думаю, что вы не используете visible() в правильном пути.

В FuncUnit (см. Документацию здесь), помимо прочего, вы можете различать "действия" и "ожидания". visible() это ожидание, и его следует использовать, чтобы дождаться, когда элемент станет видимым, например так:

    S('#el').visible( function() {
        // do something when element with id="el" becomes visible
    });
Другие вопросы по тегам