本發(fā)明實施例涉及軟件測試技術(shù)領(lǐng)域,特別是涉及一種應(yīng)用程序的測試方法及裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)、計算機(jī)和通信技術(shù)的發(fā)展,諸如智能手機(jī)等智能終端的功能也越來越強(qiáng)大,用戶對手機(jī)應(yīng)用程序(Application,APP)的依賴程度也在不斷增加。
但是要使一款應(yīng)用程序讓大多數(shù)用戶喜歡并不容易。對于任一款手機(jī)應(yīng)用程序來說,其自身的產(chǎn)品質(zhì)量和后期的宣傳缺一不可。因此一款手機(jī)應(yīng)用程序產(chǎn)品不僅在營銷方面要做到位,在交互及用戶體驗方面也必須得到用戶的認(rèn)可。因此,在手機(jī)應(yīng)用程序誕生的各個階段對其進(jìn)行質(zhì)量的測試是十分必要的。測試的成功與否直接關(guān)系到手機(jī)應(yīng)用程序的可用性、可靠性和友好性。
目前,我國對于PC(personal computer,個人計算機(jī))端的軟件測試方法有很多研究,但是專門針對手機(jī)中的應(yīng)用程序等軟件測試的方法卻很少。主要原因是由于智能手機(jī)的發(fā)展落后于電腦??傮w來說,我國的手機(jī)測試技術(shù)還處于起步階段,近幾年經(jīng)歷了從無到有的過程。因此需要尋找一套專門針對手機(jī)應(yīng)用程序的測試方法和流程來幫助研發(fā)人員在測試工作中對手機(jī)應(yīng)用程序進(jìn)行測試和判斷。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明實施例提供了一種應(yīng)用程序的測試方法及裝置,以實現(xiàn)對智能終端應(yīng)用程序的服務(wù)器端性能進(jìn)行測試。
第一方面,本發(fā)明實施例提供了一種應(yīng)用程序的測試方法,包括:
建立與待測應(yīng)用程序所在的智能終端之間的通信連接;
獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)所述參數(shù)配置,將用戶操作所述待測應(yīng)用程序的過程錄制成腳本;
接收用戶對所述腳本的增強(qiáng)操作,并獲取用戶對所述腳本設(shè)置的場景;
運行所述場景,并顯示運行結(jié)果。
第二方面,本發(fā)明實施例提供了一種應(yīng)用程序的測試裝置,包括:
通信建立模塊,用于建立與待測應(yīng)用程序所在的智能終端之間的通信連接;
腳本錄制模塊,用于獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)所述參數(shù)配置,將用戶操作所述待測應(yīng)用程序的過程錄制成腳本;
場景設(shè)置模塊,用于接收用戶對所述腳本的增強(qiáng)操作,并獲取用戶對所述腳本設(shè)置的場景;
場景運行模塊,用于運行所述場景,并顯示運行結(jié)果。
本發(fā)明實施例提供的一種應(yīng)用程序的測試方案,在建立與待測應(yīng)用程序所在的智能終端之間的通信連接后,獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本。然后接收用戶對腳本的增強(qiáng)操作,并獲取用戶對腳本設(shè)置的場景,通過運行場景,并顯示場景運行的結(jié)果后,可根據(jù)該結(jié)果對智能終端應(yīng)用程序的性能進(jìn)行分析,進(jìn)而完成對智能終端應(yīng)用程序的服務(wù)器端性能的測試。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
圖1是本發(fā)明實施例一提供的一種應(yīng)用程序的測試方法的流程圖;
圖2a為本發(fā)明實施例一提供的直接通過應(yīng)用程序客戶端錄制的腳本在整個場景中正在運行的虛擬用戶數(shù)量示意圖;
圖2b為本發(fā)明實施例一提供的直接通過應(yīng)用程序客戶端錄制的腳本在整個場景中用戶每秒點擊次數(shù)示意圖;
圖3是本發(fā)明實施例二提供的一種應(yīng)用程序的測試方法的流程圖;
圖4是本發(fā)明實施例三提供的一種應(yīng)用程序的測試裝置的結(jié)構(gòu)框圖。
具體實施方式
下面結(jié)合附圖和實施例對本發(fā)明作進(jìn)一步的詳細(xì)說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部內(nèi)容。
另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部內(nèi)容。在更加詳細(xì)地討論示例性實施例之前應(yīng)當(dāng)提到的是,一些示例性實施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項操作(或步驟)描述成順序的處理,但是其中的許多操作可以被并行地、并發(fā)地或者同時實施。此外,各項操作的順序可以被重新安排。當(dāng)其操作完成時所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
實施例一
圖1是本發(fā)明實施例一提供的一種應(yīng)用程序的測試方法的流程圖。本實施例所述的方法可由應(yīng)用程序的測試裝置來執(zhí)行,其中該裝置可由軟件和/或硬件實現(xiàn),一般可配置在計算機(jī)中。如圖1所示,本實施例提供的一種應(yīng)用程序的測試方法具體包括如下步驟:
步驟110、建立與待測應(yīng)用程序所在的智能終端之間的通信連接。
示例性的,本實施例中的智能終端具體可為手機(jī)、平板電腦等支持安裝各種應(yīng)用程序的移動終端。其中,待測應(yīng)用程序可以為根據(jù)實際操作的需求需要進(jìn)行服務(wù)器端性能(如應(yīng)用程序的響應(yīng)速度或網(wǎng)頁的加載速度等)測試的應(yīng)用程序。例如,可以為安裝在智能手機(jī)上的淘寶客戶端或京東客戶端等。
示例性的,與待測應(yīng)用程序所在的智能終端之間的通信連接可優(yōu)選為無線通信連接。值得注意的是,為了避免與其他正常通信的沖突,一般設(shè)置一個不常用的端口作為智能終端與計算機(jī)之間的通信端口。其具體實施方式可優(yōu)選為:將計算機(jī)設(shè)置為智能終端與待測應(yīng)用程序的服務(wù)器之間的代理,通過360WiFi(Wireless-Fidelity,無線保真)將智能終端與計算機(jī)建立連接。同時需要用戶將智能終端的IP地址修改為所連計算機(jī)的IP地址,并且在計算機(jī)目中輸入智能終端的通信端口號,使得計算機(jī)與智能終端可以共用同一網(wǎng)絡(luò)。上述設(shè)置方式的好處在于可將計算機(jī)與智能終端保持在同一網(wǎng)段,以使計算機(jī)可通過智能終端設(shè)置的端口對智能終端的應(yīng)用程序進(jìn)行測試。
步驟120、獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本。
其中,參數(shù)配置可以為在錄制腳本前,用戶進(jìn)行的一些初始化設(shè)置。
示例性的,根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本,可以包括:根據(jù)參數(shù)配置,將用戶直接操作待測應(yīng)用程序的過程錄制成腳本;或根據(jù)參數(shù)配置,將用戶通過瀏覽器操作待測應(yīng)用程序?qū)?yīng)的網(wǎng)頁的過程錄制成腳本。
在一般情況下,將智能終端與計算機(jī)建立通信連接后,用戶可以在智能終端上直接對待測應(yīng)用程序進(jìn)行操作,計算機(jī)可以通過該通信連接捕獲用戶的操作。當(dāng)用戶對待測應(yīng)用程序進(jìn)行實時操作時,計算機(jī)將會捕獲用戶的操作,并形成腳本程序。其中,用戶對應(yīng)用程序的操作可以為登錄應(yīng)用程序,搜索相關(guān)內(nèi)容或者關(guān)閉應(yīng)用程序等等。示例性的,用戶在訪問手機(jī)端的淘寶客戶端時,在測試工具中形成的腳本程序如下:
在特定情況下,一些應(yīng)用程序不允許計算機(jī)直接對其進(jìn)行性能測試,即在智能終端與計算機(jī)建立通信連接后,計算機(jī)不能捕獲到用戶對應(yīng)用程序的任何操作。此時,若要測試該應(yīng)用程序服務(wù)器端的性能,用戶可以通過智能終端中的瀏覽器進(jìn)入該應(yīng)用程序?qū)?yīng)的網(wǎng)頁,然后通過網(wǎng)頁對該應(yīng)用程序執(zhí)行相應(yīng)操作后,在測試工具中可形成用戶操作所對應(yīng)的腳本程序。例如,若要測試手機(jī)中淘寶客戶端的性能,但是該淘寶客戶端不允許計算機(jī)直接對其進(jìn)行測試,因此,用戶可以通過百度或者360等瀏覽器搜索到淘寶網(wǎng)頁,登錄淘寶網(wǎng)頁后用戶可以進(jìn)行所需操作。具體的,在測試工具中將會形成如下腳本程序:
可選的,在錄制完腳本后且腳本在場景中正式運行之前,為了驗證腳本的基本功能是否正確,可以使用回放按鈕或者計算機(jī)鍵盤上的F5鍵回放所錄制的腳本。同時,在運行腳本回放的過程中可根據(jù)用戶實際需求單擊暫停、繼續(xù)或停止回放按鈕來切換回放狀態(tài)。
值得注意的是,在錄制的腳本中有時會包含一些動態(tài)的值,因此需要采用關(guān)聯(lián)的方式將動態(tài)值轉(zhuǎn)變?yōu)樽兞?,使得腳本成功完成回放。當(dāng)動態(tài)值被創(chuàng)建關(guān)聯(lián)后,腳本中會增加一些與關(guān)聯(lián)有關(guān)的函數(shù),關(guān)聯(lián)數(shù)據(jù)將會被保存到參數(shù)列表中并在后續(xù)的整個腳本運行期間發(fā)生作用,此時,原來的動態(tài)值所在的位置將會被關(guān)聯(lián)值取代。示例性的,對動態(tài)值進(jìn)行關(guān)聯(lián)一般采用以下兩種方式:
(1)手動關(guān)聯(lián):首先由用戶在腳本中搜索并選中要關(guān)聯(lián)的值,點擊鼠標(biāo)右鍵選擇創(chuàng)建關(guān)聯(lián)這一選項或者在腳本中用戶可手動插入要關(guān)聯(lián)的函數(shù)。
(2)在快照中關(guān)聯(lián):在輸出窗格中選擇要關(guān)聯(lián)的值,通過鼠標(biāo)右鍵選擇創(chuàng)建關(guān)聯(lián)選項,此時腳本中將自動添加關(guān)聯(lián)函數(shù)并保存動態(tài)數(shù)值。
步驟130、接收用戶對腳本的增強(qiáng)操作,并獲取用戶對腳本設(shè)置的場景。
其中,對腳本的增強(qiáng)操作表示對錄制完成的腳本進(jìn)行預(yù)處理,使得腳本程序可以涵蓋用戶對應(yīng)用程序操作的各種情況,進(jìn)而提高應(yīng)用程序測試的全面性。示例性的,接收用戶對腳本的增強(qiáng)操作可包括:獲取用戶對腳本進(jìn)行的參數(shù)化、插入事務(wù)和/或設(shè)置集合點等操作。
其中,參數(shù)化是在實際操作中,針對不同用戶在登錄應(yīng)用程序時賬號的不同或者不同用戶在成功登錄后所要查詢的事務(wù)不同的情況下,將所錄制的腳本中的值進(jìn)行參數(shù)化以便可以通過腳本模擬多個不同用戶的不同操作。其中,用戶所要查詢的事務(wù)可以為搜索所需要的信息或者收藏所需信息等等。例如,當(dāng)1000個不同用戶登錄淘寶客戶端后需要搜索各自想要的物品,在搜索到用戶想要的物品后可將其加入到購物車或者直接進(jìn)行購買操作。在上述過程中用戶的每個動作都可作為一個事務(wù)。通過對腳本程序參數(shù)化可以將上述1000種不同情況同時包含在內(nèi),進(jìn)而不需要1000個不同用戶在手機(jī)客戶端進(jìn)行實時操作來獲取腳本。示例性的,參數(shù)化的步驟可以是用戶先選中要參數(shù)化的值,通過右鍵單擊“參數(shù)替代”選項后創(chuàng)建新的參數(shù),然后在“創(chuàng)建參數(shù)”選項欄中輸入?yún)?shù)名稱和類型,最后在屬性對話框中設(shè)置參數(shù)的數(shù)據(jù)。
示例性的,插入事務(wù)的設(shè)置是為了判斷某些特定的事務(wù)性能。其中,插入事務(wù)的設(shè)置方式有兩種:(1)在腳本中定位要插入事務(wù)的位置,通過獲取用戶單擊“設(shè)計”選項、選擇“在腳本中插入”、選擇“開始事務(wù)”、在事務(wù)結(jié)束的位置單擊“設(shè)計”選項、選擇“在腳本中插入”,接著選擇結(jié)束事務(wù)等操作可完成事務(wù)的插入;(2)若在腳本錄制過程中需要插入事務(wù),則在錄制過程中通過獲取用戶單擊錄制工具欄中的“開始事務(wù)”,“輸入事務(wù)名稱”和“單擊結(jié)束事務(wù)”等操作即可。
示例性的,創(chuàng)建集合點的方式可通過采用以下方式:(1)若在錄制完腳本后插入集合點,則通過獲取用戶所選擇的工具欄中的“設(shè)計”組件、在“在腳本中插入”、選中“集合”,然后通過用戶輸入集合點的名稱(不區(qū)分大小寫)即可。插入集合點之后,將在錄制的腳本中插入lr_rendezvous()函數(shù);(2)若在錄制時插入集合點,則可通過獲取用戶在“錄制”工具欄上點擊“集合”按鈕,然后在對話框中輸入集合的名稱,點擊“OK”按鈕等操作后集合可被插入到腳本中。通過創(chuàng)建集合點,可以同步各個虛擬用戶(Vuser),使其在同一時刻執(zhí)行任務(wù)。當(dāng)某個虛擬用戶到達(dá)集合點時,它將繼續(xù)等待,直到參與該集合的全部虛擬用戶都到達(dá)集合點時才開始執(zhí)行任務(wù)。例如,若在當(dāng)前時刻有10位用戶需要登錄淘寶客戶端,當(dāng)一位用戶登錄前的準(zhǔn)備工作(賬號和密碼的輸入)完成后將會等待其他用戶完成準(zhǔn)備工作,若服務(wù)器檢測到10位用戶同時點擊登錄時,才會給10位用戶提供服務(wù)。上述方式的設(shè)置可以測試出一定數(shù)量的用戶在同一時刻完成同一事務(wù)的情況下,服務(wù)器所承受的壓力。
上述對腳本的各種增強(qiáng)操作可單個進(jìn)行設(shè)置也可多個進(jìn)行設(shè)置,具體情況可根據(jù)用戶的實際測試需求而定。
示例性的,在腳本錄制完成后,可直接將可利用的腳本添加到場景中,也可以在瀏覽器中選擇要添加的腳本并添加到場景,然后獲取用戶點擊“OK”按鈕的操作,即可在場景中增加一個需要運行的腳本。
步驟140、運行場景,并顯示運行結(jié)果。
在運行場景時,若獲取到用戶點擊開始場景操作,則開始執(zhí)行上述設(shè)置。同時,可以在場景運行時可以觀察到虛擬用戶按照已設(shè)置的模式逐步啟動并加入到運行中。若獲取到用戶點擊停止按鈕的操作時,虛擬用戶將按照設(shè)置的方式逐步停止運行。若獲取到用戶點擊重置按鈕的操作時,所有的執(zhí)行過程將會被清除,虛擬用戶將會返回到為初始狀態(tài)。若獲取到用戶點擊的暫停/繼續(xù)按鈕的操作時,可以暫停當(dāng)前場景或者繼續(xù)運行場景。需要注意的是,場景從暫停狀態(tài)恢復(fù)到繼續(xù)運行狀態(tài)時,所有的虛擬用戶將從暫停的位置繼續(xù)運行。用戶可通過點擊虛擬用戶查看場景的當(dāng)前狀態(tài)。
在場景運行過程中,可對場景運行的具體過程進(jìn)行實時監(jiān)控,進(jìn)而得到對應(yīng)參數(shù)的運行結(jié)果。圖2a為本發(fā)明實施例一提供的直接通過應(yīng)用程序客戶端錄制的腳本在整個場景中正在運行的虛擬用戶數(shù)量示意圖;從圖2a中可以得出整個場景中有10個正在運行的虛擬用戶。圖2b為本發(fā)明實施例一提供的直接通過應(yīng)用程序客戶端錄制的腳本在整個場景中用戶每秒點擊次數(shù)示意圖。在測試工具中通過圖像可以反映出場景的實施運行情況,并可根據(jù)場景的運行情況作出對應(yīng)的調(diào)整。監(jiān)控圖像還可以包括吞吐量和/或事務(wù)響應(yīng)時間等。
進(jìn)一步的,在測試完成后,用戶可查看運行結(jié)果。同時也可將直接訪問應(yīng)用程序客戶端和通過瀏覽器進(jìn)入應(yīng)用程序?qū)?yīng)的網(wǎng)頁的測試結(jié)果進(jìn)行比較進(jìn)而得出通過不同的測試路徑的測試結(jié)果。
示例性的,在測試完成后,也可顯示總體測試結(jié)果表。表1為五組不同測試對象在執(zhí)行同一事務(wù)時的總體結(jié)果對比表。如表1所示:手機(jī)端通過兩種不同的方式對一款應(yīng)用程序進(jìn)行測試時都可成功捕獲到數(shù)據(jù)并錄制成腳本,并且在設(shè)定的場景中成功運行。兩種測試方式雖然在吞吐量和每秒點擊次數(shù)上有一些差異和波動,但在最后反應(yīng)出的事務(wù)的平均響應(yīng)時間上差異不是很大。在事務(wù)響應(yīng)時間上,在其他因素保持一致的前提下,由于訪問方式的不同,受到的外界環(huán)境的影響不同,兩者在性能上有一些微小的差異:對于通過手機(jī)應(yīng)用程序客戶端直接捕獲數(shù)據(jù)后進(jìn)行測試的方式,事務(wù)的響應(yīng)時間可能高于也可能低于通過手機(jī)瀏覽器訪問應(yīng)用程序的方式,但是其差異基本上都在0.1s—0.2s的范圍內(nèi)。因此通過實驗數(shù)據(jù)可以得到:對于一款手機(jī)應(yīng)用程序,可以利用測試工具來錄制用戶的操作,然后對服務(wù)器進(jìn)行負(fù)載壓力測試,從而得到其各方面的性能指標(biāo)并對其進(jìn)行分析;其次對于一些不能直接通過測試工具錄制腳本的應(yīng)用程序,可以采用在手機(jī)端從瀏覽器訪問應(yīng)用的方式間接地測試其服務(wù)器的性能。
表1五組不同測試對象在執(zhí)行同一事務(wù)時的總體結(jié)果對比表
本發(fā)明實施例一提供的應(yīng)用程序的測試方法,在建立與待測應(yīng)用程序所在的智能終端之間的通信連接后,獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本。然后接收用戶對腳本的增強(qiáng)操作,并獲取用戶對腳本設(shè)置的場景,通過運行場景,并顯示場景運行的結(jié)果后,可根據(jù)該結(jié)果對智能終端應(yīng)用程序的性能進(jìn)行分析,進(jìn)而完成對智能終端應(yīng)用程序的服務(wù)器端性能的測試。
實施例二
圖3是本發(fā)明實施例二提供的一種應(yīng)用程序的測試方法的流程圖。本實施例對實施例一中的步驟“獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本”進(jìn)行了優(yōu)化。參考圖3,本實施例具體包括如下步驟:
步驟210、建立與待測應(yīng)用程序所在的智能終端之間的通信連接。
步驟220、獲取用戶配置的腳本錄制協(xié)議、錄制模式和與智能終端的通信端口號。
步驟230、在接收到用戶點擊錄制按鈕的操作時,對用戶操作待測應(yīng)用程序的過程進(jìn)行腳本錄制。
步驟240、在接收到錄制結(jié)束的操作時,結(jié)束腳本錄制,形成腳本。
通過用戶對錄制開始和結(jié)束的操作,可根據(jù)實際情況實時控制腳本程序的錄制。當(dāng)一些特殊情況發(fā)生時,也可通過接收用戶點擊“暫?!卑粹o暫停腳本程序的錄制。
步驟250、接收用戶對腳本的增強(qiáng)操作,并獲取用戶對腳本設(shè)置的場景。
示例性的,獲取用戶對腳本設(shè)置的場景可包括:獲取用戶對腳本設(shè)置的場景參數(shù),其中,場景參數(shù)可包括運行模式、加壓方式、和/或運行時間;然后可根據(jù)場景參數(shù),構(gòu)建場景。具體的,可采用以下兩種方式設(shè)置場景:(1)手動場景:通過選擇要運行的腳本、分配運行腳本的負(fù)載生成器(Load Generator)并分發(fā)給在腳本間運行的虛擬用戶(Vuser)來創(chuàng)建手動場景。手動場景有虛擬用戶組模式和百分比模式兩種模式。在虛擬用戶組模式下,會將場景選擇的每個腳本分配給虛擬用戶組。為創(chuàng)建的每個虛擬用戶組分配若干虛擬用戶。百分比模式下,首先需要定義場景中使用的虛擬用戶總數(shù),并為每個腳本分配負(fù)載生成器以及虛擬用戶總數(shù)的百分比。(2)面向目標(biāo)的場景:定義用戶希望通過測試可以實現(xiàn)的目標(biāo),計算機(jī)將根據(jù)所定義的目標(biāo)自動構(gòu)建場景。具體的,在面向目標(biāo)場景中可以定義虛擬用戶數(shù)、每秒點擊次數(shù)或每秒事務(wù)響應(yīng)數(shù)等。
具體的,用戶對腳本設(shè)置的場景參數(shù)可優(yōu)選為對測試工具中功能選項的設(shè)置,包括:在“設(shè)計”這一組件中可以設(shè)置初始化虛擬用戶、啟動虛擬用戶、持續(xù)時間和停止虛擬用戶等操作。具體的,下面分別對上述各項設(shè)置進(jìn)行解釋:
a.初始化虛擬用戶:在場景運行前可對虛擬用戶進(jìn)行初始化。例如,可以選擇同時初始化所有虛擬用戶或者在時間間隔內(nèi)初始化虛擬用戶或者在每個虛擬用戶運行之前將其初始化,也可以根據(jù)測試的實際需求對其進(jìn)行選擇。
b.啟動虛擬用戶:設(shè)置開始時啟動的虛擬用戶數(shù)以及在一定時間間隔內(nèi)需要啟動的虛擬用戶數(shù),通過上述設(shè)置后,計算機(jī)將按照設(shè)定的時間間隔和啟動的虛擬用戶數(shù)目逐漸將其啟動直到所有虛擬用戶都啟動后才停止。
c.持續(xù)時間:設(shè)置虛擬用戶執(zhí)行應(yīng)用程序所用的時間。
d.停止虛擬用戶:選擇停止虛擬用戶的方式,例如,可以同時停止所有虛擬用戶或者可以在一定時間間隔內(nèi)逐漸停止虛擬用戶。
步驟260、運行場景,并顯示運行結(jié)果。
本發(fā)明實施例二在上述實施例的基礎(chǔ)上,通過對腳本錄制的過程進(jìn)行細(xì)化,可根據(jù)實際情況實時控制腳本的錄制,同時通過對錄制的腳本進(jìn)行場景設(shè)置,可以模擬不同用戶在智能終端對應(yīng)用程序的不同操作,進(jìn)而可以較為全面地完成對應(yīng)用程序的服務(wù)器端性能的測試。
實施例三
圖4是本發(fā)明實施例三提供的一種應(yīng)用程序的測試裝置的結(jié)構(gòu)框圖,該裝置可由軟件和/或硬件實現(xiàn),一般集成計算機(jī)中。如圖4所示,該裝置包括:通信建立模塊301、腳本錄制模塊302、場景設(shè)置模塊303和場景運行模塊304。
其中,通信建立模塊301,用于建立與待測應(yīng)用程序所在的智能終端之間的通信連接;腳本錄制模塊302,用于獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)所述參數(shù)配置,將用戶操作所述待測應(yīng)用程序的過程錄制成腳本;場景設(shè)置模塊303,用于接收用戶對所述腳本的增強(qiáng)操作,并獲取用戶對所述腳本設(shè)置的場景;場景運行模塊304,用于運行所述場景,并顯示運行結(jié)果。
本發(fā)明實施例三提供的一種應(yīng)用程序的測試裝置,在建立與待測應(yīng)用程序所在的智能終端之間的通信連接后,獲取用戶對腳本錄制的參數(shù)配置,并根據(jù)參數(shù)配置,將用戶操作待測應(yīng)用程序的過程錄制成腳本。然后接收用戶對腳本的增強(qiáng)操作,并獲取用戶對腳本設(shè)置的場景,通過運行場景,并顯示場景運行的結(jié)果后,可根據(jù)該結(jié)果對智能終端應(yīng)用程序的性能進(jìn)行分析,進(jìn)而完成對智能終端應(yīng)用程序的服務(wù)器端性能的測試。
在上述實施例的基礎(chǔ)上,所述腳本錄制模塊具體用于:獲取用戶對腳本錄制的參數(shù)配置,根據(jù)所述參數(shù)配置,將用戶直接操作所述待測應(yīng)用程序的過程錄制成腳本;或根據(jù)所述參數(shù)配置,將用戶通過瀏覽器操作所述待測應(yīng)用程序?qū)?yīng)的網(wǎng)頁的過程錄制成腳本。
在上述實施例的基礎(chǔ)上,所述腳本錄制模塊具體用于:獲取用戶配置的腳本錄制協(xié)議、錄制模式和與所述智能終端的通信端口號;在接收到用戶點擊錄制按鈕的操作時,對用戶操作所述待測應(yīng)用程序的過程進(jìn)行腳本錄制;在接收到錄制結(jié)束的操作時,結(jié)束腳本錄制,形成所述腳本。
在上述實施例的基礎(chǔ)上,所述場景設(shè)置模塊包括:腳本增強(qiáng)單元,用于獲取用戶對所述腳本進(jìn)行的參數(shù)化、插入事務(wù)和/或設(shè)置集合點的操作。
在上述實施例的基礎(chǔ)上,所述場景設(shè)置模塊包括:場景參數(shù)獲取單元,用于獲取用戶對所述腳本設(shè)置的場景參數(shù),所述場景參數(shù)包括運行模式、加壓方式、和/或運行時間;場景構(gòu)建單元,用于根據(jù)所述場景參數(shù),構(gòu)建所述場景。
上述實施例中提供的一種應(yīng)用程序的測試裝置可執(zhí)行本發(fā)明任意實施例所提供的應(yīng)用程序的測試方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。未在上述實施例中詳盡描述的技術(shù)細(xì)節(jié),可參見本發(fā)明任意實施例所提供的應(yīng)用程序的測試方法。
注意,上述僅為本發(fā)明的較佳實施例及所運用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實施例,對本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實施例對本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。