該方法進(jìn)一步包括:
[0136]如果當(dāng)前UI不是引導(dǎo)頁,則將當(dāng)前UI上的文字與協(xié)議特征列表進(jìn)行匹配;
[0137]如果匹配,則判斷當(dāng)前UI是所述應(yīng)用的協(xié)議頁,在當(dāng)前UI中的查找到同意該協(xié)議的控件并觸發(fā),以跳轉(zhuǎn)到下一個UI。
[0138]AS、如Al所述的方法,其中,所述如果識別出該當(dāng)前UI上控件特征,則觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI包括:
[0139]如果識別出當(dāng)前UI上的登錄控件特征,則進(jìn)一步確定當(dāng)前UI上的登錄信息輸入框;
[0140]將提交所述應(yīng)用的用戶所提交的登錄信息輸入到所述登錄信息輸入框中;
[0141 ]進(jìn)一步識別出當(dāng)前UI中的確認(rèn)登錄控件并觸發(fā)。
[0142]A9、如A1-A8中任一項所述的方法,其中,該方法進(jìn)一步包括:
[0143]對提交測試的各應(yīng)用進(jìn)行分類;
[0144]根據(jù)分類結(jié)果,確定所述引導(dǎo)頁數(shù)據(jù)庫的需要補充的內(nèi)容;
[0145]獲取所述需要補充的內(nèi)容,添加到所述引導(dǎo)頁數(shù)據(jù)庫中。
[0146]A10、如A1-A8中任一項所述的方法,其中,該方法進(jìn)一步包括:
[0147]記錄在所述應(yīng)用的每個UI上的執(zhí)行操作和執(zhí)行的結(jié)果,生成測試報告。
[0148]本發(fā)明還公開了B11、一種對應(yīng)用的用戶界面UI進(jìn)行測試的裝置,其中,該裝置包括:
[0149]獲取單元,適于獲取提交測試的應(yīng)用,并啟動所述應(yīng)用;
[0150]控件特征識別單元,適于對于所述應(yīng)用的每個當(dāng)前UI,識別該當(dāng)前UI上的控件特征;
[0151]測試執(zhí)行單元,適于當(dāng)所述控件特征識別單元識別出該當(dāng)前UI上控件特征時,觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI;當(dāng)所述控件特征識別單元在該當(dāng)前UI上沒有識別出控件特征時,通過查詢引導(dǎo)頁數(shù)據(jù)庫判斷該當(dāng)前UI是否為引導(dǎo)頁,如果該當(dāng)前UI是引導(dǎo)頁則進(jìn)一步從引導(dǎo)頁數(shù)據(jù)庫中獲取該引導(dǎo)頁的操作信息,根據(jù)獲取的該引導(dǎo)頁的操作信息在該當(dāng)前UI上進(jìn)行相應(yīng)的操作,以跳過該引導(dǎo)頁。
[0152]存儲單元,適于保存引導(dǎo)頁數(shù)據(jù)庫。
[0153]B12、如Bll所述的裝置,其中,
[0154]所述測試執(zhí)行單元,適于獲取所述應(yīng)用的包名和當(dāng)前Activity組件的類名,以所述包名和Activity組件的類名作為索引查詢所述引導(dǎo)頁數(shù)據(jù)庫,如果所述引導(dǎo)頁數(shù)據(jù)庫中存在包含相同包名和Activity組件的類名的條目,則判斷當(dāng)前UI是引導(dǎo)頁;
[0155]其中,所述引導(dǎo)頁數(shù)據(jù)庫中對應(yīng)保存了包名、Activity組件的類名和相應(yīng)的操作
?目息O
[0156]Β13、如Bll所述的裝置,其中,
[0157]所述存儲單元位于服務(wù)器側(cè);
[0158]則所述測試執(zhí)行單元,適于通過查詢服務(wù)器側(cè)的存儲單元中的引導(dǎo)頁數(shù)據(jù)判斷該當(dāng)前UI是否為引導(dǎo)頁。
[0159]Β14、如Bll所述的裝置,其中,
[0160]所述控件特征識別單元,適于獲取所述應(yīng)用的關(guān)于所述當(dāng)前UI的源數(shù)據(jù),通過分析獲取的源數(shù)據(jù)識別當(dāng)前UI上的控件特征。
[0161]Β15、如Bll所述的裝置,其中,
[0162]所述存儲單元,進(jìn)一步適于保存經(jīng)驗列表;
[0163]所述測試執(zhí)行單元,進(jìn)一步適于在當(dāng)前UI不是引導(dǎo)頁時,查詢經(jīng)驗列表,判斷當(dāng)前UI中是否存在與經(jīng)驗列表中的任一項匹配的文字或字符串,如果存在匹配項,則在當(dāng)前UI中點擊所匹配的文字或字符串,以嘗試跳轉(zhuǎn)到下一個UI。
[0164]Β16、如Β15所述的裝置,其中,
[0165]所述測試執(zhí)行單元,進(jìn)一步適于在查詢經(jīng)驗列表后,將所述應(yīng)用添加到新應(yīng)用統(tǒng)計列表中;
[0166]其中,運維人員對新應(yīng)用統(tǒng)計列表中的應(yīng)用的執(zhí)行邏輯進(jìn)行分析后,將該應(yīng)用的引導(dǎo)頁相關(guān)內(nèi)容添加到所述引導(dǎo)頁數(shù)據(jù)庫中。
[0167]Β17、如Bll所述的裝置,其中,
[0168]所述存儲單元,進(jìn)一步適于保存協(xié)議特征列表;
[0169]所述測試執(zhí)行單元,進(jìn)一步適于在當(dāng)前UI不是引導(dǎo)頁時,將當(dāng)前UI上的文字與協(xié)議特征列表進(jìn)行匹配;如果匹配,則判斷當(dāng)前UI是所述應(yīng)用的協(xié)議頁,在當(dāng)前UI中的查找到同意該協(xié)議的控件并觸發(fā),以跳轉(zhuǎn)到下一個UI。
[0170]Β18、如Bll所述的裝置,其中,
[0171]所述測試執(zhí)行單元,適于當(dāng)所述控件特征識別單元識別出當(dāng)前UI上的登錄控件特征時,進(jìn)一步確定當(dāng)前UI上的登錄信息輸入框;將提交所述應(yīng)用的用戶所提交的登錄信息輸入到所述登錄信息輸入框中;并進(jìn)一步識別出當(dāng)前UI中的確認(rèn)登錄控件并觸發(fā)。
[0172]Β19、如Β11-Β18中任一項所述的裝置,其中,該裝置進(jìn)一步包括:
[0173]應(yīng)用分類單元,適于對提交測試的各應(yīng)用進(jìn)行分類;根據(jù)分類結(jié)果,確定所述引導(dǎo)頁數(shù)據(jù)庫的需要補充的內(nèi)容;獲取所述需要補充的內(nèi)容,添加到所述引導(dǎo)頁數(shù)據(jù)庫中。
[0174]Β20、如Β11-Β18中任一項所述的裝置,其中,該裝置進(jìn)一步包括:
[0175]報告生成單元,適于記錄在所述應(yīng)用的每個UI上的執(zhí)行操作和執(zhí)行的結(jié)果,生成測試報告。
【主權(quán)項】
1.一種對應(yīng)用的用戶界面UI進(jìn)行測試的方法,其中,該方法包括: 獲取提交測試的應(yīng)用,并啟動所述應(yīng)用; 對于所述應(yīng)用的每個當(dāng)前UI,識別該當(dāng)前UI上的控件特征; 如果識別出該當(dāng)前UI上控件特征,則觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI; 如果在該當(dāng)前UI上沒有識別出控件特征,則通過查詢引導(dǎo)頁數(shù)據(jù)庫判斷該當(dāng)前UI是否為引導(dǎo)頁,如果該當(dāng)前UI是引導(dǎo)頁則進(jìn)一步從引導(dǎo)頁數(shù)據(jù)庫中獲取該引導(dǎo)頁的操作信息,根據(jù)獲取的該引導(dǎo)頁的操作信息在該當(dāng)前UI上進(jìn)行相應(yīng)的操作,以跳過該引導(dǎo)頁。2.如權(quán)利要求1所述的方法,其中,所述通過查詢引導(dǎo)頁數(shù)據(jù)庫判斷該當(dāng)前UI是否為引導(dǎo)頁包括: 獲取所述應(yīng)用的包名和當(dāng)前Activity組件的類名; 以所述包名和Activity組件的類名作為索引查詢所述引導(dǎo)頁數(shù)據(jù)庫,如果所述引導(dǎo)頁數(shù)據(jù)庫中存在包含相同包名和Activity組件的類名的條目,則判斷當(dāng)前UI是引導(dǎo)頁; 其中,所述引導(dǎo)頁數(shù)據(jù)庫中對應(yīng)保存了包名、Activity組件的類名和相應(yīng)的操作信息。3.如權(quán)利要求1所述的方法,其中, 所述引導(dǎo)頁數(shù)據(jù)庫位于服務(wù)器側(cè); 則所述通過查詢引導(dǎo)頁數(shù)據(jù)判斷該當(dāng)前UI是否為引導(dǎo)頁包括:通過查詢服務(wù)器側(cè)的引導(dǎo)頁數(shù)據(jù)判斷該當(dāng)前UI是否為引導(dǎo)頁。4.如權(quán)利要求1所述的方法,其中,所述對于所述應(yīng)用的每個當(dāng)前UI,識別該當(dāng)前UI上的控件特征包括: 獲取所述應(yīng)用的關(guān)于所述當(dāng)前UI的源數(shù)據(jù); 通過分析獲取的源數(shù)據(jù)識別當(dāng)前UI上的控件特征。5.如權(quán)利要求1所述的方法,其中,該方法進(jìn)一步包括: 如果當(dāng)前UI不是引導(dǎo)頁,則查詢經(jīng)驗列表; 判斷當(dāng)前UI中是否存在與經(jīng)驗列表中的任一項匹配的文字或字符串; 如果存在匹配項,則在當(dāng)前UI中點擊所匹配的文字或字符串,以嘗試跳轉(zhuǎn)到下一個UI。6.如權(quán)利要求5所述的方法,其中,該方法進(jìn)一步包括: 查詢經(jīng)驗列表后,還將所述應(yīng)用添加到新應(yīng)用統(tǒng)計列表中; 其中,運維人員對新應(yīng)用統(tǒng)計列表中的應(yīng)用的執(zhí)行邏輯進(jìn)行分析后,將該應(yīng)用的引導(dǎo)頁相關(guān)內(nèi)容添加到所述引導(dǎo)頁數(shù)據(jù)庫中。7.如權(quán)利要求1所述的方法,其中,該方法進(jìn)一步包括: 如果當(dāng)前UI不是引導(dǎo)頁,則將當(dāng)前UI上的文字與協(xié)議特征列表進(jìn)行匹配; 如果匹配,則判斷當(dāng)前UI是所述應(yīng)用的協(xié)議頁,在當(dāng)前UI中的查找到同意該協(xié)議的控件并觸發(fā),以跳轉(zhuǎn)到下一個UI。8.如權(quán)利要求1所述的方法,其中,所述如果識別出該當(dāng)前UI上控件特征,則觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI包括: 如果識別出當(dāng)前UI上的登錄控件特征,則進(jìn)一步確定當(dāng)前UI上的登錄信息輸入框; 將提交所述應(yīng)用的用戶所提交的登錄信息輸入到所述登錄信息輸入框中; 進(jìn)一步識別出當(dāng)前UI中的確認(rèn)登錄控件并觸發(fā)。9.如權(quán)利要求1-8中任一項所述的方法,其中,該方法進(jìn)一步包括: 對提交測試的各應(yīng)用進(jìn)行分類; 根據(jù)分類結(jié)果,確定所述引導(dǎo)頁數(shù)據(jù)庫的需要補充的內(nèi)容; 獲取所述需要補充的內(nèi)容,添加到所述引導(dǎo)頁數(shù)據(jù)庫中。10.—種對應(yīng)用的用戶界面UI進(jìn)行測試的裝置,其中,該裝置包括: 獲取單元,適于獲取提交測試的應(yīng)用,并啟動所述應(yīng)用; 控件特征識別單元,適于對于所述應(yīng)用的每個當(dāng)前UI,識別該當(dāng)前UI上的控件特征;測試執(zhí)行單元,適于當(dāng)所述控件特征識別單元識別出該當(dāng)前UI上控件特征時,觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI ;當(dāng)所述控件特征識別單元在該當(dāng)前UI上沒有識別出控件特征時,通過查詢引導(dǎo)頁數(shù)據(jù)庫判斷該當(dāng)前UI是否為引導(dǎo)頁,如果該當(dāng)前UI是引導(dǎo)頁則進(jìn)一步從引導(dǎo)頁數(shù)據(jù)庫中獲取該引導(dǎo)頁的操作信息,根據(jù)獲取的該引導(dǎo)頁的操作信息在該當(dāng)前UI上進(jìn)行相應(yīng)的操作,以跳過該引導(dǎo)頁。 存儲單元,適于保存引導(dǎo)頁數(shù)據(jù)庫。
【專利摘要】本發(fā)明公開了一種對應(yīng)用的用戶界面UI進(jìn)行測試的方法和裝置,該方法包括:獲取提交測試的應(yīng)用,并啟動所述應(yīng)用;對于所述應(yīng)用的每個當(dāng)前UI,識別該當(dāng)前UI上的控件特征;如果識別出該當(dāng)前UI上控件特征,則觸發(fā)該控件特征對應(yīng)的控件,跳轉(zhuǎn)到所述應(yīng)用的下一個UI;如果在該當(dāng)前UI上沒有識別出控件特征,則通過查詢引導(dǎo)頁數(shù)據(jù)庫判斷該當(dāng)前UI是否為引導(dǎo)頁,如果該當(dāng)前UI是引導(dǎo)頁則進(jìn)一步從引導(dǎo)頁數(shù)據(jù)庫中獲取該引導(dǎo)頁的操作信息,根據(jù)獲取的該引導(dǎo)頁的操作信息在該當(dāng)前UI上進(jìn)行相應(yīng)的操作,以跳過該引導(dǎo)頁。本方案實現(xiàn)了智能地根據(jù)UI中的控件特征對UI中的控件進(jìn)行針對性地觸發(fā)測試,能夠大大提高測試的有效性和可靠性,節(jié)省測試時間成本。
【IPC分類】G06F11/36
【公開號】CN105607993
【申請?zhí)枴緾N201510640459
【發(fā)明人】田野, 張輝
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司
【公開日】2016年5月25日
【申請日】2015年9月30日