對移動終端進行測試的方法及裝置的制造方法
【專利摘要】本發明公開了一種對移動終端進行測試的方法及裝置,至少能夠解決傳統的測試方式一旦出錯后必須經歷復雜的操作才能重新完成測試的技術問題。該方法包括:接收并安裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯;通過ADB命令入口接收測試指令;其中,所述測試指令中包含操作類型標識和/或操作對象標識;根據所述測試安裝包中與所述操作類型標識和/或操作對象標識對應的操作邏輯進行測試。
【專利說明】
對移動終端進行測試的方法及裝置
技術領域
[0001] 本發明設及網絡通信技術領域,具體設及一種對移動終端進行測試的方法及裝 置。
【背景技術】
[0002] 隨著移動終端的大量普及,移動終端的測試需求也日益增加,常常需要同時對多 部移動終端進行測試,因此,為了提高效率,通常采用自動化測試方式進行測試。
[0003] 為了實現移動終端的自動化測試效果,目前主流的測試方式是:首先,在PC端利用 開源的自動化測試框架構造測試所需的APKUmlroid化Ckage,安卓安裝包)文件,然后,將 上述的APK文件打包后發送給移動終端,由移動終端根據該APK文件執行自動化測試。具體 地,在APK文件中預定義了完整的測試流程,因此,移動終端接收并安裝該APK文件后即可自 動按照測試流程中規定的順序實現完整的測試過程。
[0004] 但是,上述測試方式至少存在如下缺陷:由于APK文件中預定義了完整的測試流 程,該測試流程中包含完整的測試代碼,該代碼必須連貫執行且不可拆分,因此,一旦其中 的某個步驟出現了錯誤,測試人員必須在PC端重新修改APK文件并將修改后的APK文件重打 包后發送給移動終端,移動終端接收到修改后的APK文件后,將依照文件中的測試流程重新 執行測試。由此可見,在上述方式中,一方面,重新打包并傳輸整個APK文件勢必會耗費大量 的時間;另一方面,假設測試流程中包含10個測試步驟,即使只有第9步出現了錯誤,也必須 重新執行之前的所有步驟。總之,現有的測試方式一旦出錯后必須經歷復雜的操作才能重 新完成測試。
【發明內容】
[0005] 鑒于上述問題,提出了本發明W便提供一種克服上述問題或者至少部分地解決上 述問題的對移動終端進行測試的方法及裝置。
[0006] 依據本發明的一個方面,提供了一種對移動終端進行測試的方法,包括:接收并安 裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型標識和執行各種類型操作的操 作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯;通過ADB命令入口接收 測試指令;其中,所述測試指令中包含操作類型標識和/或操作對象標識;根據所述測試安 裝包中與所述操作類型標識和/或操作對象標識對應的操作邏輯進行測試。
[0007] 可選地,所述測試指令的數量為多條,且多條測試指令按照接收順序依次執行。 [000引可選地,當測試指令對應的測試結果為錯誤時,該方法進一步包括:通過ADB命令 入口接收修改后的測試指令,并根據所述修改后的測試指令重新進行測試。
[0009] 可選地,當測試指令對應的測試結果為正確時,該方法進一步包括:將所述測試指 令對應的指令內容保存到預設的測試文件中,其中,所述測試文件用于按照接收順序保存 各條測試指令對應的指令內容W便再次執行。
[0010] 可選地,所述操作類型包括:雙擊類型、單擊類型、滑動類型、長按類型W及用于模 擬硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或多個:返回鍵、菜單鍵、音 量鍵和電源鍵,且所述操作對象標識為操作對象在屏幕上的坐標范圍,和/或所述操作對象 標識為操作對象的ID值;
[0011] 并且,所述定位各個操作對象的操作邏輯包括:通過預存的所述操作對象在用戶 界面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行 定位的操作邏輯。
[0012] 依據本發明的另一方面,提供了一種對移動終端進行測試的裝置,包括:安裝模 塊,適于接收并安裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型標識和執行 各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯;接 收模塊,適于通過ADB命令入口接收測試指令;其中,所述測試指令中包含操作類型標識和/ 或操作對象標識;測試模塊,適于根據所述測試安裝包中與所述操作類型標識和/或操作對 象標識對應的操作邏輯進行測試。
[0013] 可選地,所述測試指令的數量為多條,且多條測試指令按照接收順序依次執行。
[0014] 可選地,該裝置進一步包括:重測試模塊,適于在測試指令對應的測試結果為錯誤 時,通過ADB命令入口接收修改后的測試指令,并根據所述修改后的測試指令重新進行測 試。
[0015] 可選地,該裝置進一步包括:存儲模塊,適于在測試指令對應的測試結果為正確 時,將所述測試指令對應的指令內容保存到預設的測試文件中,其中,所述測試文件用于按 照接收順序保存各條測試指令對應的指令內容W便再次執行。
[0016] 可選地,所述操作類型包括:雙擊類型、單擊類型、滑動類型、長按類型W及用于模 擬硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或多個:返回鍵、菜單鍵、音 量鍵和電源鍵,且所述操作對象標識為操作對象在屏幕上的坐標范圍,和/或所述操作對象 標識為操作對象的ID值;
[0017] 并且,所述定位各個操作對象的操作邏輯包括:通過預存的所述操作對象在用戶 界面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行 定位的操作邏輯。
[0018] 在本發明提供的對移動終端進行測試的方法及裝置中,將傳統的APK文件替換為 本發明中的測試安裝包,并且,測試安裝包中并未直接定義一系列連貫執行且不可拆分的 測試流程,而是定義了執行測試過程所需的各種單獨的操作邏輯,例如,定義了多個操作類 型標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的 操作邏輯。在此基礎上,根據接收到的ADB測試指令完成各個操作邏輯,W實現完整的測試 過程。由此可見,在本發明中,將操作邏輯和具體的操作步驟分離,因此,當某一步出現錯誤 時,無需修改測試安裝包,只需重新接收并執行該步驟對應的ADB測試指令即可,可做到單 步出錯單步調試的效果,因而大大簡化了調試過程。
[0019] 上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段, 而可依照說明書的內容予W實施,并且為了讓本發明的上述和其它目的、特征和優點能夠 更明顯易懂,W下特舉本發明的【具體實施方式】。
【附圖說明】
[0020] 通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通 技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0021] 圖1示出了本發明一個實施例提供的對移動終端進行測試的方法的流程圖;
[0022] 圖2示出了本發明另一個具體實施例提供的對移動終端進行測試的方法的流程 圖;
[0023] 圖3示出了本發明一個實施例提供的對移動終端進行測試的裝置的結構圖。
【具體實施方式】
[0024] 下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開 的示例性實施例,然而應當理解,可W W各種形式實現本公開而不應被運里闡述的實施例 所限制。相反,提供運些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍 完整的傳達給本領域的技術人員。
[0025] 本發明實施例提供了一種對移動終端進行測試的方法及裝置,至少能夠解決傳統 的測試方式一旦出錯后必須經歷復雜的操作才能重新完成測試的技術問題。
[0026] 圖1示出了本發明一個實施例提供的對移動終端進行測試的方法的流程圖。如圖1 所示,該方法具體包括W下步驟:
[0027] 步驟Sl 10 :接收并安裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型 標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操 作邏輯。
[0028] 例如,操作類型包括:雙擊類型、單擊類型、滑動類型、長按類型W及用于模擬硬件 按鈕的操作類型等,其中,所述硬件按鈕包括W下中的一個或多個:返回鍵、菜單鍵、音量鍵 和電源鍵等。執行各種類型操作的操作邏輯通常通過軟件代碼或接口函數實現,用于自動 完成相應類型的操作過程。操作對象通常為具體的控件,可W通過控件的坐標或名稱表示, 當然,除控件外,操作對象還可W是按鈕或輸入框等。定位操作對象的操作邏輯一般也通過 軟件代碼或接口函數實現,用于在屏幕上確定該操作對象的具體位置。
[0029] 步驟S120:通過ADB命令入口接收測試指令;其中,所述測試指令中包含操作類型 標識和/或操作對象標識。
[0030] 其中,測試指令也可W稱作ADB命令,每條ADB命令用于指示移動終端具體執行何 種操作,包括操作的類型和/或標識。例如,可W對控件A執行單擊操作等。
[0031] 步驟S130:根據測試安裝包中與操作類型標識和/或操作對象標識對應的操作邏 輯進行測試。
[0032] 例如,當需要對控件A進行單擊操作時,需要從測試安裝包中獲取執行單擊操作所 對應的操作邏輯W及定位控件A的操作邏輯,并據此進行測試。
[0033] 由此可見,在本發明中,將操作邏輯和具體的操作步驟分離,因此,當某一步出現 錯誤時,無需修改測試安裝包,只需重新接收并執行該步驟對應的ADB測試指令即可,可做 到單步出錯單步調試的效果,因而大大簡化了調試過程。
[0034] 圖2示出了本發明另一個實施例提供的對移動終端進行測試的方法的流程圖。本 實施例可W基于多種自動化測試框架實現,例如,可W基于化automator和/或Robotium測 試框架、W及Monkey Runner測試框架等,本發明對具體的測試環境不做限定。另外,在本實 施例中W基于安卓平臺為例進行說明,但本領域技術人員能夠理解的是,本發明實施例中 的方案也可W靈活應用于其他各種平臺的移動終端中。如圖2所示,該方法具體包括W下步 驟:
[0035] 步驟S210:在PC端生成測試安裝包,并將該測試安裝包發送給移動終端。
[0036] 其中,測試安裝包可W通過APK形式實現,也可W通過其他各種形式實現。在測試 安裝包中定義了測試所需的各種操作邏輯。例如,多個操作類型標識和執行各種類型操作 的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯。其中,操作邏輯可 W通過軟件代碼、函數接口、硬件忍片等各類方式實現。
[0037] 步驟S220:移動終端接收并安裝上述的測試安裝包。
[0038] 其中,移動終端可W通過多種方式接收上述的測試安裝包,例如,可W通過數據線 與PC連接后將測試安裝包拷貝到移動終端的硬盤上。或者,也可W通過wifi、藍牙等各種無 線傳輸方式將測試安裝包傳輸給移動終端。或者,也可W通過ADB命令入口來傳輸該測試安 裝包。本發明對具體的傳輸方式不做限定。
[0039] 通過安裝上述的測試安裝包,使移動終端本地存儲了測試所需的各種操作邏輯, 包括多個操作類型標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位 各個操作對象的操作邏輯等。
[0040] 步驟S230 :在PC端生成測試指令,并通過ADB命令入口將測試指令發送給移動終 JLjJU 乂而。
[0041] 具體地,生成的測試指令的指令內容取決于本步驟對應的具體測試內容。測試指 令可W通過W下形式的ADB命令實現:"a化 shell am broadcast-a ADB_INTENT-e OPER [valuel]-e WIDGET[value2]…"其中,通過valuel來傳遞操作類型標識(如點擊、滑動、長 按等),通過value2傳遞操作的具體參數,比如點擊的控件對象的類型、文本、index等屬性。 例如,假設本實施例中的方法需要在移動終端側點擊"設置"按鈕并在彈出的設置輸入框中 點擊"亮度調節"按鈕并進行調節。相應地,為了實現上述步驟,至少需要生成兩條測試指 令。第一條測試指令用于實現點擊"設置"按鈕的操作步驟,在該測試指令中包含單擊操作 所對應的操作類型標識(通過上述的valuel表示),用W指示本次操作為單擊類型的操作; 另外,在該測試指令中還包含操作對象標識(通過上述的value2表示),即"設置"按鈕的按 鈕ID或按鈕名稱等,用W指示本次操作的對象為"設置"按鈕。第二條測試指令用于實現點 擊"亮度調節"按鈕的操作步驟,在該測試指令中包含單擊操作所對應的操作類型標識,用 W指示本次操作為單擊類型的操作;另外,在該測試指令中還包含操作對象標識,即"亮度 調節"按鈕的按鈕ID或按鈕名稱等,用W指示本次操作的對象為"亮度調節"按鈕。具體實現 時,上述的兩條測試指令可W同時發送給移動終端,并在各條測試指令中包含執行順序號, W使移動終端根據執行順序號確定各條測試指令的執行順序;也可W按照執行順序將上述 的兩條測試指令先后發送給移動終端,例如,可W等到第一條測試指令執行完畢并返回測 試成功的測試結果后再發送第二條測試指令。
[0042] 在具體實現時,測試指令的數量不限于兩條,可W是更多條測試指令。另外,測試 指令中包含的操作類型也不限于單擊操作,還可W是雙擊、滑動、長按等各種可能的操作, 而且,還可W是用于模擬硬件按鈕的操作,其中,硬件按鈕包括W下中的一個或多個:返回 鍵、菜單鍵、Home鍵、音量鍵和電源鍵。測試指令中包含的操作對象還可能是其他的按鈕、輸 入框等。另外,測試指令還可W僅包含操作類型或者僅包含操作對象,當測試指令僅包含操 作類型時,例如可W是判斷移動終端的當前狀態是否連網、是否會產生流量等;當測試指令 僅包含操作對象時,針對該操作對象只能執行預定的一種類型的操作,例如,當某些按鈕只 執行單擊操作,不支持雙擊等操作時,可W在測試指令中省略操作類型標識。
[0043] 步驟S240:移動終端接收到上述測試指令后,根據測試安裝包中與操作類型標識 和/或操作對象標識對應的操作邏輯進行測試。
[0044] 具體地,為了使移動終端能夠自動捕獲到來自PC端的測試指令并自動處理,可W 在上文提到的測試安裝包中設置用于捕獲來自PC端的測試指令的捕獲模塊,W及對捕獲到 的測試指令進行處理的處理模塊,各模塊可通過預設的函數實現,也可W采用其他各種軟/ 硬件方式實現。
[0045] 在本實施例中,上述捕獲模塊可W通過下述函數代碼段實現:
[0046]
[0047]
[004引該函數相當于一個能夠接收、過濾消息的廣播接收器,通過該函數能夠實現自動 捕獲PC端的測試指令的目的。
[0049] 另外,上述處理模塊可W通過下述函數代碼段實現:
[0050] public void oper(String oper,Intentintent){
[0051] IOperationoper;
[0052] if(oper. equalS("click")){
[0053] oper = new Clicker(intent);
[0054] }else if (oper. equals(''drag'')) {
[0化5] ……
[0056] 通過上述函數能夠自動判斷捕獲到的測試指令中包含的操作類型等信息并執行 相應的處理。例如,當測試指令中包含值為"click"的參數時,表明其操作類型為點擊;當測 試指令中包含值為"drag"的參數時,表明其操作類型為拖拽。
[0057] 具體地,在上例中,針對用于實現點擊"設置"按鈕的第一條測試指令,首先,需要 從測試安裝包中根據單擊類型操作的操作類型標識查找并獲取單擊類型的操作所對應的 操作邏輯,該操作邏輯可W通過預定的函數實現,該函數能夠自動執行單擊類型的操作。然 后,需要從測試安裝包中根據"設置"按鈕的按鈕標識查找并獲取定位該按鈕的操作邏輯, 該操作邏輯也可W通過預定的函數實現,該函數能夠自動使光標定位到對應的按鈕處。具 體地,在本實施例中,可W根據按鈕在屏幕上的坐標對按鈕進行定位,該方式實現簡單便 捷;另外,還可W根據按鈕的屬性或特征對按鈕進行識別并定位,該方式不受屏幕分辨率改 變的影響,適用場景更加靈活。下面分別介紹一下上述的兩種定位方式:
[005引在第一種實現方式中,通過預存的操作對象在用戶界面上的坐標比例進行定位。 例如,假設W用戶界面的左下角為坐標原點建立坐標系,并設定完整的用戶界面的右上角 的坐標為(1,1),相應地,用戶界面上的各個位置都可W通過對應的坐標比例進行表示,例 如,坐標點為(1/3,2/3)的位置處于整個用戶界面的左側偏上位置處。通過該種方式可W利 用操作對象在整個用戶界面中所處的坐標比例來確定操作對象的位置,與傳統的單純通過 具體坐標值來確定位置的方式相比準確性更高,不受屏幕分辨率變化的影響,且定位速度 快。例如,即使終端設備的屏幕分辨率尺寸發生了變化,導致用戶界面的大小有所改變,但 是,某一操作對象與整個用戶界面之間的相對關系是固定的,因此,依然能夠準確地定位到 該操作對象。
[0059] 在第二種實現方式中,通過識別預存的操作對象的特征數據進行定位。其中,預存 的操作對象的特征數據用于唯一地標識相應的操作對象,具體包括:操作對象的外部輪廓 數據和/或顏色數據等。例如,W "設置"按鈕為例來說,相應的特征數據包括該按鈕的形狀、 大小、顏色、文本及字體等。總之,通過預存的操作對象的特征數據能夠在用戶界面上唯一 地識別并定位操作對象。具體實現時,可W結合圖像識別等相關算法實現。通過該種方式可 W根據操作對象的外形特征來查找并確定操作對象的位置,與傳統的單純通過具體坐標值 來確定位置的方式相比同樣具備不受屏幕分辨率變化影響的優勢。而且,當用戶界面的布 局變化時(如產品更新后),即使操作對象的位置發生了改變,通過該方式依然能夠準確定 位操作對象。
[0060] 其中,上述的步驟S230和步驟S240可W執行多次,具體執行次數取決于接收到的 測試指令的條數。例如,當一個測試過程需要=條依序執行的測試指令才能實現時,上述的 步驟S230和步驟S240將執行=次,各次分別用于處理對應的一條測試指令。
[0061] 由于測試過程可能出現錯誤,當出現錯誤時需要進行調試,因此,該方法還可W進 一步包括下述的步驟S250。其中,步驟S250是一個可選的步驟。
[0062] 步驟S250:當測試指令對應的測試結果為錯誤時,進一步通過ADB命令入口接收修 改后的測試指令,并根據修改后的測試指令重新進行測試。
[0063] 測試結果為錯誤的具體情況包括多種,例如,可能是測試指令中的參數錯誤、測試 環境錯誤或移動終端上的硬件不支持等各種原因。無論是因為何種原因出現錯誤,都需要 在PC端進行調試,W便對測試指令進行修正,并將修正后的測試指令重新發送給移動終端, W便移動終端重新執行相應的測試過程。
[0064] 具體地,當上述的步驟S230和步驟S240執行多次時,本步驟也可能會執行多次,每 當在步驟S240中有一條測試指令出錯時,都會觸發步驟S250。通過步驟S240可W實現單步 出錯、單步調試的目的。例如,當整個測試過程包含10條測試指令時,如果第9條測試指令的 對應結果為錯誤,則只需重新接收修改后的第9條測試指令并執行即可,之前已測試成功的 前8條測試指令不必重新測試,由此能夠大幅降低調試環節的工作量,提高測試效率。另外, 在本實施例中,由于測試安裝包中只包含相互分離的操作邏輯,具體操作步驟由后續的測 試指令表示,因此,測試安裝包只需傳輸并安裝一次,即使后續出現了錯誤,也不必重新生 成并安裝測試安裝包,由此進一步簡化了操作過程。
[0065] 另外,由于測試過程可能需要多次執行,例如,當本次測試過程成功執行完畢后, 可能后期由于移動終端升級等原因導致需要再次測試。因此,為了方便后期重復執行已完 成的測試過程,該方法還可W進一步包括下述的步驟S260。其中,步驟S260也是一個可選的 步驟。
[0066] 步驟S260:當測試指令對應的測試結果為正確時,將測試指令對應的指令內容保 存到預設的測試文件中。
[0067] 具體實現時,本步驟可W通過下述兩種方式實現。在第一種方式中,每當通過步驟 S240成功執行了一條測試指令時,就觸發步驟S260, W便將該條測試指令對應的指令內容 保存到測試文件中。在第二種方式中,當通過步驟S240將所有的測試指令成功執行完畢后, 才觸發步驟S260, W便將所有測試指令對應的指令內容保存到測試文件中。
[0068] 其中,上述測試文件用于按照接收順序保存各條測試指令對應的指令內容W便再 次執行。例如,當測試指令為ADB命令時,對應的指令內容為該條命令中包含的操作類型和 操作對象,指令內容的具體形式取決于具體的測試環境,只要是能夠自動觸發測試的形式 均可。由此可見,通過步驟S260可W對已測試成功的指令進行保存,W便后期重復執行,因 此,對于需要反復多次測試的應用場景而言,通過本實施例中的方式能夠大幅簡化后期測 試時的工作量,提高測試效率。
[0069] 圖3示出了本發明另一個實施例提供的對移動終端進行測試的裝置的結構圖。如 圖3所示,該裝置包括:安裝模塊31、接收模塊32和測試模塊33。
[0070] 安裝模塊31適于接收并安裝測試安裝包。其中,所述測試安裝包中包括:多個操作 類型標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象 的操作邏輯。
[0071] 接收模塊32適于通過ADB命令入口接收測試指令。其中,所述測試指令中包含操作 類型標識和/或操作對象標識。
[0072] 測試模塊33適于根據所述測試安裝包中與所述操作類型標識和/或操作對象標識 對應的操作邏輯進行測試。
[0073] 其中,當測試指令的數量為多條時,多條測試指令按照接收順序依次執行。可選 地,該裝置進一步包括:重測試模塊34,適于在測試指令對應的測試結果為錯誤時,通過ADB 命令入口接收修改后的測試指令,并根據所述修改后的測試指令重新進行測試。
[0074] 可選地,該裝置進一步包括:存儲模塊35,適于在測試指令對應的測試結果為正確 時,將所述測試指令對應的指令內容保存到預設的測試文件中,其中,所述測試文件用于按 照接收順序保存各條測試指令對應的指令內容W便再次執行。
[0075] 其中,上述操作類型包括:雙擊類型、單擊類型、滑動類型、長按類型W及用于模擬 硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或多個:返回鍵、菜單鍵、音量 鍵和電源鍵;并且,所述操作對象標識為操作對象在屏幕上的坐標范圍,和/或所述操作對 象標識為操作對象的ID值。
[0076] 并且,所述定位各個操作對象的操作邏輯包括:通過預存的所述操作對象在用戶 界面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行 定位的操作邏輯。
[0077] 上述各個模塊的具體結構和工作原理可參照方法實施例中相應步驟的描述,此處 不再寶述。
[0078] 綜上所述,在本發明提供的對移動終端進行測試的方法及裝置中,將傳統的APK文 件替換為本發明中的測試安裝包,并且,測試安裝包中并未直接定義一系列連貫執行且不 可拆分的測試流程,而是定義了執行測試過程所需的各種單獨的操作邏輯,例如,定義了多 個操作類型標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操 作對象的操作邏輯。在此基礎上,根據接收到的ADB測試指令完成各個操作邏輯,W實現完 成的測試過程。由此可見,在本發明中,將操作邏輯和具體的操作步驟分離,因此,當某一步 出現錯誤時,無需修改測試安裝包,只需重新接收并執行該步驟對應的ADB測試指令即可, 可做到單步出錯單步調試的效果,因而大大簡化了調試過程。
[0079] 在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。 各種通用系統也可W與基于在此的示教一起使用。根據上面的描述,構造運類系統所要求 的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可W利用各種 編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發 明的最佳實施方式。
[0080] 在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施 例可W在沒有運些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構 和技術,W便不模糊對本說明書的理解。
[0081] 類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在 上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施 例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保 護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面 的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此, 遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身 都作為本發明的單獨實施例。
[0082] 本領域那些技術人員可W理解,可W對實施例中的設備中的模塊進行自適應性地 改變并且把它們設置在與該實施例不同的一個或多個設備中。可W把實施例中的模塊或單 元或組件組合成一個模塊或單元或組件,W及此外可W把它們分成多個子模塊或子單元或 子組件。除了運樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可W采用任何 組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征W及如此公開的任 何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權 利要求、摘要和附圖)中公開的每個特征可W由提供相同、等同或相似目的的替代特征來代 替。
[0083] 此外,本領域的技術人員能夠理解,盡管在此的一些實施例包括其它實施例中所 包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍 之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之 一都可WW任意的組合方式來使用。
[0084] 本發明的各個部件實施例可W W硬件實現,或者W在一個或者多個處理器上運行 的軟件模塊實現,或者W它們的組合實現。本領域的技術人員應當理解,可W在實踐中使用 微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的裝置中的一些或者全部部 件的一些或者全部功能。本發明還可W實現為用于執行運里所描述的方法的一部分或者全 部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。運樣的實現本發明的程序 可W存儲在計算機可讀介質上,或者可W具有一個或者多個信號的形式。運樣的信號可W 從因特網網站上下載得到,或者在載體信號上提供,或者W任何其他形式提供。
[0085]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領 域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中, 不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞"包含"不排除存在未 列在權利要求中的元件或步驟。位于元件之前的單詞"一"或"一個"不排除存在多個運樣的 元件。本發明可W借助于包括有若干不同元件的硬件W及借助于適當編程的計算機來實 現。在列舉了若干裝置的單元權利要求中,運些裝置中的若干個可W是通過同一個硬件項 來具體體現。單詞第一、第二、W及第=等的使用不表示任何順序。可將運些單詞解釋為名 稱。
【主權項】
1. 一種對移動終端進行測試的方法,包括: 接收并安裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型標識和執行各種 類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯; 通過ADB命令入口接收測試指令;其中,所述測試指令中包含操作類型標識和/或操作 對象標識; 根據所述測試安裝包中與所述操作類型標識和/或操作對象標識對應的操作邏輯進行 測試。2. 根據權利要求1所述的方法,其中,所述測試指令的數量為多條,且多條測試指令按 照接收順序依次執行。3. 根據權利要求1或2所述的方法,其中,當測試指令對應的測試結果為錯誤時,該方法 進一步包括: 通過ADB命令入口接收修改后的測試指令,并根據所述修改后的測試指令重新進行測 試。4. 根據權利要求1-3任一所述的方法,其中,當測試指令對應的測試結果為正確時,該 方法進一步包括: 將所述測試指令對應的指令內容保存到預設的測試文件中,其中,所述測試文件用于 按照接收順序保存各條測試指令對應的指令內容以便再次執行。5. 根據權利要求1-4任一所述的方法,其中,所述操作類型包括:雙擊類型、單擊類型、 滑動類型、長按類型以及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括以下中的 一個或多個:返回鍵、菜單鍵、音量鍵和電源鍵,且所述操作對象標識為操作對象在屏幕上 的坐標范圍,和/或所述操作對象標識為操作對象的ID值; 并且,所述定位各個操作對象的操作邏輯包括:通過預存的所述操作對象在用戶界面 上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行定位 的操作邏輯。6. -種對移動終端進行測試的裝置,包括: 安裝模塊,適于接收并安裝測試安裝包;其中,所述測試安裝包中包括:多個操作類型 標識和執行各種類型操作的操作邏輯,和/或,多個操作對象標識和定位各個操作對象的操 作邏輯; 接收模塊,適于通過ADB命令入口接收測試指令;其中,所述測試指令中包含操作類型 標識和/或操作對象標識; 測試模塊,適于根據所述測試安裝包中與所述操作類型標識和/或操作對象標識對應 的操作邏輯進行測試。7. 根據權利要求6所述的裝置,其中,所述測試指令的數量為多條,且多條測試指令按 照接收順序依次執行。8. 根據權利要求6或7所述的裝置,其中,該裝置進一步包括:重測試模塊,適于在測試 指令對應的測試結果為錯誤時,通過ADB命令入口接收修改后的測試指令,并根據所述修改 后的測試指令重新進行測試。9. 根據權利要求6-8任一所述的裝置,其中,該裝置進一步包括:存儲模塊,適于在測試 指令對應的測試結果為正確時,將所述測試指令對應的指令內容保存到預設的測試文件 中,其中,所述測試文件用于按照接收順序保存各條測試指令對應的指令內容以便再次執 行。10.根據權利要求6-9任一所述的裝置,其中,所述操作類型包括:雙擊類型、單擊類型、 滑動類型、長按類型以及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括以下中的 一個或多個:返回鍵、菜單鍵、音量鍵和電源鍵,且所述操作對象標識為操作對象在屏幕上 的坐標范圍,和/或所述操作對象標識為操作對象的ID值; 并且,所述定位各個操作對象的操作邏輯包括:通過預存的所述操作對象在用戶界面 上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行定位 的操作邏輯。
【文檔編號】G06F11/36GK106021101SQ201610322264
【公開日】2016年10月12日
【申請日】2016年5月16日
【發明人】孫健, 黃威
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司