移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)及其測(cè)試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動(dòng)終端測(cè)試領(lǐng)域,具體地涉及一種對(duì)移動(dòng)設(shè)備中的軟件進(jìn)行自動(dòng)化測(cè)試的系統(tǒng)以及方法。
【背景技術(shù)】
[0002]隨著移動(dòng)互聯(lián)網(wǎng)的飛速發(fā)展,基于移動(dòng)設(shè)備的應(yīng)用軟件越來(lái)越多,移動(dòng)設(shè)備的功能也越來(lái)越強(qiáng)大,例如通過(guò)移動(dòng)設(shè)備上網(wǎng)、瀏覽網(wǎng)頁(yè)以及其他各種各樣的應(yīng)用。在此背景下,對(duì)移動(dòng)設(shè)備的應(yīng)用軟件進(jìn)行測(cè)試的需求也越來(lái)越大。在這些應(yīng)用程序投放市場(chǎng)前需要經(jīng)過(guò)測(cè)試來(lái)驗(yàn)證它們的有效性、安全性等。如果僅僅通過(guò)人工測(cè)試這些應(yīng)用軟件的話,測(cè)試成本過(guò)高,因此產(chǎn)生了應(yīng)用軟件的自動(dòng)測(cè)試化工具。
[0003]例如,專利文獻(xiàn)I (CN103164336A)公開(kāi)了一種移動(dòng)終端上應(yīng)用程序的自動(dòng)化測(cè)試方法以及裝置。在該測(cè)試方法中,首先讀取記錄所有待測(cè)試對(duì)象的名稱的配置文件,并將所有代測(cè)試對(duì)象的名稱存儲(chǔ)到對(duì)象鏈表;列出所有待測(cè)試對(duì)象的名稱的列表,根據(jù)用戶的輸入選擇待測(cè)試對(duì)象中測(cè)試會(huì)引起系統(tǒng)關(guān)閉或者測(cè)試過(guò)程停止的對(duì)象并從對(duì)象列表中刪除被選中的對(duì)象;啟動(dòng)自動(dòng)化測(cè)試過(guò)程;加載對(duì)象列表中的待測(cè)試對(duì)象;對(duì)對(duì)象列表中的待測(cè)試對(duì)象進(jìn)行自動(dòng)化測(cè)試。該專利文獻(xiàn)I能夠進(jìn)行對(duì)待測(cè)對(duì)象的自動(dòng)化測(cè)試,但是缺少對(duì)測(cè)試進(jìn)行管理的功能。而且,專利文獻(xiàn)I僅是用于安卓系統(tǒng),無(wú)法跨操作系統(tǒng)進(jìn)行測(cè)試。
[0004]因此,可以看到現(xiàn)有技術(shù)中的移動(dòng)終端軟件的自動(dòng)測(cè)試化工具多數(shù)情況下還存在以下問(wèn)題:
(1)現(xiàn)有的測(cè)試系統(tǒng)及方法缺少測(cè)試管理功能(包括測(cè)試版本、案例、被測(cè)設(shè)備狀態(tài)、測(cè)試任務(wù)管理、測(cè)試結(jié)果統(tǒng)計(jì))功能實(shí)現(xiàn);
(2)現(xiàn)有的測(cè)試系統(tǒng)及方法沒(méi)有實(shí)現(xiàn)跨操作系統(tǒng)(1s、android)測(cè)試在統(tǒng)一測(cè)試平臺(tái)管理;
(3)現(xiàn)有的測(cè)試系統(tǒng)及方法未實(shí)現(xiàn)集群化,即執(zhí)行器無(wú)法作數(shù)量、功能擴(kuò)展,也無(wú)法實(shí)現(xiàn)遠(yuǎn)程部署;
(4)現(xiàn)有的測(cè)試執(zhí)行單元內(nèi)嵌在測(cè)試平臺(tái)中,無(wú)法在不修改整個(gè)測(cè)試平臺(tái)前提下新增新類(lèi)型移動(dòng)設(shè)備、新測(cè)試執(zhí)行方法。
[0005]
【發(fā)明內(nèi)容】
[0006]鑒于上述問(wèn)題,本發(fā)明旨在提供一種能夠?yàn)槎囝?lèi)型測(cè)試提供統(tǒng)一測(cè)試管理以及測(cè)試執(zhí)行操作的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)及其測(cè)試方法。
[0007]本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng),其特征在于,包括:
測(cè)試管理模塊,用于統(tǒng)一生成測(cè)試任務(wù)并且對(duì)測(cè)試任務(wù)進(jìn)行收集、存儲(chǔ)、分析和管理;一種或多種執(zhí)行器,與所述測(cè)試管理模塊分離部屬,用于從所述測(cè)試管理模塊獲取測(cè)試任務(wù)并下發(fā)到下述移動(dòng)設(shè)備測(cè)試代理模塊,并且向所述測(cè)試管理模塊反饋測(cè)試任務(wù)執(zhí)行結(jié)果;
移動(dòng)設(shè)備測(cè)試代理模塊,用于執(zhí)行所述測(cè)試任務(wù)并反饋結(jié)果至所述執(zhí)行器。
[0008]優(yōu)選地,所述執(zhí)行器與所述測(cè)試管理模塊通過(guò)網(wǎng)絡(luò)進(jìn)行連接。
[0009]優(yōu)選地,所述執(zhí)行器與所述移動(dòng)設(shè)備測(cè)試代理模塊通過(guò)USB或者WIFI連接。
[0010]優(yōu)選地,所述測(cè)試管理模塊具備:測(cè)試管理web前臺(tái),用于統(tǒng)一生成測(cè)試任務(wù),并且用于定期輪詢下述的測(cè)試數(shù)據(jù)庫(kù)以更新任務(wù)執(zhí)行狀態(tài);測(cè)試管理服務(wù)端,用于將由所述測(cè)試管理web前臺(tái)生成的測(cè)試任務(wù)插入到下述的測(cè)試數(shù)據(jù)庫(kù);測(cè)試數(shù)據(jù)庫(kù),用于存儲(chǔ)測(cè)試任務(wù);命令接口服務(wù),用于向指定的執(zhí)行器發(fā)送命令并且接受執(zhí)行器的反饋;數(shù)據(jù)庫(kù)接口服務(wù),用于為各執(zhí)行器提供統(tǒng)一的測(cè)試數(shù)據(jù)庫(kù)的接口,并且用于從所述測(cè)試數(shù)據(jù)庫(kù)下載測(cè)試任務(wù)到執(zhí)行器并且接受執(zhí)行器的反饋。
[0011 ] 優(yōu)選地,所述命令接口服務(wù)和所述數(shù)據(jù)庫(kù)接口服務(wù)以獨(dú)立進(jìn)程形式與所述測(cè)試管理服務(wù)端隔離。
[0012]優(yōu)選地,所述移動(dòng)設(shè)備測(cè)試代理模塊以軟件形式被安裝在移動(dòng)設(shè)備中。
[0013]優(yōu)選地,所述執(zhí)行器的數(shù)量和功能具有可擴(kuò)展性。
[0014]本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試方法,其特征在于,包括:
測(cè)試任務(wù)生成步驟,由測(cè)試管理web前臺(tái)統(tǒng)一生成測(cè)試任務(wù)并且插入到測(cè)試數(shù)據(jù)庫(kù);測(cè)試任務(wù)獲取步驟,通過(guò)執(zhí)行器輪詢查詢測(cè)試數(shù)據(jù)庫(kù)以獲取測(cè)試任務(wù);測(cè)試任務(wù)下發(fā)步驟,執(zhí)行器將獲取的測(cè)試任務(wù)下發(fā)至移動(dòng)設(shè)備測(cè)試代理模塊;測(cè)試任務(wù)執(zhí)行步驟,移動(dòng)設(shè)備測(cè)試代理模塊執(zhí)行測(cè)試任務(wù)并且將執(zhí)行結(jié)果反饋至執(zhí)行器;以及測(cè)試結(jié)果反饋步驟,執(zhí)行器再將測(cè)試執(zhí)行結(jié)果反饋到測(cè)試數(shù)據(jù)庫(kù)。
[0015]優(yōu)選地,在所述測(cè)試任務(wù)獲取步驟中,執(zhí)行器輪詢查詢測(cè)試數(shù)據(jù)庫(kù)以異步方式獲取測(cè)試任務(wù)。
[0016]優(yōu)選地,在所述測(cè)試任務(wù)下發(fā)步驟中,執(zhí)行器將獲取的測(cè)試任務(wù)進(jìn)行解析后分解為移動(dòng)設(shè)備、案例為維度的案例執(zhí)行命令并下發(fā)至移動(dòng)設(shè)備測(cè)試代理模塊。
[0017]優(yōu)選地,在所述測(cè)試任務(wù)執(zhí)行步驟中,移動(dòng)設(shè)備測(cè)試代理模塊執(zhí)行測(cè)試任務(wù)并且將執(zhí)行結(jié)果以并行方式反饋至執(zhí)行器。
[0018]優(yōu)選地,在所述測(cè)試任務(wù)下發(fā)步驟,執(zhí)行器將獲取的測(cè)試任務(wù)通過(guò)命令接口服務(wù)下發(fā)至移動(dòng)設(shè)備測(cè)試代理模塊。
[0019]優(yōu)選地,在所述測(cè)試任務(wù)獲取步驟中,通過(guò)執(zhí)行器統(tǒng)一通過(guò)數(shù)據(jù)庫(kù)接口輪詢查詢測(cè)試數(shù)據(jù)庫(kù)獲取測(cè)試任務(wù)。
[0020]根據(jù)本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)以及移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試方法,能夠?qū)崿F(xiàn)移動(dòng)設(shè)備完整測(cè)試管理功能,并且能夠統(tǒng)一測(cè)試管理服務(wù)和不同類(lèi)型執(zhí)行器來(lái)架構(gòu)實(shí)現(xiàn)多類(lèi)型測(cè)試(1S、android),由此能夠提高自動(dòng)化測(cè)試效率。而且,能夠?qū)崿F(xiàn)執(zhí)行器的集群結(jié)構(gòu),可實(shí)現(xiàn)執(zhí)行器備份、負(fù)荷分擔(dān)功能,縮短自動(dòng)化測(cè)試時(shí)間和提高測(cè)試執(zhí)行可靠性,同時(shí)能夠提供良好的功能可擴(kuò)展性。
[0021]
【附圖說(shuō)明】
[0022]圖1是表示本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)的概要圖。
[0023]圖2是表示本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖。
[0024]圖3是表示本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試方法的步序圖。
[0025]
【具體實(shí)施方式】
[0026]下面介紹的是本發(fā)明的多個(gè)實(shí)施例中的一些,旨在提供對(duì)本發(fā)明的基本了解。并不旨在確認(rèn)本發(fā)明的關(guān)鍵或決定性的要素或限定所要保護(hù)的范圍。
[0027]圖1是表示本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)的概要圖。
[0028]如圖1所示,本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)大體分為三個(gè)部分:測(cè)試管理模塊100、一種或多種執(zhí)行器200、移動(dòng)設(shè)備測(cè)試代理模塊300。
[0029]測(cè)試管理模塊100用于統(tǒng)一生成測(cè)試任務(wù)并且對(duì)測(cè)試任務(wù)進(jìn)行收集、存儲(chǔ)、分析和管理。
[0030]執(zhí)行器200與測(cè)試管理模塊100分離部屬,用于從測(cè)試管理模塊100獲取測(cè)試任務(wù)并下發(fā)到移動(dòng)設(shè)備測(cè)試代理模塊300,并且向測(cè)試管理模塊100反饋測(cè)試任務(wù)執(zhí)行結(jié)果。
[0031]移動(dòng)設(shè)備測(cè)試代理模塊300用于執(zhí)行所述測(cè)試任務(wù)并反饋結(jié)果至執(zhí)行器200。
[0032]執(zhí)行器200與測(cè)試管理模塊100通過(guò)網(wǎng)絡(luò)進(jìn)行連接,執(zhí)行器200與移動(dòng)設(shè)備測(cè)試代理模塊300通過(guò)USB或者WIFI連接。
[0033]圖2是表示本發(fā)明的移動(dòng)設(shè)備軟件自動(dòng)化測(cè)試集群系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖。
[0034]如圖2所示,圖1中的測(cè)試管理模塊100包括:測(cè)試管理web前臺(tái)101、測(cè)試管理服務(wù)端102、測(cè)試數(shù)據(jù)庫(kù)103、命令接口服務(wù)104、數(shù)據(jù)庫(kù)接口服務(wù)105。
[0035]測(cè)試管理web前臺(tái)101用于統(tǒng)一生成測(cè)試任務(wù)并且用于定期輪詢測(cè)試數(shù)據(jù)庫(kù)103以更新任務(wù)執(zhí)行狀態(tài)。測(cè)試管理服務(wù)端102用于將由測(cè)試管理web前臺(tái)101生成的測(cè)試任務(wù)插入到測(cè)試數(shù)據(jù)庫(kù)103。
[0036]測(cè)試數(shù)據(jù)庫(kù)103用于存儲(chǔ)測(cè)試任務(wù)。命令接口服務(wù)104用于向指定的執(zhí)行器發(fā)送命令并且接受執(zhí)行器的反饋。數(shù)據(jù)庫(kù)接口服務(wù)105用于為各執(zhí)行器提供統(tǒng)一的測(cè)試數(shù)據(jù)庫(kù)的接口,并且用于從測(cè)試數(shù)據(jù)庫(kù)103下載測(cè)試任務(wù)到執(zhí)行器并且接受執(zhí)行器的反饋。
[0037]其中,測(cè)試管理服務(wù)端102、命令接口服務(wù)104和數(shù)據(jù)庫(kù)接口服務(wù)105 (面向執(zhí)行器200)能夠部屬在同一物理服務(wù)器上,但是命令接口服務(wù)以獨(dú)立進(jìn)程形式與測(cè)試管理服務(wù)端102隔離。
[0038]在圖2中,作為執(zhí)行器200,不例表不為多個(gè)android執(zhí)行器I…android執(zhí)行器η、以及一個(gè)1s執(zhí)行器I。作為執(zhí)行器200的Android執(zhí)行器或1s執(zhí)行器從測(cè)試數(shù)據(jù)庫(kù)103獲取測(cè)試任務(wù)隊(duì)列,向移動(dòng)設(shè)備測(cè)試代理模塊300下發(fā)執(zhí)行命令,并且向測(cè)試管理服務(wù)模塊100反饋測(cè)試任務(wù)執(zhí)行結(jié)果。執(zhí)行器200能夠進(jìn)行移動(dòng)設(shè)備連接管理(連接監(jiān)測(cè)、自動(dòng)重連、上報(bào)設(shè)備狀態(tài))