亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于推送機制的Android應(yīng)用自動化測試方法

文檔序號:10654452閱讀:207來源:國知局
一種基于推送機制的Android應(yīng)用自動化測試方法
【專利摘要】本發(fā)明一種基于推送機制的Android應(yīng)用自動化測試方法,屬于移動互聯(lián)網(wǎng)領(lǐng)域;具體步驟為:首先、將測試手機,PC機和錄制測試腳本手機連接到同一個局域網(wǎng)中;在錄制測試腳本手機上安裝待測APP,模擬正常用戶的使用狀態(tài),保存正常操作效果圖并形成自動測試的腳本。然后,將自動測試腳本上傳到PC機;PC機端將自動測試腳本及待測APP打包成消息,自動推送到測試手機中。最后,測試手機解析打包消息安裝APP,并運行自動測試腳本,反饋測試結(jié)果;PC機端將測試結(jié)果存入結(jié)果列表數(shù)據(jù)庫中;當(dāng)所有的測試手機測試完畢后,PC機控制卸載測試手機的待測APP。優(yōu)點在于:一臺PC端同時與大量測試手機建立無線連接,通過推送進行測試任務(wù)分發(fā),大大提高了測試效率。
【專利說明】
一種基于推送機制的Andr o i d應(yīng)用自動化測試方法
技術(shù)領(lǐng)域
[0001]本發(fā)明屬于移動互聯(lián)網(wǎng)領(lǐng)域,涉及移動端應(yīng)用質(zhì)量檢測,具體涉及一種基于推送機制的Android應(yīng)用自動化測試方法。
【背景技術(shù)】
[0002]隨著近幾年移動互聯(lián)網(wǎng)的迅猛發(fā)展和基于Android平臺的智能手機、平板電腦的普及,Android平臺應(yīng)用的數(shù)量呈爆發(fā)性增長的趨勢,越來越多的公司和個人開發(fā)者投入到Andr ο i d應(yīng)用的開發(fā)中。
[0003]測試是軟件開發(fā)流程中一個必不可少的環(huán)節(jié),相對于傳統(tǒng)的PC桌面應(yīng)用成熟的自動化測試體系,Android應(yīng)用的測試方法還處于發(fā)展的初期,以手動測試為主,尚缺一個符合Android應(yīng)用特點的自動化測試方法。
[0004]現(xiàn)有技術(shù)中,測試方法的流程主要是:先在PC上由測試人員錄制好測試腳本,然后將待測試手機與PC相連,再將測試腳本傳輸?shù)酱郎y試的手機上,最后在待測試手機上運行測試腳本,通過獲取應(yīng)用中控件的位置,運用腳本觸發(fā)控件,實現(xiàn)用戶行為模擬獲取測試結(jié)果O
[0005]但是,現(xiàn)有的Andro id測試方法存在兩個問題:
[0006]—是,自動化程度較低;現(xiàn)有方法流程中含有大量重復(fù)性的人工操作,由此帶來了測試效率低下,自動化程度低,人力成本高,容易產(chǎn)生人為偏差等一系列問題,已經(jīng)無法滿足日益增加的智能手機應(yīng)用測試需求。
[0007]二是,測試的手機數(shù)量有限;現(xiàn)有的方法基本上都需將測試用手機與PC進行物理上的連接(比如使用USB數(shù)據(jù)線),這樣一來,受PC物理端□數(shù)量有限的限制,一臺PC只能管理數(shù)量很少的測試用手機,若要在多個不同型號的手機上測試應(yīng)用,需要多次更換物理連接,操作極為不便,效率低下。

【發(fā)明內(nèi)容】

[0008]本發(fā)明針對現(xiàn)有技術(shù)中,由于PC物理端口數(shù)量有限,不能同時測試多數(shù)量的測試手機;而且測試手機需與PC通過USB相連接,操作不便的問題,提出了一種基于推送機制的Android應(yīng)用自動化測試方法。
[0009]具體步驟如下:
[0010]步驟一、將測試手機,PC機和錄制測試腳本手機連接到同一個局域網(wǎng)中;
[0011 ]測試手機的數(shù)量為N臺4為整數(shù)。PC機一臺;錄制測試腳本手機一臺;
[0012]N個測試手機和錄制測試腳本手機同時主動向PC機發(fā)起連接請求;每個測試手機向PC機發(fā)起HTTP長連接請求;PC機端主控程序建立活躍客戶端列表,保存每個測試手機的相關(guān)信息;
[0013]活躍客戶端列表中記錄的相關(guān)信息包括測試手機ID,測試手機的IP地址,發(fā)起連接的時間和目前正在執(zhí)行的測試任務(wù)信息。
[0014]步驟二、在錄制測試腳本手機上安裝要測試的某個APP,并點擊該測試APP以模擬正常用戶的使用狀態(tài),保存正常操作效果圖,并形成自動測試的腳本。
[0015]具體步驟如下:
[0016]步驟201、在錄制測試腳本手機上安裝要測試的某個APP;
[0017]步驟202、點擊當(dāng)前測試APP以模擬正常用戶的使用狀態(tài),并捕捉屏幕觸摸操作信息。
[0018]屏幕觸摸操作包括短暫點擊和持續(xù)性滑動操作,捕捉的屏幕觸摸操作信息包括:點擊位置的坐標(X,Y)和時間戳Timestamp,此次觸摸的持續(xù)時間T和滑動路徑PATH;
[0019]如果短暫點擊操作的持續(xù)時間為0,設(shè)置滑動路徑為空。
[0020]步驟203、在捕捉屏幕觸摸操作完畢后,系統(tǒng)自動進行手機屏幕截圖操作,記錄下本次操作的效果圖,用于在后續(xù)測試環(huán)節(jié)中驗證操作是否成功。
[0021]步驟204、重復(fù)步驟202,對每個測試操作記錄信息并保存每次測試操作對應(yīng)的效果圖,按時間順序排列起來標以序號,形成自動測試的腳本。
[0022]步驟三、將自動測試腳本上傳到PC機。
[0023]步驟四、PC機端將自動測試腳本及待測試APP打包成消息,通過HTTP長連接將消息自動推送到測試手機中。
[0024]首先,PC機端在收到打包消息后,檢查活躍客戶端列表,尋找空閑的測試手機,用來執(zhí)行測試任務(wù)。然后,將待測試的APP程序的安裝文件與錄制好的自動測試腳本打包為一個壓縮包,通過HTTP協(xié)議的POST請求將壓縮包推送給每個用來執(zhí)行測試任務(wù)的測試手機。
[0025]步驟五、測試手機解析打包消息安裝APP,并運行自動測試腳本,反饋測試結(jié)果;
[0026]具體步驟為:
[0027]步驟501、每個測試手機接收到PC機主控程序發(fā)送的推送消息后,進行解析,安裝消息中的待測試APP;
[0028]步驟502、每個測試手機運行自動測試腳本,按照錄制的步驟手動點擊屏幕,并將點擊后的手機屏幕截圖與測試腳本中保存的手機屏幕截圖進行比較;
[0029]步驟503、每個測試手機完成測試后生成測試結(jié)果,并將此測試結(jié)果通過HTTP連接發(fā)送回PC端主控程序。
[0030]測試結(jié)果包括:測試腳本中的每個操作是否運行正常以及是否得到預(yù)期結(jié)果;
[0031]步驟六、PC機端接收到測試手機發(fā)來的測試結(jié)果,存入結(jié)果列表數(shù)據(jù)庫中,工作人員根據(jù)測試結(jié)果進一步完善待測試APP。
[0032]步驟七、當(dāng)所有的測試手機都發(fā)送測試結(jié)果后,PC機控制卸載所有測試手機的待測 APP 0
[0033]本發(fā)明的優(yōu)點在于:
[0034]I )、一種基于推送機制的Android應(yīng)用自動化測試方法,推送技術(shù)使用TCP連接完成任務(wù)的分發(fā),解決了單臺PC機USB端口有限,導(dǎo)致無法同時通過USB數(shù)據(jù)線連接多個測試手機的問題。
[0035]2)、一種基于推送機制的Android應(yīng)用自動化測試方法,一臺PC端可同時與大量不同型號的測試手機建立無線連接,通過推送技術(shù)進行測試任務(wù)分發(fā),大大提高了測試效率。
[0036]3)、一種基于推送機制的Android應(yīng)用自動化測試方法,手機無需與PC通過USB相連接即可完成測試,一臺PC同時控制多個手機并測試,具有操作方便,同時測試手機數(shù)量多,提高測試效率與自動化程度高。
【附圖說明】
[0037]圖1是本發(fā)明一種基于推送機制的Android應(yīng)用自動化測試方法的整體系統(tǒng)架構(gòu)圖;
[0038]圖2是本發(fā)明一種基于推送機制的Android應(yīng)用自動化測試方法的流程圖;
[0039]圖3是本發(fā)明錄制測試腳本手機上安裝APP,并生成自動測試腳本的流程圖;
[0040]圖4是本發(fā)明測試手機解析APP運行自動測試腳本反饋測試結(jié)果的流程圖。
【具體實施方式】
[0041 ]下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。
[0042]本發(fā)明一種基于推送機制的Android應(yīng)用自動化測試方法,如圖1所示,本系統(tǒng)基于三個部分:多臺測試手機,一臺PC機和一臺錄制測試腳本手機,其中PC機端系統(tǒng)為windows或Iinux,錄制測試腳本手機與測試手機的系統(tǒng)均為Android系統(tǒng);多臺測試手機和錄制測試腳本手機同時連接到PC機上,通過在錄制測試腳本手機上手動點擊屏幕,錄制好測試腳本,之后系統(tǒng)自動將錄制好的腳本上傳到PC機,然后從PC機分發(fā)到各個測試手機,進行測試并收集結(jié)果。除了第一次錄制腳本外完全不需要人工操作,大大提高了測試自動化程度。
[0043]如圖2所示,具體步驟如下:
[0044]步驟一、將測試手機,PC機和錄制測試腳本手機連接到同一個局域網(wǎng)中;
[0045]三者位于同一個局域網(wǎng)可互相訪問,目前最常見的連接方法是手機使用WIFI連接到局域網(wǎng)中。測試手機的數(shù)量為N臺,內(nèi)部均含有本系統(tǒng)的測試腳本執(zhí)行程序;N為整數(shù);
[0046]PC機一臺,含有本系統(tǒng)的主控程序;
[0047]錄制測試腳本手機一臺,含有本系統(tǒng)的測試腳本錄制程序;
[0048]錄制測試腳本手機和N臺測試手機同時連接到PC上,測試手機上的測試腳本執(zhí)行程序通過servlet3提供的異步處理特性發(fā)起一個基于HTTPl.1協(xié)議的長連接,連接到PC機上的主控程序。具體連接步驟為:
[0049]首先、錄制測試腳本手機連接到PC機上;
[0050]然后、N個測試手機同時主動向PC機發(fā)起連接請求;
[0051 ] 測試手機與PC機端主控程序的通信依靠HTTP協(xié)議,HTTP協(xié)議1.1版本規(guī)定了長連接,該連接會持續(xù)存在直到通信的某一方主動斷開;每個測試手機端的程序向PC機上的主控端程序發(fā)起HTTP長連接請求,該HTTP長連接保持不斷直到該測試手機不再被用于測試。連接由測試手機主動發(fā)起,采用了基于serVlet3異步特性實現(xiàn)一個到PC機端主控程序的http長連接,等待主控程序下發(fā)任務(wù)。
[0052]最后、PC機端主控程序建立活躍客戶端列表,保持每個測試手機的相關(guān)信息;
[0053]PC機端主控程序在收到每個測試手機的HTTP長連接請求后,記錄下每個請求的測試手機信息和連接信息,存入活躍客戶端列表中,在測試手機斷開后從該列表中刪除對應(yīng)測試手機的信息。
[0054]活躍客戶端列表中記錄的相關(guān)信息包括測試手機ID,測試手機的IP地址,發(fā)起連接的時間和目前正在執(zhí)行的測試任務(wù)信息。
[0055]步驟二、在錄制測試腳本手機上安裝要測試的某個APP,并手動點擊該測試APP以模擬正常用戶的使用狀態(tài),本系統(tǒng)的測試腳本錄制程序會自動記錄下操作步驟,并對手機屏幕截圖作為正常操作效果圖,以生成自動測試腳本。
[0056]這樣做帶來的好處是,只需在一臺手機上手動錄制好測試流程,通過本發(fā)明即可自動將測試流程應(yīng)用到其他大量不同型號的手機上,快速完成測試。
[0057]如圖3所示,每個測試操作的錄制分為以下步驟:
[0058]步驟201、在錄制測試腳本手機上安裝要測試的某個APP;
[0059]步驟202、點擊當(dāng)前測試APP以模擬正常用戶的使用狀態(tài),并捕捉屏幕觸摸操作信息。
[0060]屏幕觸摸操作包括短暫點擊和持續(xù)性滑動操作,捕捉的屏幕觸摸操作信息包括:首先,記錄點擊位置的坐標(X,Y)和時間戳T imestamp,然后記錄此次觸摸的持續(xù)時間T和滑動路徑PATH;
[0061]如果短暫點擊操作的持續(xù)時間為0,滑動路徑為空。
[0062]步驟203、在捕捉屏幕觸摸操作完畢后,系統(tǒng)進行一次手機屏幕截圖操作,記錄下本次操作的效果圖,用于在后續(xù)測試環(huán)節(jié)中驗證操作是否成功。
[0063]步驟204、重復(fù)步驟202,對每個測試操作記錄信息并保存每次測試操作對應(yīng)的效果圖,按時間順序排列起來標以序號,即為自動測試的腳本。
[0064]步驟三、將自動測試腳本上傳到PC機端。
[0065]步驟四、PC機端程序?qū)⒆詣訙y試腳本及待測試APP打包成一個消息,通過與測試手機的HTTP連接將消息自動推送到測試手機中。
[0066]首先,PC機端在收到打包消息后,檢查活躍客戶端列表,尋找空閑的測試手機,用來執(zhí)行測試任務(wù)。然后,將待測試的APP程序的安裝文件與錄制好的自動測試腳本打包為一個壓縮包,通過HTTP協(xié)議的POST請求將壓縮包推送給每個用來執(zhí)行測試任務(wù)的測試手機。
[0067]PC端程序?qū)⒉襟E三中上傳的測試腳本及待測試的APP通過局域網(wǎng)自動推送到多個測試手機中。這樣做的好處是,一臺PC可以同時連接大量的不同型號的測試手機。而現(xiàn)有的通過USB線連接PC與測試用手機的方法由于PC機USB端口數(shù)量的限制,只能同時連接很少幾部測試手機。其中由于推送文本形式的消息較為方便,所以這里推送的是一個下載鏈接,鏈接指向APP和測試腳本。
[0068]步驟五、測試手機解析打包消息安裝APP,并運行自動測試腳本,反饋測試結(jié)果;
[0069]每個接收到PC機端主控程序發(fā)送的推送消息的測試用手機會解析該消息,根據(jù)消息中的鏈接下載APP和腳本,并安裝消息中的APP,運行自動測試腳本,按照腳本中錄制的步驟來模擬手動點擊屏幕的效果,并將點擊后的手機屏幕截圖與測試腳本中期望的手機屏幕截圖進行比較。其中由于不同型號的手機分辨率有可能不同,因此需要先對屏幕截圖進行放大或壓縮,再進行比較。
[0070]測試用手機在完成測試后會生成一個測試結(jié)果消息,記錄下測試腳本中的每個操作是否成功,并將此測試結(jié)果通過HTTP連接發(fā)送回PC端主控程序。
[0071]如圖4所示,具體步驟為:
[0072]步驟501、每個測試手機接收到PC機主控程序發(fā)送的推送消息后,進行解析,安裝消息中的待測試APP;
[0073]步驟502、每個測試手機運行自動測試腳本,按照錄制的步驟手動點擊屏幕,并將點擊后的手機屏幕截圖與測試腳本中保存的手機屏幕截圖進行比較;
[0074]步驟503、每個測試手機完成測試后生成測試結(jié)果,并將此測試結(jié)果通過HTTP連接發(fā)送回PC端主控程序。
[0075]測試結(jié)果包括:測試腳本中的每個操作是否運行正常以及是否得到預(yù)期結(jié)果;
[0076]步驟六、PC機端接收到測試手機發(fā)來的測試結(jié)果,存入結(jié)果列表數(shù)據(jù)庫中,工作人員根據(jù)測試結(jié)果進一步完善待測試APP。
[0077]測試結(jié)果發(fā)送到PC機端,PC機端對測試結(jié)果進行匯總,生成測試報告。
[0078]步驟七、當(dāng)所有的測試手機都發(fā)送測試結(jié)果后,PC機控制卸載所有測試手機的待測 APP 0
[0079]本發(fā)明與傳統(tǒng)方法相比,傳統(tǒng)方法中大部分都是手動完成,本發(fā)明提供一種具有較高自動化程度的Android應(yīng)用自動化測試方法,采用了 Android消息推送技術(shù)手段,通過無線網(wǎng)絡(luò)連接從PC端推送APP和自動化測試腳本到手機中,手機運行測試腳本對APP完成自動測試,使手機無需與PC通過USB相連接即可完成測試,達到了一臺PC同時控制多個手機并測試的效果,具有操作方便,可同時測試手機數(shù)量多的優(yōu)勢,和提高測試效率與自動化程度的意義。
【主權(quán)項】
1.一種基于推送機制的Android應(yīng)用自動化測試方法,其特征在于,具體步驟如下: 步驟一、將測試手機,PC機和錄制測試腳本手機連接到同一個局域網(wǎng)中; 測試手機的數(shù)量為N臺4為整數(shù); N臺測試手機和錄制測試腳本手機同時主動向PC機發(fā)起連接請求;每個測試手機向PC機發(fā)起HTTP長連接請求;PC機端主控程序建立活躍客戶端列表,保存每個測試手機的相關(guān)信息; 步驟二、在錄制測試腳本手機上安裝要測試的某個APP,并點擊該測試APP以模擬正常用戶的使用狀態(tài),保存正常操作效果圖,并形成自動測試的腳本; 步驟三、將自動測試腳本上傳到PC機; 步驟四、PC機端將自動測試腳本及待測試APP打包成消息,通過HTTP長連接將消息自動推送到測試手機中; 步驟五、測試手機解析打包消息安裝APP,并運行自動測試腳本,反饋測試結(jié)果; 步驟六、PC機端接收到測試手機發(fā)來的測試結(jié)果,存入結(jié)果列表數(shù)據(jù)庫中,工作人員根據(jù)測試結(jié)果進一步完善待測試APP; 步驟七、當(dāng)所有的測試手機都發(fā)送測試結(jié)果后,PC機控制卸載所有測試手機的待測APP02.如權(quán)利要求1所述的一種基于推送機制的Android應(yīng)用自動化測試方法,其特征在于,步驟一中,所述的活躍客戶端列表中記錄的相關(guān)信息包括測試手機ID,測試手機的IP地址,發(fā)起連接的時間和目前正在執(zhí)行的測試任務(wù)信息。3.如權(quán)利要求1所述的一種基于推送機制的Android應(yīng)用自動化測試方法,其特征在于,所述的步驟二,具體步驟為: 步驟201、在錄制測試腳本手機上安裝要測試的某個APP; 步驟202、點擊當(dāng)前測試APP以模擬正常用戶的使用狀態(tài),并捕捉屏幕觸摸操作信息; 屏幕觸摸操作包括短暫點擊和持續(xù)性滑動操作,捕捉的屏幕觸摸操作信息包括:點擊位置的坐標(X,Y)和時間戳Timestamp,此次觸摸的持續(xù)時間T和滑動路徑PATH; 步驟203、在捕捉屏幕觸摸操作完畢后,系統(tǒng)自動進行手機屏幕截圖操作,記錄下本次操作的效果圖,用于在后續(xù)測試環(huán)節(jié)中驗證操作是否成功; 步驟204、重復(fù)步驟202,對每個測試操作記錄信息并保存每次測試操作對應(yīng)的效果圖,按時間順序排列起來標以序號,形成自動測試的腳本。4.如權(quán)利要求1所述的一種基于推送機制的An d r ο i d應(yīng)用自動化測試方法,其特征在于,所述的步驟四,具體步驟為:首先,PC機端在收到打包消息后,檢查活躍客戶端列表,尋找空閑的測試手機,用來執(zhí)行測試任務(wù);然后,將待測試的APP程序的安裝文件與錄制好的自動測試腳本打包為一個壓縮包,通過HTTP協(xié)議的POST請求將壓縮包推送給每個用來執(zhí)行測試任務(wù)的測試手機。5.如權(quán)利要求1所述的一種基于推送機制的Android應(yīng)用自動化測試方法,其特征在于,所述的步驟五,具體步驟為: 步驟501、每個測試手機接收到PC機主控程序發(fā)送的推送消息后,進行解析,安裝消息中的待測試APP; 步驟502、每個測試手機運行自動測試腳本,按照錄制的步驟手動點擊屏幕,并將點擊后的手機屏幕截圖與測試腳本中保存的手機屏幕截圖進行比較; 步驟503、每個測試手機完成測試后生成測試結(jié)果,并將此測試結(jié)果通過HTTP連接發(fā)送回PC端主控程序; 測試結(jié)果包括:測試腳本中的每個操作是否運行正常以及是否得到預(yù)期結(jié)果。
【文檔編號】G06F11/36GK106021095SQ201610297261
【公開日】2016年10月12日
【申請日】2016年5月6日
【發(fā)明人】郭燕慧, 歐陽林澍, 王自豪, 張淼
【申請人】北京郵電大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1