測試腳本生成裝置及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及自動化測試領(lǐng)域,尤其涉及一種測試腳本生成裝置及方法。
【背景技術(shù)】
[0002]MTBF(Mean Time Between Failure,平均故障間隔時間)是衡量產(chǎn)品可靠性的一個指標,具體來說,就是相鄰兩次故障之間的平均間隔時間。對以手機為代表的移動終端而言,MTBF測試就是測試移動終端的穩(wěn)定性,通過不斷的反復(fù)操作移動終端的基本功能,來查看移動終端是否正常,以及在整個測試過程中,是否出現(xiàn)了閃退、無響應(yīng)、報錯、死機、重啟、自動關(guān)機等故障,并通過計算測試時間內(nèi)的故障數(shù),來得到MTBF值,從而衡量系統(tǒng)的穩(wěn)定性?,F(xiàn)有技術(shù)中,通過編寫測試腳本,并由移動終端執(zhí)行測試腳本中的各控制指令模擬人手對用戶界面上控件的操作,實現(xiàn)MTBF測試的自動化。但是,目前的測試方法是基于坐標對控件進行操作,而不同屏幕大小移動終端的同一控件的坐標不同,需要針對不同屏幕大小的移動終端重新編寫測試腳本,導(dǎo)致測試腳本的編寫效率較低。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的主要目的在于提供一種測試腳本生成裝置及方法,旨在提高測試腳本的編寫效率。
[0004]為實現(xiàn)上述目的,本發(fā)明提供一種測試腳本生成裝置,該測試腳本生成裝置包括:
[0005]第一獲取模塊,用于獲取預(yù)設(shè)平均故障間隔時間MTBF測試流程中各個測試步驟對應(yīng)的控制指令;
[0006]第二獲取模塊,用于基于Uiautomator框架獲取各所述控制指令的執(zhí)行控件的標識信息;
[0007]生成模塊,用于基于所述預(yù)設(shè)MTBF測試流程包括的控制指令,以及各所述控制指令的執(zhí)行控件的標識信息,生成所述預(yù)設(shè)MTBF測試流程的測試腳本。
[0008]優(yōu)選地,所述第二獲取模塊包括:
[0009]信息獲取單元,用于基于Uiautomator框架獲取各所述控制指令的執(zhí)行控件的描述信息,其中,所述描述信息包括控件的文本信息、尺寸信息、位置信息以及是否可點擊;
[0010]標識生成單元,用于分別基于各所述執(zhí)行控件的描述信息,生成各所述執(zhí)行控件的唯一標識信息。
[0011]優(yōu)選地,所述測試腳本生成裝置還包括:
[0012]腳本分發(fā)模塊,用于在接收到測試指令時,將所述測試腳本發(fā)送至移動終端,以供所述移動終端執(zhí)行接收的測試腳本,并返回執(zhí)行所述測試腳本生成的執(zhí)行日志;
[0013]報告生成模塊,用于接收并基于所述移動終端返回的執(zhí)行日志生成測試報告。
[0014]優(yōu)選地,所述測試腳本生成裝置還包括故障定位模塊,用于在接收到所述移動終端返回的執(zhí)行日志時,獲取所述移動終端執(zhí)行所述測試腳本期間的運行日志;以及基于獲取的所述運行日志進行故障定位。
[0015]優(yōu)選地,所述測試腳本生成裝置還包括更新模塊,用于在接收到更新指令時,更新測試步驟與控制指令之間的映射關(guān)系。
[0016]此外,為實現(xiàn)上述目的,本發(fā)明還提供一種測試腳本生成方法,該測試腳本生成方法包括:
[0017]獲取預(yù)設(shè)平均故障間隔時間MTBF測試流程中各個測試步驟對應(yīng)的控制指令;
[0018]基于Uiautomator框架獲取各所述控制指令的執(zhí)行控件的標識信息;
[0019]基于所述預(yù)設(shè)MTBF測試流程包括的控制指令,以及各所述控制指令的執(zhí)行控件的標識信息,生成所述預(yù)設(shè)MTBF測試流程的測試腳本。
[0020]優(yōu)選地,所述基于Uiautomator框架獲取各所述控制指令的執(zhí)行控件的標識信息的步驟包括:
[0021]基于Uiautomator框架獲取各所述控制指令的執(zhí)行控件的描述信息,其中,所述描述信息包括控件的文本信息、尺寸信息、位置信息以及是否可點擊;
[0022]分別基于各所述執(zhí)行控件的描述信息,生成各所述執(zhí)行控件的唯一標識信息。
[0023]優(yōu)選地,所述基于所述預(yù)設(shè)MTBF測試流程包括的控制指令,以及各所述控制指令的執(zhí)行控件的標識信息,生成所述預(yù)設(shè)MTBF測試流程的測試腳本的步驟之后,還包括:
[0024]在接收到測試指令時,將所述測試腳本發(fā)送至移動終端,以供所述移動終端執(zhí)行接收的測試腳本,并返回執(zhí)行所述測試腳本生成的執(zhí)行日志;
[0025]接收并基于所述移動終端返回的執(zhí)行日志生成測試報告。
[0026]優(yōu)選地,所述測試腳本生成方法還包括:
[0027]在接收到所述移動終端返回的執(zhí)行日志時,獲取所述移動終端執(zhí)行所述測試腳本期間的運行日志;
[0028]基于獲取的所述運行日志進行故障定位。
[0029]優(yōu)選地,所述測試腳本生成方法還包括:
[0030]在接收到更新指令時,更新測試步驟與控制指令之間的映射關(guān)系。
[0031]本發(fā)明通過基于Uiautomator框架進行測試腳本的編寫,實現(xiàn)了基于控件的人工動作模擬,無需針對不同屏幕大小的移動終端重復(fù)編寫測試腳本,能夠有效提高測試腳本的編寫效率。
【附圖說明】
[0032]圖1為實現(xiàn)本發(fā)明各個實施例的移動終端的硬件結(jié)構(gòu)示意圖;
[0033]圖2為如圖1所示的移動終端的無線通信系統(tǒng)示意圖;
[0034]圖3為本發(fā)明測試腳本生成裝置第一實施例的功能模塊示意圖;
[0035]圖4為本發(fā)明測試腳本生成裝置第三實施例中測試服務(wù)器和移動終端的拓撲結(jié)構(gòu)示意圖;
[0036]圖5為本發(fā)明測試腳本生成方法第一實施例的流程示意圖。
[0037]本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
【具體實施方式】
[0038]應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0039]現(xiàn)在將參考附圖描述實現(xiàn)本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,〃模塊〃與〃部件〃可以混合地使用。
[0040]移動終端可以以各種形式來實施。例如,本發(fā)明中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數(shù)字廣播接收器、PDA(個人數(shù)字助理)、PAD(平板電腦)、PMP (便攜式多媒體播放器)、導(dǎo)航裝置等等的移動終端以及諸如數(shù)字TV、臺式計算機等等的固定終端。下面,假設(shè)終端是移動終端。然而,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動目的的元件之外,根據(jù)本發(fā)明的實施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。
[0041]圖1為實現(xiàn)本發(fā)明各個實施例的移動終端的硬件結(jié)構(gòu)示意。
[0042]移動終端100可以包括無線通信單元110、A/V (音頻/視頻)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動終端,但是應(yīng)理解的是,并不要求實施所有示出的組件??梢蕴娲貙嵤└嗷蚋俚慕M件。將在下面詳細描述移動終端的元件。
[0043]無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。例如,無線通信單元可以包括廣播接收模塊111、移動通信模塊112、無線互聯(lián)網(wǎng)模塊113、短程通信模塊114和位置信息模塊115中的至少一個。
[0044]廣播接收模塊111經(jīng)由廣播信道從外部廣播管理服務(wù)器接收廣播信號和/或廣播相關(guān)信息。廣播信道可以包括衛(wèi)星信道和/或地面信道。廣播管理服務(wù)器可以是生成并發(fā)送廣播信號和/或廣播相關(guān)信息的服務(wù)器或者接收之前生成的廣播信號和/或廣播相關(guān)信息并且將其發(fā)送給終端的服務(wù)器。廣播信號可以包括TV廣播信號、無線電廣播信號、數(shù)據(jù)廣播信號等等。而且,廣播信號可以進一步包括與TV或無線電廣播信號組合的廣播信號。廣播相關(guān)信息也可以經(jīng)由移動通信網(wǎng)絡(luò)提供,并且在該情況下,廣播相關(guān)信息可以由移動通信模塊112來接收。廣播信號可以以各種形式存在,例如,其可以以數(shù)字多媒體廣播(DMB)的電子節(jié)目指南(EPG)、數(shù)字視頻廣播手持(DVB-H)的電子服務(wù)指南(ESG)等等的形式而存在。廣播接收模塊111可以通過使用各種類型的廣播系統(tǒng)接收信號廣播。特別地,廣播接收模塊111可以通過使用諸如多媒體廣播-地面(DMB-T)、數(shù)字多媒體廣播-衛(wèi)星(DMB-S)、數(shù)字視頻廣播-手持(DVB-H),前向鏈路媒體(MediaFL0@)的數(shù)據(jù)廣播系統(tǒng)、地面數(shù)字廣播綜合服務(wù)(ISDB-T)等等的數(shù)字廣播系統(tǒng)接收數(shù)字廣播。廣播接收模塊111可以被構(gòu)造為適合提供廣播信號的各種廣播系統(tǒng)以及上述數(shù)字廣播系統(tǒng)。經(jīng)由廣播接收模塊111接收的廣播信號和/或廣播相關(guān)信息可以存儲在存儲器160 (或者其它類型的存儲介質(zhì))中。
[0045]移動通信模塊112將無線電信號發(fā)送到基站(例如,接入點、節(jié)點B等等)、外部終端以及服務(wù)器中的至少一個和/或從其接收無線電信號。這樣的無線電信號可以包括語音通話信號、視頻通話信號、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
[0046]無線互聯(lián)網(wǎng)模塊113支持移動終端的無線互聯(lián)網(wǎng)接入。該模塊可以內(nèi)部或外部地耦接到終端。該模塊所涉及的無線互聯(lián)網(wǎng)接入技術(shù)可以包括WLAN(無線LAN) (W1-Fi)、Wibro (無線寬帶)、Wimax (全球微波互聯(lián)接入)、HSDPA (高速下行鏈路分組接入)等等。
[0047]短程通信模塊114是用于支持短程通信的模塊。短程通信技術(shù)的一些示例包括藍牙?、射頻識別(RFID)、紅外數(shù)據(jù)協(xié)會(IrDA)、超寬帶(UWB)、紫蜂?等等。
[0048]位置信息模塊115是用于檢查或獲取移動終端的位置信息的模塊。位置信息模塊的典型示例是GPS (全球定位系統(tǒng))。根據(jù)當前的技術(shù),GPS模塊115計算來自三個或更多衛(wèi)星的距離信息和準確的時間信息并且對于計算的信息應(yīng)用三角測量法,從而根據(jù)經(jīng)度、瑋度和高度準確地計算三維當前位置信息。當前,用于計算位置和時間信息的方法使用三顆衛(wèi)星并且通過使用另外的一顆衛(wèi)星校正計算出的位置和時間信息的誤差。此外,GPS模塊115能夠通過實時地連續(xù)計算當前位置信息來計算速度信息。
[0049]A/V輸入單元120用于接收音頻或視頻信號。A/V輸入單元120可以包括相機121和麥克風1220,相機121對在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態(tài)圖片或視頻的圖像數(shù)據(jù)進行處理。處理后的圖像幀可以顯示在顯示單元151上。經(jīng)相機12