จะระบุ ID องค์ประกอบที่ถูกแตะใน Android ได้อย่างไร

ฉันกำลังทำโครงการวิจัยซึ่งรวมถึงระบบอัตโนมัติของ Android จำเป็นต้องทำตามขั้นตอนอัตโนมัติซึ่งบันทึกในขณะที่ผู้ใช้แตะบนหน้าจอ

ฉันใช้เวลาทั้งหมด 2 วันในการหาวิธีที่เหมาะสมในการระบุองค์ประกอบที่แตะบนหน้าจอผ่านทางฝั่งพีซี (บนอุปกรณ์เองก็ใช้ได้เช่นกัน)

เราจำเป็นต้องระบุ ID ข้อความ ฯลฯ ให้กับเฟรมเวิร์กระบบอัตโนมัติ นี่เป็นสิ่งที่คล้ายกับเฟรมเวิร์กระบบอัตโนมัติเวอร์ชันย้อนกลับ จำเป็นต้องบันทึกขั้นตอนเช่นซีลีเนียม addon

ใครสามารถแนะนำวิธีที่จะบรรลุความต้องการของฉันได้บ้าง ไม่จำเป็นต้องมีโค้ดตัวอย่าง กำลังมองหาแนวคิดเกี่ยวกับวิธีการปฏิบัติตามข้อกำหนดนี้

ขอบคุณ


person www    schedule 02.05.2019    source แหล่งที่มา


คำตอบ (2)


นี่คือแนวทางที่จะช่วยคุณได้

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;
}

เขียนตรรกะในเมธอด thecustomTapEvent

person supputuri    schedule 02.05.2019
comment
@www สิ่งนี้มีประโยชน์หรือไม่? แจ้งให้เราทราบหากคุณต้องการข้อมูลเพิ่มเติม - person supputuri; 04.05.2019

ในการบันทึกกิจกรรมของคุณ คุณต้องใช้ Appium (android + iOS) สำหรับขั้นตอนต่างๆ คุณสามารถลองใช้ไลบรารี แตงกวา คุณพบทุกสิ่งที่คุณต้องการบน youtube

person rusu dan    schedule 03.05.2019