移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置以及測(cè)試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動(dòng)終端的測(cè)試領(lǐng)域,具體地涉及一種用于測(cè)試移動(dòng)終端中安裝的應(yīng)用程序的自動(dòng)化測(cè)試裝置以及自動(dòng)化測(cè)試方法。
【背景技術(shù)】
[0002]目前的移動(dòng)終端應(yīng)用領(lǐng)域,自動(dòng)化測(cè)試領(lǐng)域主要有兩種方法,一種是在宿主機(jī)中通過軟件模擬一個(gè)移動(dòng)終端設(shè)備,通過應(yīng)用程序與這個(gè)模擬出的移動(dòng)終端進(jìn)行交互來實(shí)現(xiàn)自動(dòng)化測(cè)試;另一種是宿主機(jī)通過數(shù)據(jù)線連接移動(dòng)終端設(shè)備,并通過軟件模擬各類操作來實(shí)現(xiàn)自動(dòng)化測(cè)試。
[0003]前一種方法由于是軟件模擬的設(shè)備,對(duì)設(shè)備的仿真度較低,測(cè)試可信度也相應(yīng)較低;后一種方法是用軟件方法來模擬各類操作,對(duì)文字輸入等仿真度較好,但對(duì)新型移動(dòng)終端上主要以觸摸操作為主的仿真度較低。
[0004]
【發(fā)明內(nèi)容】
[0005]鑒于上述問題,本發(fā)明旨在提供一種自動(dòng)化程度高且模擬準(zhǔn)確度高的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置以及自動(dòng)化測(cè)試方法。
[0006]本發(fā)明的移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置,其特征在于,具備:
工作臺(tái),用于放置待測(cè)試的移動(dòng)終端;
機(jī)械手,用于根據(jù)來自下述的控制裝置的指令模擬人的手指動(dòng)作;
攝像頭,用于以模擬人的眼睛的方式對(duì)待測(cè)試移動(dòng)終端的屏幕進(jìn)行攝像并且將攝像到圖像傳送到下述的控制裝置;
機(jī)械臂,用于承載所述機(jī)械手和攝像頭并且能夠在X軸、Y軸、Z軸方向上移動(dòng),根據(jù)來自下述的控制裝置的指令移動(dòng)到特定位置;以及
控制裝置,用于根據(jù)應(yīng)用程序產(chǎn)生控制所述機(jī)械臂的移動(dòng)和所述機(jī)械手的動(dòng)作的指令,以實(shí)現(xiàn)對(duì)應(yīng)用程序進(jìn)行仿真操作進(jìn)而實(shí)現(xiàn)自動(dòng)化測(cè)試。
[0007]優(yōu)選地,所述攝像頭還用于對(duì)測(cè)試過程進(jìn)行攝像。
[0008]優(yōu)選地,所述機(jī)械臂在X軸和Y軸方向上移動(dòng)以使得機(jī)械臂的中心點(diǎn)與待測(cè)移動(dòng)終端的中心點(diǎn)重合并且在Z軸方向上運(yùn)動(dòng)使得攝像頭覆蓋區(qū)域?yàn)橐苿?dòng)終端設(shè)備的可視區(qū)域。
[0009]優(yōu)選地,所述機(jī)械手能夠模擬進(jìn)行點(diǎn)擊、平移、旋轉(zhuǎn)、放大、縮小、單點(diǎn)、多點(diǎn)操作。
[0010]優(yōu)選地,所述控制裝置對(duì)從所述攝像頭傳送來的圖像進(jìn)行圖像識(shí)別和匹配后控制所述機(jī)械臂進(jìn)行定位。
[0011]本發(fā)明的移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試方法,其特征在于,包括下述步驟: 移動(dòng)終端定位步驟,將移動(dòng)終端傳送到工作臺(tái)上,利用機(jī)械臂將移動(dòng)終端移動(dòng)、定位到第一規(guī)定位置; 應(yīng)用程序定位步驟,讀入待測(cè)試應(yīng)用程序的圖標(biāo),并利用攝像頭采集當(dāng)前屏幕上所有應(yīng)用程序的截圖,進(jìn)行計(jì)算并判斷待測(cè)試應(yīng)用程序是否在當(dāng)前屏幕上,如果判斷為是的情況下,則表示找到待測(cè)試應(yīng)用程序的圖標(biāo)并繼續(xù)后述步驟,否則的話,使得機(jī)械手模擬滑屏動(dòng)作并重復(fù)進(jìn)行上述判斷動(dòng)作直到找到待測(cè)試應(yīng)用程序;
應(yīng)用程序選擇步驟,使得機(jī)械手移動(dòng)到基于上述計(jì)算結(jié)果的第二規(guī)定位置,并觸發(fā)點(diǎn)擊動(dòng)作以選擇應(yīng)用程序;
應(yīng)用程序加載步驟,等待應(yīng)用程序加載直到應(yīng)用程序加載完畢;
應(yīng)用程序加載成功判斷步驟,讀入表示應(yīng)用程序加載成功的字符串或圖片,并利用攝像頭采集當(dāng)前屏幕上的截圖,進(jìn)行計(jì)算并判斷應(yīng)用程序是否加載成功,僅在判斷加載成功的情況下繼續(xù)后述步驟;
應(yīng)用程序測(cè)試步驟,讀入用于控制機(jī)械手進(jìn)行動(dòng)作的動(dòng)作指令,根據(jù)該動(dòng)作指令機(jī)械手操作應(yīng)用程序并且獲得測(cè)試數(shù)據(jù)。
[0012]優(yōu)選地,在所述移動(dòng)終端定位步驟包括下述子步驟:
將移動(dòng)終端傳送到工作臺(tái)上并進(jìn)行固定;
移動(dòng)終端上電;
利用機(jī)械臂將移動(dòng)終端在X軸、Y軸向移動(dòng)使得機(jī)械臂的中心點(diǎn)與待測(cè)試移動(dòng)終端的中心點(diǎn)重合,并且在Z軸向移動(dòng)使得攝像頭覆蓋移動(dòng)終端的可視區(qū)域。
[0013]優(yōu)選地,所述應(yīng)用程序定位步驟包括下述子步驟:
讀入待測(cè)試應(yīng)用程序并儲(chǔ)存為圖片A ;
利用攝像頭采集當(dāng)前屏幕上所有應(yīng)用程序的截圖并存為圖片B ;
判斷圖片A是否為圖片B的子集;
在判斷圖片A是圖片B的子集的情況下則表示找到待測(cè)試應(yīng)用程序的圖標(biāo)并繼續(xù)后述步驟,否則的話,使得機(jī)械手模擬滑屏動(dòng)作并重復(fù)進(jìn)行上述判斷動(dòng)作直到找到待測(cè)試應(yīng)用程序,并且若遍歷所有可訪問窗口均無法匹配的情況下,則報(bào)錯(cuò)、退出測(cè)試方法。
[0014]優(yōu)選地,在判斷圖片A是圖片B的子集的情況下,設(shè)從第一坐標(biāo)(M1,N1)到第二坐標(biāo)(M2,N2)為圖片A在圖片B中的相對(duì)位置的情況下,在所述應(yīng)用程序選擇步驟中,使得機(jī)械手從坐標(biāo)(0,O)移動(dòng)到第三坐標(biāo)((M1+M2) /2,(N1+N2) /2)并觸發(fā)點(diǎn)擊動(dòng)作以選擇應(yīng)用程序。
[0015]優(yōu)選地,所述應(yīng)用程序加載成功判斷步驟包括下述子步驟:
讀入表示應(yīng)用程序加載成功圖片C ;
利用攝像頭采集當(dāng)前屏幕上的截圖作為圖片D ;
判斷圖片C是否為圖片D的子集,若圖片C是圖片D的子集則判斷應(yīng)用程序加載成功; 在判斷加載成功的情況下繼續(xù)后述步驟,否則報(bào)錯(cuò)、退出測(cè)試方法。
[0016]優(yōu)選地,所述應(yīng)用程序加載成功判斷步驟包括下述子步驟:
讀入表示應(yīng)用程序加載成功的第一字符串;
利用攝像頭采集當(dāng)前屏幕上的截圖作為圖片D ;
對(duì)圖片D進(jìn)行OCR操作提取其中的第二字符串;
判斷所述第一字符串和所述第二字符串是否相同,若相同則判斷應(yīng)用程序加載成功; 在判斷加載成功的情況下繼續(xù)后述步驟,否則報(bào)錯(cuò)、退出測(cè)試方法。
[0017]優(yōu)選地,所述應(yīng)用程序測(cè)試步驟包括下述子步驟:
讀入用于控制機(jī)械手進(jìn)行動(dòng)作的動(dòng)作指令,所述指令為三元指令包括三個(gè)元素:對(duì)象、動(dòng)作、值;
使用攝像頭定位所述對(duì)象;
使用機(jī)械手移動(dòng)到對(duì)象位置;
使用機(jī)械手觸發(fā)所述動(dòng)作;
根據(jù)所述值確定所述動(dòng)作持續(xù)的時(shí)間或位移。
[0018]優(yōu)選地,所述對(duì)象為圖像的情況下,使用攝像頭定位所述對(duì)象的步驟包括下述子步驟:
讀入該圖像作為圖片E ;
利用攝像頭采集當(dāng)前屏幕上的截圖作為圖片F(xiàn) ;
判斷圖片E是否為圖片F(xiàn)的子集,若圖片E是圖片F(xiàn)的子集則判斷對(duì)象定位成功;
在判斷對(duì)象定位成功的情況下繼續(xù)后述步驟,否則報(bào)錯(cuò)、退出測(cè)試方法。
[0019]優(yōu)選地,所述對(duì)象為文字的情況下
使用攝像頭定位所述對(duì)象的步驟包括下述子步驟:
讀入表示該對(duì)象的第三字符串;
利用攝像頭采集當(dāng)前屏幕上的截圖作為圖片E ;
對(duì)圖片E進(jìn)行OCR操作提取其中的第四字符串;
判斷所述第三字符串和所述第四字符串是否相同,若相同則判斷對(duì)象定位成功;
在判斷對(duì)象定位成功的情況下繼續(xù)后述步驟,否則報(bào)錯(cuò)、退出測(cè)試方法。
[0020]本發(fā)明的本發(fā)明的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置以及用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試方法使用真實(shí)的移動(dòng)終端設(shè)備進(jìn)行測(cè)試,因此,測(cè)試準(zhǔn)確性高,而且,使用機(jī)械臂、機(jī)械手模擬人類的上肢和手指,攝像頭模擬人類的視覺系統(tǒng),控制裝置模擬人類的操作序列,能夠使得對(duì)移動(dòng)終端設(shè)備的測(cè)試工作盡可能地接近真實(shí),因此模擬準(zhǔn)確度高。
【附圖說明】
[0021]圖1是表示本發(fā)明的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置的構(gòu)造示意圖。
[0022]圖2是表示本發(fā)明的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試方法的概要流程圖。
【具體實(shí)施方式】
[0023]下面介紹的是本發(fā)明的多個(gè)實(shí)施例中的一些,旨在提供對(duì)本發(fā)明的基本了解。并不旨在確認(rèn)本發(fā)明的關(guān)鍵或決定性的要素或限定所要保護(hù)的范圍。
[0024]圖1是表示本發(fā)明的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置的構(gòu)造示意圖。
[0025]首先,參照?qǐng)D1對(duì)于本發(fā)明的用于測(cè)試移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置進(jìn)行說明。
[0026]如圖1所示,本發(fā)明的移動(dòng)終端應(yīng)用程序的自動(dòng)化測(cè)試裝置具備:工作臺(tái)100、機(jī)械手200、攝像頭300、機(jī)械臂400、控制裝置50