Nightwatch JS: Browser.execute does not execute javascript



我的测试目标是检查文本字段输入是否为空

当我在Nightwatch中使用browser.execute((命令时,我想添加一些简单的javascript来检查文本字段是否为空,那么Nightwatk正在跳过该块。如果我在开发工具中运行JS代码,它是有效的,但当我将其转换为Nightwatch时,它失败了。我可能误解了browser.execute的概念,所以我希望有人能告诉我我做错了什么。

提前谢谢。

Nightwatch code
this.api.execute(
function() {
let element = document.getElementById('autocomplete-input').value;
console.log(element);
if(element.length == 0 || element === ""){
console.log('Element is empty')
}
})
},

JS code
function testing1() {
let element = document.getElementById('autocomplete-input').value;
console.log(element);
if(element.length == 0 && element === ""){
console.log('Element is empty')
}
}

如果在Nightwatch Docs中查找.execute((,它需要一个主体、一个将传递给函数的参数数组和一个可选的回调函数。既然有了body,那么添加一个空数组就可以了。

browser.execute(function testing1() {
let element = document.getElementById('autocomplete-input').value;
console.log(element);
if(element.length == 0 && element === ""){
console.log('Element is empty')
}
}, [])

最新更新