这绝对是一个有趣的问题,但问题是,Dalek 无法控制输入字母的速度。这是因为 JSON-Wire 协议没有为我们提供处理该问题的方法,请参见此处
即使看起来有点矫枉过正,您也可以做的一件事是添加一个带有显式等待的长函数链,如下所示:
.type('#selector', 'H')
.wait(500)
.type('#selector', 'e')
.wait(500)
.type('#selector', 'l')
.wait(500)
.type('#selector', 'l')
.wait(500)
.type('#selector', 'o')
您也可以继续编写一个实用函数来为您处理
function myType (selector, keys, test, wait) {
var keysArr = keys.split('');
keysArr.forEach(function (key) {
test.type(selector, key).wait(wait);
});
return test;
}
然后像这样在你的测试中使用它:
module.exports = {
'my test': function (test) {
test.open('http://foobar.com');
myType('#selector', 'Hello', test, 500);
test.done();
}
};