應(yīng)用程序的性能測試方法及終端的制作方法
【專利摘要】本發(fā)明公開一種應(yīng)用程序的性能測試方法及終端,通過響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,記錄被測應(yīng)用程序在測試終端上不用測試場景中的執(zhí)行過程以生成測試腳本文件;執(zhí)行測試腳本文件,記錄執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端的方法,具有自動獲取被測應(yīng)用程序在不同測試場景中的性能指標(biāo)的有益效果;進一步地,由于執(zhí)行測試腳本文件之前清除了緩存數(shù)據(jù),因此提高了測試數(shù)據(jù)的準(zhǔn)確性;另外,由于測試的整個過程均為自動化處理,因此提高了測試效率,節(jié)省了人力成本和測試時間。
【專利說明】應(yīng)用程序的性能測試方法及終端
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及性能測試技術(shù),尤其涉及一種應(yīng)用程序的性能測試方法及終端。
【背景技術(shù)】
[0002]目前,對應(yīng)用程序的性能指標(biāo)進行測試時,在建立了相應(yīng)的軟件測試場景后,基于上述軟件測試場景,將運行被測應(yīng)用程序的終端與測試終端連接,錄入被測應(yīng)用程序的數(shù)據(jù)包名稱,對被測應(yīng)用程序進行性能測試;比如,在PC上安裝對應(yīng)的測試場景,并將運行瀏覽器的手機與PC連接后,開始測試瀏覽器的性能指標(biāo)時,錄入瀏覽器的數(shù)據(jù)包名稱,測試完成后,將生成的數(shù)據(jù)報表反饋給測試人員。在不同的測試場景中,利用上述測試方法對同一被測應(yīng)用程序進行性能測試時,在每一種測試場景中均需要重復(fù)執(zhí)行上述測試過程;因為上述測試方法在不同的多測試場景中對同一被測應(yīng)用程序進行測試時,容易引起測試數(shù)據(jù)的混亂和測試沖突的問題。
【發(fā)明內(nèi)容】
[0003]本發(fā)明實施例的主要目的是提供一種應(yīng)用程序的性能測試方法及終端,旨在達到在不同的多測試場景中對同一被測應(yīng)用程序進行性能測試的目的。
[0004]本發(fā)明實施例公開了一種應(yīng)用程序的性能測試方法,包括以下步驟:
[0005]響應(yīng)用戶端觸發(fā)的測試指令;
[0006]根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;
[0007]按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件;
[0008]執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
[0009]本發(fā)明實施例還公開了一種應(yīng)用程序的性能測試終端,包括:
[0010]場景設(shè)置模塊,用于響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;
[0011]腳本生成模塊,用于按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件;
[0012]指標(biāo)獲取模塊,用于執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
[0013]本發(fā)明實施例通過響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件;執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端的方法,具有能夠在不同的多測試場景中對同一被測應(yīng)用程序進行性能測試有益效果,解決了多測試場景中對同一被測應(yīng)用程序進行測試時,所引起的測試數(shù)據(jù)混亂和測試沖突的問題;進一步地,由于執(zhí)行測試腳本文件之前清除了緩存數(shù)據(jù),因此提高了測試數(shù)據(jù)的準(zhǔn)確性;另外,由于測試的整個過程均為自動化處理,因此提高了測試效率,節(jié)省了人力成本和測試時間。
【專利附圖】
【附圖說明】
[0014]圖1是本發(fā)明應(yīng)用程序的性能測試方法第一實施例流程示意圖;
[0015]圖2是本發(fā)明應(yīng)用程序的性能測試方法中,在多個測試場景中對被測應(yīng)用程序進行測試時,測試場景與時間節(jié)點對應(yīng)關(guān)系一實施例結(jié)構(gòu)示意圖;
[0016]圖3是本發(fā)明應(yīng)用程序的性能測試方法第二實施例流程示意圖;
[0017]圖4是本發(fā)明應(yīng)用程序的性能測試終端第一實施例功能模塊示意圖;
[0018]圖5是本發(fā)明應(yīng)用程序的性能測試終端第二實施例功能模塊示意圖。
[0019]本發(fā)明實施例目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
【具體實施方式】
[0020]以下結(jié)合說明書附圖及具體實施例進一步說明本發(fā)明的技術(shù)方案。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0021]參照圖1,圖1是本發(fā)明應(yīng)用程序的性能測試方法第一實施例流程示意圖;如圖1所示,本發(fā)明應(yīng)用程序的性能測試方法包括以下步驟:
[0022]步驟S01、響應(yīng)用戶端觸發(fā)的測試指令;
[0023]步驟S02、根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;
[0024]在用戶端打開測試終端上的測試工具,選擇被測應(yīng)用程序后,觸發(fā)對應(yīng)的測試指令;測試終端響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的測試場景。
[0025]所述測試場景可以理解為一種用來模擬大量用戶操作的技術(shù)手段,通過配置和執(zhí)行場景向服務(wù)器產(chǎn)生負(fù)載,檢測系統(tǒng)的各項性能指標(biāo);以瀏覽器為例,用戶端雙擊瀏覽器的快捷圖標(biāo)至瀏覽器響應(yīng)用戶的操作并顯示瀏覽器對應(yīng)的主頁面,這一過程可以為一個測試場景;當(dāng)用戶端在瀏覽器顯示的主頁面上輸入關(guān)鍵詞并觸發(fā)瀏覽器的搜索指令后,瀏覽器響應(yīng)上述搜索指令,進行關(guān)鍵詞搜索并顯示搜索結(jié)果,這一過程也可以為一個測試場景。本領(lǐng)域的技術(shù)人員可以理解,所述測試場景可以根據(jù)具體的被測應(yīng)用程序進行選取,本實施例對所述測試場景的具體內(nèi)容和形式不作限定。
[0026]在所述被測應(yīng)用在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;請參照圖2,圖2是本發(fā)明應(yīng)用程序的性能測試方法中,在多個測試場景中對被測應(yīng)用程序進行測試時,測試場景與時間節(jié)點對應(yīng)關(guān)系一實施例結(jié)構(gòu)示意圖;按照圖2所述的時間節(jié)點,在每次執(zhí)行所述測試腳本文件時,均按照所述時間節(jié)點依次執(zhí)行各測試場景。
[0027]在所述被測應(yīng)用僅在測試終端上的一個測試場景中執(zhí)行時,可以不設(shè)置該測試場景的時間節(jié)點;當(dāng)然,也可以設(shè)置該測試場景的時間節(jié)點;此時僅設(shè)置兩個時間節(jié)點即可,如圖2所示的時間節(jié)點O和時間節(jié)點1,分別對應(yīng)被測應(yīng)用程序在測試終端上執(zhí)行的時間起點和時間終點。
[0028]步驟S03、按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件;
[0029]測試終端按照所述時間節(jié)點,分別記錄被測應(yīng)用程序在測試終端上按照測試場景對被測應(yīng)用程序進行操作的過程;即記錄被測應(yīng)用程序在測試終端上的每個測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有測試場景中執(zhí)行過程的測試腳本文件。該測試腳本文件包括設(shè)置的各時間節(jié)點。
[0030]進一步地,在整個測試場景中,測試終端也可以不設(shè)置時間節(jié)點;在不設(shè)置時間節(jié)點的情況下,測試終端默認(rèn)該被測應(yīng)用僅在一個測試場景中執(zhí)行。以測試瀏覽器啟動時的性能指標(biāo)為例,測試終端在用戶端點擊錄制按鈕、觸發(fā)測試指令時,測試終端響應(yīng)用戶端觸發(fā)的測試指令,并開始錄制,待瀏覽器啟動并加載完數(shù)據(jù)后;用戶端點擊停止錄制按鈕,則測試終端響應(yīng)停止錄制指令;測試終端默認(rèn)本次對被測應(yīng)用程序的性能測試為啟動時的這一個測試場景;在測試終端回放時,所記錄的瀏覽器的性能指標(biāo)為用戶端開始錄制到結(jié)束錄制的性能數(shù)據(jù)。本實施例中,所述錄制指的是,測試終端記錄用戶端在該測試終端上的操作過程;所述回放指的是測試終端按照記錄的錄制內(nèi)容,自動執(zhí)行用戶端的操作。
[0031]步驟S04、執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
[0032]測試終端執(zhí)行生成的測試腳本文件,記錄在所述測試腳本文件的執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),并將得到的各性能指標(biāo)返回至用戶端,以供測試人員分析。
[0033]測試終端記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)包括:通過讀取測試終端中所述被測應(yīng)用程序的配置文件數(shù)據(jù),獲取并記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo);或者,直接調(diào)用測試終端中的數(shù)據(jù)讀取函數(shù)如安卓系統(tǒng)中的sdk,獲取執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo)并記錄。
[0034]在一優(yōu)選的實施例中,測試終端按照預(yù)設(shè)執(zhí)行次數(shù)M,循環(huán)執(zhí)行所述測試腳本文件,記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),以得到所述被測應(yīng)用程序各性能指標(biāo)所對應(yīng)的M個數(shù)值;分別計算各性能指標(biāo)所對應(yīng)的M個數(shù)值的平均值,將得到的各性能指標(biāo)對應(yīng)的平均值返回至用戶端;其中,M為大于或等于I的正整數(shù)。
[0035]測試終端記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)可以僅記錄所需要的性能指標(biāo),比如,僅記錄內(nèi)存值和CPU占用率;也可以記錄該被測應(yīng)用程序執(zhí)行過程中的所有性能指標(biāo),比如,不僅記錄所需要的內(nèi)存值和CPU占用率,還記錄所使用的流量、電量及響應(yīng)速度等。若被測應(yīng)用程序包含至少兩個進程,則記錄的每次執(zhí)行過程中該被測應(yīng)用程序的性能指標(biāo)為該被測應(yīng)用程序的所有進程對應(yīng)的性能指標(biāo)之和。根據(jù)記錄的循環(huán)執(zhí)行時獲取的各性能指標(biāo)分別對應(yīng)的M個數(shù)值,分別計算每個性格指標(biāo)中M個數(shù)值的平均值,將計算得到的各性能指標(biāo)的平均值作為本次測試結(jié)果返回至用戶端。
[0036]以測試瀏覽器的性能指標(biāo)中瀏覽器占用的內(nèi)存值和CPU占用率為例,請再次參照圖2,測試終端根據(jù)用戶端的操作(比如用戶端點擊η次時間節(jié)點設(shè)置按鈕)設(shè)置η個時間節(jié)點,則執(zhí)行一次測試腳本文件時,將執(zhí)行(η+1)個測試場景;把(η+1)個測試場景中,對于在第i個測試場景中第j次執(zhí)行測試腳本文件時,測試時瀏覽器所占用的內(nèi)存值和CPU占用率分別記錄到數(shù)組a」[i]和b」[i]中;其中j和i的取值為:j e [O, Μ) ; i e [O, η];根據(jù)記錄的數(shù)組aji]和bji],得到第i個測試場景所占用的內(nèi)存均值和CPU占用率均值分別
m -1m I
為:¥+?[/]
MM °
[0037]本領(lǐng)域的技術(shù)人員可以理解,測試終端根據(jù)記錄的每次執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo),獲取記錄的各性能指標(biāo)所對應(yīng)的均值的方法不局限于上述這一種方式,也可以采用其他方式實現(xiàn),本實施例不進行一一窮舉;本實施例對根據(jù)記錄的每次執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo),獲取記錄的各性能指標(biāo)所對應(yīng)的均值的方法不做限定。
[0038]在一優(yōu)選的實施例中,本實施例應(yīng)用程序的測試方法可以應(yīng)用在對不同產(chǎn)品的測試中;比如,需要對不同產(chǎn)品中的同一應(yīng)用程序的性能進行比較時,可以采用本實施例應(yīng)用程序的測試方法分別獲取該應(yīng)用程序在不同產(chǎn)品中各自對應(yīng)的性能參數(shù),進而對其性能進行比較。以比較UC瀏覽器、QQ瀏覽器和百度瀏覽器的性能為例;可以分別采用本實施例所述的應(yīng)用程序的測試方法,分別獲取UC瀏覽器、QQ瀏覽器和百度瀏覽器各自對應(yīng)的測試腳本文件,并按照本實施例所述的應(yīng)用程序的測試方法分別執(zhí)行上述不同產(chǎn)品的瀏覽器各自對應(yīng)的測試腳本文件,從而獲取UC瀏覽器、QQ瀏覽器和百度瀏覽器各自對應(yīng)的性能指標(biāo)并進行比對。
[0039]本實施例通過響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件;執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端的方法,具有能夠在不同的多測試場景中對同一被測應(yīng)用程序進行性能測試的有益效果,解決了多測試場景中對同一被測應(yīng)用程序進行測試時,所引起的測試數(shù)據(jù)混亂和測試沖突的問題;另外,由于測試的整個過程均為自動化處理,因此提高了測試效率,節(jié)省了人力成本和測試時間。
[0040]基于圖1和圖2所述實施例的具體描述,請參照圖3,圖3是本發(fā)明應(yīng)用程序的性能測試方法第二實施例流程示意圖;本實施例與圖1所述實施例的區(qū)別是,僅增加了步驟SlO ;本實施例僅對步驟SlO進行具體描述,本發(fā)明實施例應(yīng)用程序的性能測試方法所涉及的其他步驟請參照相關(guān)實施例的具體描述,在此不再贅述。
[0041]如圖3所示,本發(fā)明應(yīng)用程序的性能測試方法在“步驟S04、執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端”之前還包括:
[0042]步驟S10、清除所述被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存數(shù)據(jù)。
[0043]在執(zhí)行測試腳本文件之前,將被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存數(shù)據(jù)清除;由于在測試終端上執(zhí)行所述被測應(yīng)用程序時,均會產(chǎn)生一些緩存數(shù)據(jù),若不清除產(chǎn)生的這些緩存數(shù)據(jù),在循環(huán)執(zhí)行測試腳本文件時,這些緩存數(shù)據(jù)將會對記錄的被測應(yīng)用程序執(zhí)行時的性能指標(biāo)產(chǎn)生影響,導(dǎo)致記錄的性能指標(biāo)不準(zhǔn)確,嚴(yán)重時還可能導(dǎo)致測試腳本文件不能正常運行。為了保證執(zhí)行測試腳本文件時,記錄的性能指標(biāo)不受緩存數(shù)據(jù)的影響,可以在每次執(zhí)行測試腳本文件時,均清理一次緩存數(shù)據(jù)。
[0044]在一優(yōu)選的實施例中,在清除所述被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存數(shù)據(jù)之前,測試終端可以先設(shè)置一個存儲目錄,用于存儲被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存文件;設(shè)置緩存文件存儲目錄的目的是,執(zhí)行測試腳本文件時,保證測試腳本文件的執(zhí)行環(huán)境與首次記錄的被測應(yīng)用程序在測試終端上的執(zhí)行環(huán)境—致。
[0045]本實施例通過在執(zhí)行測試腳本文件之前清除緩存數(shù)據(jù)的方法,具有提高被測應(yīng)用程序測試數(shù)據(jù)準(zhǔn)確性的有益效果。
[0046]請參照圖4,圖4是本發(fā)明應(yīng)用程序的性能測試終端第一實施例功能模塊示意圖;如圖4所示,本發(fā)明應(yīng)用程序的性能測試終端包括:場景設(shè)置模塊01、腳本生成模塊02和指標(biāo)獲取模塊03。
[0047]場景設(shè)置模塊01,用于響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點;
[0048]在用戶端打開測試終端上的測試工具,選擇被測應(yīng)用程序后,觸發(fā)對應(yīng)的測試指令;場景設(shè)置模塊01響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的測試場景。
[0049]所述測試場景可以理解為一種用來模擬大量用戶操作的技術(shù)手段,通過配置和執(zhí)行場景向服務(wù)器產(chǎn)生負(fù)載,檢測系統(tǒng)的各項性能指標(biāo);以瀏覽器為例,用戶端雙擊瀏覽器的快捷圖標(biāo)至瀏覽器響應(yīng)用戶的操作并顯示瀏覽器對應(yīng)的主頁面,這一過程可以為一個測試場景;當(dāng)用戶端在瀏覽器顯示的主頁面上輸入關(guān)鍵詞并觸發(fā)瀏覽器的搜索指令后,瀏覽器響應(yīng)上述搜索指令,進行關(guān)鍵詞搜索并顯示搜索結(jié)果,這一過程也可以為一個測試場景。本領(lǐng)域的技術(shù)人員可以理解,所述測試場景可以根據(jù)具體的被測應(yīng)用程序進行選取,本實施例對所述測試場景的具體內(nèi)容和形式不作限定。
[0050]在所述被測應(yīng)用在測試終端上的至少兩個測試場景中執(zhí)行時,場景設(shè)置模塊01對應(yīng)設(shè)置各測試場景的時間節(jié)點;請參照圖2,按照圖2所述的時間節(jié)點,在每次執(zhí)行所述測試腳本文件時,指標(biāo)獲取模塊03均按照所述時間節(jié)點依次執(zhí)行各測試場景。
[0051]在所述被測應(yīng)用僅在測試終端上的一個測試場景中執(zhí)行時,場景設(shè)置模塊01可以不設(shè)置該測試場景的時間節(jié)點;當(dāng)然,場景設(shè)置模塊01也可以設(shè)置該測試場景的時間節(jié)點;此時場景設(shè)置模塊01可以僅設(shè)置兩個時間節(jié)點即可,如圖2所示的時間節(jié)點O和時間節(jié)點1,分別對應(yīng)被測應(yīng)用程序在測試終端上執(zhí)行的時間起點和時間終點。
[0052]腳本生成模塊02,用于按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件。
[0053]腳本生成模塊02按照所述時間節(jié)點,分別記錄被測應(yīng)用程序在測試終端上按照測試場景對被測應(yīng)用程序進行操作的過程;即腳本生成模塊02記錄被測應(yīng)用程序在測試終端上的每個測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有測試場景中執(zhí)行過程的測試腳本文件。該測試腳本文件包括設(shè)置的各時間節(jié)點。
[0054]進一步地,在整個測試場景中,場景設(shè)置模塊01也可以不設(shè)置時間節(jié)點;在場景設(shè)置模塊01不設(shè)置時間節(jié)點的情況下,測試終端默認(rèn)該被測應(yīng)用僅在一個測試場景中執(zhí)行。以測試瀏覽器啟動時的性能指標(biāo)為例,測試終端在用戶端點擊錄制按鈕、觸發(fā)測試指令時,場景設(shè)置模塊01響應(yīng)用戶端觸發(fā)的測試指令,腳本生成模塊02開始錄制用戶端對瀏覽器的操作過程,待瀏覽器啟動并加載完數(shù)據(jù)后;用戶端點擊停止錄制按鈕,則腳本生成模塊02響應(yīng)停止錄制指令;腳本生成模塊02默認(rèn)場景設(shè)置模塊01檢測的本次對被測應(yīng)用程序的性能測試為啟動時的這一個測試場景;在測試終端回放時,腳本生成模塊02所記錄的瀏覽器的性能指標(biāo)為用戶端開始錄制到結(jié)束錄制的性能數(shù)據(jù)。本實施例中,所述錄制指的是,測試終端記錄用戶端在該測試終端上的操作過程;所述回放指的是測試終端按照記錄的錄制內(nèi)容,自動執(zhí)行用戶端的操作。
[0055]指標(biāo)獲取模塊03,用于執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
[0056]指標(biāo)獲取模塊03執(zhí)行腳本生成模塊02生成的測試腳本文件,記錄在所述測試腳本文件的執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),并將得到的各性能指標(biāo)返回至用戶端,以供測試人員分析。
[0057]指標(biāo)獲取模塊03記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)包括:通過讀取測試終端中所述被測應(yīng)用程序的配置文件數(shù)據(jù),獲取并記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo);或者,指標(biāo)獲取模塊03直接調(diào)用測試終端中的數(shù)據(jù)讀取函數(shù)如安卓系統(tǒng)中的sdk,獲取執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo)并記錄。
[0058]在一優(yōu)選的實施例中,指標(biāo)獲取模塊03循環(huán)執(zhí)行腳本生成模塊01獲取的測試腳本文件,直至達到預(yù)設(shè)執(zhí)行次數(shù)M ;其中,M為大于或等于I的正整數(shù)。在循環(huán)執(zhí)行所述測試腳本文件時,指標(biāo)獲取模塊03記錄每次執(zhí)行過程中被測應(yīng)用程序的性能指標(biāo),則在循環(huán)執(zhí)行M次所述測試腳本文件后,指標(biāo)獲取模塊03將得到所述被測應(yīng)用程序各性能指標(biāo)所對應(yīng)的M個數(shù)值;指標(biāo)獲取模塊03分別計算各性能指標(biāo)所對應(yīng)的M個數(shù)值的平均值,將得到的各性能指標(biāo)對應(yīng)的平均值返回至用戶端。
[0059]指標(biāo)獲取模塊03記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)可以僅記錄所需要的性能指標(biāo),比如,僅記錄內(nèi)存值和CPU占用率;也可以記錄該被測應(yīng)用程序執(zhí)行過程中的所有性能指標(biāo),比如,不僅記錄所需要的內(nèi)存值和CPU占用率,還記錄所使用的流量、電量及響應(yīng)速度等。若被測應(yīng)用程序包含至少兩個進程,則指標(biāo)獲取模塊03記錄的每次執(zhí)行過程中該被測應(yīng)用程序的性能指標(biāo)為該被測應(yīng)用程序的所有進程對應(yīng)的性能指標(biāo)之和。標(biāo)獲取模塊03根據(jù)記錄的循環(huán)執(zhí)行時獲取的各性能指標(biāo)分別對應(yīng)的M個數(shù)值,分別計算各性能指標(biāo)所對應(yīng)的M個數(shù)值的平均值,將得到的各性能指標(biāo)對應(yīng)的平均值返回至用戶端。
[0060]以測試瀏覽器的性能指標(biāo)中瀏覽器占用的內(nèi)存值和CPU占用率為例,請再次參照圖2,腳本生成模塊01根據(jù)用戶端的操作(比如用戶端點擊η次時間節(jié)點設(shè)置按鈕)設(shè)置η個時間節(jié)點,則指標(biāo)獲取模塊03執(zhí)行一次測試腳本文件時,將執(zhí)行(η+1)個測試場景;指標(biāo)獲取模塊03把(η+1)個測試場景中,對于在第i個測試場景中第j次執(zhí)行測試腳本文件時,測試時瀏覽器所占用的內(nèi)存值和CPU占用率分別記錄到數(shù)組aji]和bji]中;其中j和i的取值為:j e [0,M);ie [O, η];根據(jù)指標(biāo)獲取模塊03記錄的數(shù)組a」[i]和卜心],數(shù)值計算模塊03
得到第i個測試場景所占用的內(nèi)存均值和CPU占用率均值分別為:
【權(quán)利要求】
1.一種應(yīng)用程序的性能測試方法,其特征在于,包括以下步驟: 響應(yīng)用戶端觸發(fā)的測試指令; 根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點; 按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件; 執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
2.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行所述測試腳本文件之前還包括: 清除所述被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存數(shù)據(jù)。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端包括: 按照預(yù)設(shè)執(zhí)行次數(shù)M,循環(huán)執(zhí)行所述測試腳本文件,記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),以得到所述被測應(yīng)用程序各性能指標(biāo)所對應(yīng)的M個數(shù)值;其中,M為大于或等于I的正整數(shù); 分別計算各性能指標(biāo)所對應(yīng)的M個數(shù)值的平均值,將得到的各性能指標(biāo)對應(yīng)的平均值返回至用戶端。
4.如權(quán)利要求1或2所述的方法,其特征在于,所述記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)包括: 在所述被測應(yīng)用程序包含至少兩個進程時,記錄的執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)為所述被測應(yīng)用程序的所有進程對應(yīng)的性能指標(biāo)之和。
5.如權(quán)利要求1或2所述的方法,其特征在于,所述記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)包括: 通過讀取測試終端中所述被測應(yīng)用程序的配置文件數(shù)據(jù),獲取并記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)。
6.一種應(yīng)用程序的性能測試終端,其特征在于,包括: 場景設(shè)置模塊,用于響應(yīng)用戶端觸發(fā)的測試指令,根據(jù)用戶端選取的被測應(yīng)用程序,檢測所述被測應(yīng)用程序在測試終端上的至少兩個測試場景中執(zhí)行時,對應(yīng)設(shè)置各測試場景的時間節(jié)點; 腳本生成模塊,用于按照所述時間節(jié)點,分別記錄所述被測應(yīng)用在測試終端上每個所述測試場景中的執(zhí)行過程,以生成所述被測應(yīng)用程序在所有所述測試場景中執(zhí)行過程的測試腳本文件; 指標(biāo)獲取模塊,用于執(zhí)行所述測試腳本文件,記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),將得到的各性能指標(biāo)返回至用戶端。
7.如權(quán)利要求6所述的測試終端,其特征在于,還包括: 緩存清除模塊,用于清除所述被測應(yīng)用程序在測試終端上的執(zhí)行過程中所產(chǎn)生的緩存數(shù)據(jù)。
8.如權(quán)利要求6或7所述的測試終端,其特征在于,所述指標(biāo)獲取模塊還用于: 按照預(yù)設(shè)執(zhí)行次數(shù)M,循環(huán)執(zhí)行所述測試腳本文件,記錄每次執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo),以得到所述被測應(yīng)用程序各性能指標(biāo)所對應(yīng)的M個數(shù)值;其中,M為大于或等于I的正整數(shù); 分別計算各性能指標(biāo)所對應(yīng)的M個數(shù)值的平均值,將得到的各性能指標(biāo)對應(yīng)的平均值返回至用戶端。
9.如權(quán)利要求6或7所述的測試終端,其特征在于,所述指標(biāo)獲取模塊還用于: 在所述被測應(yīng)用程序包含至少兩個進程時,記錄的執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)為所述被測應(yīng)用程序的所有進程對應(yīng)的性能指標(biāo)之和。
10.如權(quán)利要求6或7所述的測試終端,其特征在于,所述指標(biāo)獲取模塊還用于: 通過讀取測試終端中所述被測應(yīng)用程序的配置文件數(shù)據(jù),獲取并記錄執(zhí)行過程中所述被測應(yīng)用程序的性能指標(biāo)。
【文檔編號】G06F11/36GK104166619SQ201310187399
【公開日】2014年11月26日 申請日期:2013年5月20日 優(yōu)先權(quán)日:2013年5月20日
【發(fā)明者】羊耿陽, 黨春艷, 崔艷婷, 隋利劍, 王紅斌 申請人:騰訊科技(深圳)有限公司