我正在为我的应用程序编写 FuncUnit。我正在 Google Chrome 中浏览应用程序。我有一个最初隐藏的文本框。我需要使其可见,然后清除该文本框中已经存在的文本。我有以下代码使该框可见但无法清除其中的文本。
S('#search').visible().clearText();
谁能告诉这里有什么问题?
我正在为我的应用程序编写 FuncUnit。我正在 Google Chrome 中浏览应用程序。我有一个最初隐藏的文本框。我需要使其可见,然后清除该文本框中已经存在的文本。我有以下代码使该框可见但无法清除其中的文本。
S('#search').visible().clearText();
谁能告诉这里有什么问题?
你的说法不准确。visible()
不会使事物可见。这是一个等待函数,它等待源元素变为可见,然后再进行下一个操作。
koalix 的按键序列有效。使用 type() 命令,您可能需要先单击文本输入,然后再清除它。
尝试:
S('#search').visible().click().type('[ctrl]a[ctrl-up][delete]');
尝试通过键入 - 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
});
您也可以尝试空引号 <" ">
var input = S('input.my-input');
input.type('', function() {
// remove existing text
});
我不知道你是否还在等待答案。我认为你没有visible()
以正确的方式使用。
在 FuncUnit(请参阅此处的文档)中,您可以区分“动作”和“等待”。visible()
是一个等待,应该用来等待一个元素变得可见,像这样:
S('#el').visible( function() {
// do something when element with id="el" becomes visible
});