我正在做一个研究项目,其中包括Android自动化。需要自动执行在用户点击屏幕时记录的步骤。
我花了整整2天的时间来找到通过PC端识别屏幕上被点击元素的正确方法(在设备本身上也可以)。
我们需要向自动化框架提供ID,文本等。这有点像自动化框架的反向版本。需要记录硒添加物之类的步骤。
有人可以建议我实现我的要求的方法吗?无需示例代码。寻找有关如何实施此要求的想法。
谢谢
答案 0 :(得分:0)
这是对您有帮助的方法。
1)获取文档中的所有元素
2)为每个步骤添加一个自定义事件侦听器
3)使用事件监听器跟踪点击
这是示例代码,我是如何在其中一个chrome插件中做到这一点的。
this.AddEventListeners = function()
{
var document = window.document;
var elements = this.GetAllElements(document.body);
for (var i = 0; i < elements.length; i++) {
// not sure if it's onTouchEvent event or something else (update the event accordingly in the below line)
elements[i].addEventListener("onTouchEvent", customTapEvent, false);
}
this.haveEventListeners = true;
}
GetAllElements方法:
this.GetAllElements = function(element)
{
var elements = new Array();
if (element && element.hasChildNodes()) {
elements.push(element);
var childs = element.childNodes;
for (var i = 0; i < childs.length; i++) {
if (childs[i].hasChildNodes()) {
elements = elements.concat(this.GetAllElements(childs[i]));
}
else if (childs[i].nodeType == 1) {
elements.push(childs[i]);
}
}
}
return elements;
}
用customTapEvent
方法编写逻辑。
答案 1 :(得分:0)
要记录您的事件,您需要使用 Appium (Android + iOS)。有关步骤,您可以尝试黄瓜库。您可以在youtube上找到所需的所有内容。