移動應(yīng)用頁面對象的定位方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件測試技術(shù)領(lǐng)域,尤其涉及一種移動應(yīng)用頁面對象的定位方法和裝置。
【背景技術(shù)】
[0002]隨著移動互聯(lián)網(wǎng)技術(shù)蓬勃發(fā)展,移動應(yīng)用(Android/1S應(yīng)用)的規(guī)模越來越大,如何通過有效的測試來保證移動應(yīng)用的質(zhì)量,也成了擺在所有移動應(yīng)用開發(fā)團隊面前的一道難題。面對頻繁的版本發(fā)布、眾多的設(shè)備類型,純手工測試逐漸無法應(yīng)對,自動化測試的需求隨之越來越大。自動化測試是通自動的方式來模擬用戶的每一步操作,每一個步驟都由“對象定位”和“對象操作”組成,其中首要任務(wù)就是“對象定位”。
[0003]傳統(tǒng)自動化測試過程中移動應(yīng)用頁面對象的定位都必須使用事先指定的數(shù)據(jù)信息,不能夠根據(jù)移動應(yīng)用頁面對象的各種數(shù)據(jù)信息(id、文本、路徑、坐標)和移動設(shè)備(錄制時使用的移動設(shè)備和回放時使用的移動設(shè)備)的屏幕屬性分辨率和像素密度自適應(yīng)地定位移動應(yīng)用頁面對象,自動化測試腳本兼容性差。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
[0005]為此,本發(fā)明的一個目的在于提出一種移動應(yīng)用頁面對象的定位方法,能夠自適應(yīng)地確定合適的定位策略,提升自動化測試腳本回放時移動應(yīng)用頁面對象定位的準確性和兼容性。
[0006]本發(fā)明的另一個目的在于提出一種移動應(yīng)用頁面對象的定位裝置。
[0007]為達到上述目的,本發(fā)明第一方面實施例提出的移動應(yīng)用頁面對象的定位方法,包括:獲取移動應(yīng)用頁面對象的數(shù)據(jù)信息,其中,所述數(shù)據(jù)信息包括id、文本、路徑,以及坐標;獲取所述id的狀態(tài),或者,獲取所述文本的狀態(tài),以得到狀態(tài)結(jié)果,其中,所述狀態(tài)結(jié)果為空值、不存在、值不唯一、有唯一值中的任一種;如果所述狀態(tài)結(jié)果為所述id和所述文本是空值或不存在,則執(zhí)行第一判斷過程,如果所述狀態(tài)結(jié)果為所述id值不唯一和所述文本是空值或不存在,則執(zhí)行第二判斷過程,如果所述狀態(tài)結(jié)果為所述文本值不唯一和所述id是空值或不存在,則執(zhí)行第三判斷過程,其中,所述第一判斷過程為判斷所述路徑是否存在,在所述路徑不存在時,判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述坐標定位所述移動應(yīng)用頁面對象;所述第二判斷過程為判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述id和所述坐標共同定位所述移動應(yīng)用頁面對象;所述第三判斷過程為判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述文本和所述坐標共同定位所述移動應(yīng)用頁面對象。
[0008]本發(fā)明第一方面實施例提出的移動應(yīng)用頁面對象的定位方法,通過在移動應(yīng)用頁面對象的id和文本是空值或不存在,且路徑不存在,錄制和回放的移動設(shè)備的屏幕相同時,用坐標定位移動應(yīng)用頁面對象,在id值不唯一和文本是空值或不存在,且錄制和回放的移動設(shè)備的屏幕相同時,用id和坐標共同定位移動應(yīng)用頁面對象,在文本值不唯一和id是空值或不存在,且錄制和回放的移動設(shè)備的屏幕相同時,用文本和坐標共同定位移動應(yīng)用頁面對象,能夠自適應(yīng)地確定合適的定位策略,提升自動化測試腳本回放時移動應(yīng)用頁面對象定位的準確性和兼容性。
[0009]為達到上述目的,本發(fā)明第二方面實施例提出的移動應(yīng)用頁面對象的定位裝置,包括:數(shù)據(jù)信息獲取模塊,用于獲取移動應(yīng)用頁面對象的數(shù)據(jù)信息,其中,所述數(shù)據(jù)信息包括id、文本、路徑,以及坐標;狀態(tài)結(jié)果獲取模塊,用于獲取所述id的狀態(tài),或者,獲取所述文本的狀態(tài),以及,判斷所述路徑是否存在,判斷錄制和回放的移動設(shè)備的屏幕是否相同,以得到狀態(tài)結(jié)果;執(zhí)行模塊,用于在所述狀態(tài)結(jié)果為所述id和所述文本是空值或不存在時,執(zhí)行第一判斷過程,在所述狀態(tài)結(jié)果為所述id值不唯一和所述文本是空值或不存在時,執(zhí)行第二判斷過程,在所述狀態(tài)結(jié)果為所述文本值不唯一和所述id是空值或不存在時,執(zhí)行第三判斷過程,其中,所述第一判斷過程為判斷所述路徑是否存在,在所述路徑不存在時,判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述坐標定位所述移動應(yīng)用頁面對象;所述第二判斷過程為判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述id和所述坐標共同定位所述移動應(yīng)用頁面對象;所述第三判斷過程為判斷錄制和回放的移動設(shè)備的屏幕是否相同,并在所述錄制和回放的移動設(shè)備的屏幕相同時,用所述文本和所述坐標共同定位所述移動應(yīng)用頁面對象。
[0010]本發(fā)明第二方面實施例提出的移動應(yīng)用頁面對象的定位裝置,通過在移動應(yīng)用頁面對象的id和文本是空值或不存在,且路徑不存在,錄制和回放的移動設(shè)備的屏幕相同時,用坐標定位移動應(yīng)用頁面對象,在id值不唯一和文本是空值或不存在,且錄制和回放的移動設(shè)備的屏幕相同時,用id和坐標共同定位移動應(yīng)用頁面對象,在文本值不唯一和id是空值或不存在,且錄制和回放的移動設(shè)備的屏幕相同時,用文本和坐標共同定位移動應(yīng)用頁面對象,能夠自適應(yīng)地確定合適的定位策略,提升自動化測試腳本回放時移動應(yīng)用頁面對象定位的準確性和兼容性。
[0011]本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
【附圖說明】
[0012]本發(fā)明上述的和/或附加的方面和優(yōu)點從下面結(jié)合附圖對實施例的描述中將變得明顯和容易理解,其中:
[0013]圖1是本發(fā)明一實施例提出的移動應(yīng)用頁面對象的定位方法的流程示意圖;
[0014]圖2是本發(fā)明實施例中對象定位方法示意圖;
[0015]圖3是本發(fā)明實施例中獲取到的移動應(yīng)用頁面對象的完整數(shù)據(jù)信息示意圖;
[0016]圖4是本發(fā)明另一實施例提出的移動應(yīng)用頁面對象的定位方法的流程示意圖;
[0017]圖5是本發(fā)明另一實施例提出的移動應(yīng)用頁面對象的定位裝置的結(jié)構(gòu)示意圖;
[0018]圖6是本發(fā)明另一實施例提出的移動應(yīng)用頁面對象的定位裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0019]下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。相反,本發(fā)明的實施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0020]圖1是本發(fā)明一實施例提出的移動應(yīng)用頁面對象的定位方法的流程示意圖,該方法包括:
[0021]S11:獲取移動應(yīng)用頁面對象的數(shù)據(jù)信息,其中,數(shù)據(jù)信息包括id、文本、路徑,以及坐標。
[0022]其中,移動應(yīng)用是移動設(shè)備上的應(yīng)用程序。
[0023]移動設(shè)備例如智能手機,或者平板電腦等。
[0024]應(yīng)用程序可以是指運行在電子設(shè)備上的軟件程序,電子設(shè)備例如為個人電腦(Personal Computer, PC),云端設(shè)備或者移動設(shè)備。
[0025]移動應(yīng)用頁面例如用戶點擊移動設(shè)備上的應(yīng)用程序后,移動設(shè)備屏幕上的跳轉(zhuǎn)界面。
[0026]在計算機技術(shù)領(lǐng)域,對象是指類在內(nèi)存中裝載的實例,具有相關(guān)的成員變量和成員函數(shù)。
[0027]對象例如按鈕、圖片、文本、輸入框等。
[0028]id是頁面元素的標識屬性。
[0029]文本是計算機的一種文檔類型,該類文檔主要用于記載和儲存文字信息,而不是圖像、聲音和格式化數(shù)據(jù)。
[0030]在本發(fā)明中,路徑可以用可擴展標記語言路徑語言(Xml Path Language,XPath)語法來描述,路徑描述的對象可以例如可擴展標記語言(Extensible Markup Language,XML)對象,或者超級文本標記語言(Hyper Text Markup Language,HTML)對象。
[0031 ] 坐標是確定位置關(guān)系的數(shù)據(jù)值集合。
[0032]具體地,可以獲取移