我正在尝试使用 VAADIN 作为框架在 GWT 构建网站的客户端进行自动化测试。
我已经能够遍历所有DOM元素并找到包含“按钮”的div。 (它不是一个按钮,只是文本样式看起来像一个按钮。)我尝试了click()
方法,但它永远不会触发。
这只能在客户端完成。我无法调整源代码以包含任何ID或名称。我只有找到按钮的方法。
这是我的便笺簿中的Javascript代码。这确实找到了包含“按钮”的div。
var bDivClass = "v-rasterlayout-slot";
var divs = document.getElementsByClassName(bDivClass);
for (var i = 0, len = divs.length; i < len; i++) {
divs[i].click();
if(divs[i].textContent.localeCompare("Submit Query") == 0){
console.log("Submit Button found \n" + divs[i].innerHTML);
divs[i].click();
}
}
如果我检查元素,我可以看到有几个DIV附加了点击监听器。
这是事件监听器。对于孩子和父母来说都是一样的。
如何模拟该div上的点击?
答案 0 :(得分:0)
在您的情况下,getElementsByClassName()
仅返回一个没有附加事件侦听器的顶级in-context元素。如果要模拟对该元素的每个子元素的单击,则需要迭代 childs 。你的循环实际上并没有这样做。