通過WEB主平臺(tái)中提供的設(shè)備管理功能進(jìn)行修改信息、賦予權(quán)限等操作。而對(duì)于登錄消息,服務(wù)器需查詢數(shù)據(jù)庫(kù)中是否存在該設(shè)備記錄,并且設(shè)備已經(jīng)賦予權(quán)限,否則將向客戶端返回錯(cuò)誤信息,要求客戶端提供進(jìn)一步的消息。
[0066]3)發(fā)送處理結(jié)果。服務(wù)器端存在多個(gè)客戶端的Socket連接,故需先根據(jù)設(shè)備的IMEI號(hào)尋找與設(shè)備的會(huì)話連接,然后再將XML節(jié)發(fā)送出去。
[0067](三)腳本回放及負(fù)載生成模塊
[0068]腳本回放及負(fù)載生成模塊的主要功能是先根據(jù)回放配置信息配置回放的軟件環(huán)境情況,然后解析測(cè)試腳本,逐條的進(jìn)行執(zhí)行,以完成與錄制腳本操作時(shí)相同的操作,從而達(dá)到模擬真實(shí)用戶行為的效果。由于移動(dòng)應(yīng)用采用的通訊協(xié)議可能不太一樣,而且一個(gè)應(yīng)用里面有時(shí)也會(huì)用多種協(xié)議進(jìn)行通信用以完成不同的功能,但整體上來說,HTTP協(xié)議和Socket協(xié)議使用比較頻繁。故對(duì)于腳本回放模塊需先識(shí)別測(cè)試腳本所使用的協(xié)議類型,然后根據(jù)具體協(xié)議的通訊步驟進(jìn)行回放工作。一個(gè)虛擬用戶在回放模塊中對(duì)應(yīng)一個(gè)線程,以線程的形式進(jìn)行模擬,使得同一臺(tái)移動(dòng)設(shè)備可以同時(shí)模擬多個(gè)用戶進(jìn)行訪問請(qǐng)求,有效的節(jié)省了設(shè)備資源,提供資源的使用率?;胤拍K具體的實(shí)現(xiàn)原理如圖7所示。
[0069]在圖7中可以看出測(cè)試腳本可能有多個(gè)測(cè)試任務(wù)組合而成,每個(gè)測(cè)試任務(wù)的回放配置信息都可能不相同,比如加壓模式、持續(xù)時(shí)間等,故需要預(yù)處理測(cè)試腳本,拆分成多個(gè)測(cè)試任務(wù),然后通過負(fù)載生成器解析后產(chǎn)生不同的虛擬用戶組,用于回放對(duì)應(yīng)的測(cè)試任務(wù)腳本。
[0070]如圖8,其具體實(shí)現(xiàn)流程如下:
[0071]I)接收測(cè)試任務(wù)。由于測(cè)試任務(wù)通過XMPP推送下來的XML格式數(shù)據(jù),故需先解析信息節(jié)點(diǎn),獲取當(dāng)中的測(cè)試環(huán)境配置信息與測(cè)試腳本。
[0072]2)啟動(dòng)回放模塊。對(duì)于測(cè)試腳本進(jìn)行語(yǔ)法的檢查,保證腳本格式的正確性,避免在運(yùn)行過程中產(chǎn)生異常,從而導(dǎo)致測(cè)試任務(wù)的提前完成。如果發(fā)現(xiàn)語(yǔ)法錯(cuò)誤,需及時(shí)向設(shè)備管理服務(wù)器報(bào)告,提前結(jié)束測(cè)試任務(wù)的運(yùn)行,將錯(cuò)誤信息提示給用戶,便于修改與完善測(cè)試腳本。
[0073]3)系統(tǒng)環(huán)境配置。根據(jù)回放配置信息對(duì)于測(cè)試環(huán)境進(jìn)行預(yù)先的配置,比如網(wǎng)絡(luò)狀況,是 2G、3G、4G 還是 WIF1
[0074]4)選擇加壓類型進(jìn)行加壓測(cè)試。根據(jù)回放配置信息,啟動(dòng)不同的加壓方式,用于運(yùn)行測(cè)試腳本。
[0075]5)向目標(biāo)服務(wù)器發(fā)送請(qǐng)求。測(cè)試腳本實(shí)際執(zhí)行的過程,就是根據(jù)測(cè)試腳本序列的順序,依次向服務(wù)器發(fā)送請(qǐng)求。
[0076]6)接受目標(biāo)服務(wù)器的響應(yīng)信息。當(dāng)虛擬用戶在等待服務(wù)器響應(yīng)時(shí),該線程處于阻塞狀態(tài),等待響應(yīng)數(shù)據(jù)接收完畢后,才將繼續(xù)執(zhí)行下一條請(qǐng)求。
[0077]7)停止回放模塊。當(dāng)持續(xù)時(shí)間到時(shí),回放模塊將會(huì)向所有的虛擬用戶線程發(fā)送中斷信號(hào),中斷線程的繼續(xù)運(yùn)行,然后將收集的性能測(cè)試數(shù)據(jù)上傳到服務(wù)器,最后再結(jié)束回放模塊的運(yùn)行。
[0078](四)多終端性能測(cè)試報(bào)告展示模塊
[0079]性能測(cè)試報(bào)告是對(duì)場(chǎng)景測(cè)試的階段性總結(jié),提供給測(cè)試人員直觀的回放性能數(shù)據(jù)展示,使得測(cè)試人員通過本性能測(cè)試報(bào)告能夠很容易的找到服務(wù)器的性能瓶頸所在,然后有針對(duì)性的解決問題,提供服務(wù)器的整體性能,保證大并發(fā)量的訪問需求。為了保證測(cè)試報(bào)告的真實(shí)性與完整性,全面的獲取回放結(jié)果數(shù)據(jù)。本系統(tǒng)希望提供一種基于多終端的性能測(cè)試報(bào)告解決方案,用于解決多個(gè)移動(dòng)終端回放相同測(cè)試腳本后的性能數(shù)據(jù)的展現(xiàn)問題,并提供最后合成的結(jié)果展示。另外,為了滿足測(cè)試人員的需求,測(cè)試報(bào)告通過不同的形式展示,如報(bào)表、表格、折線圖等,并且可以導(dǎo)出到Excel等工具中進(jìn)行進(jìn)一步的分析與處理工作。具體的實(shí)現(xiàn)原理如圖9所示。
[0080]性能測(cè)試報(bào)表主要包含三類信息:總體信息、頁(yè)面詳細(xì)信息和性能指標(biāo)圖。
[0081]下面分別詳細(xì)的介紹這三類信息中所包含的內(nèi)容。
[0082]I)總體信息??傮w信息體現(xiàn)的是整個(gè)測(cè)試任務(wù)的概要信息,對(duì)于這類總數(shù)量提供時(shí)、分和秒的平均值,包含以下信息節(jié)點(diǎn):
[0083]HTTP請(qǐng)求總數(shù):測(cè)試過程中,總共所發(fā)送的HTTP請(qǐng)求數(shù)量;
[0084]HTTP響應(yīng)總數(shù):請(qǐng)求成功后,接收到的響應(yīng)總數(shù);
[0085]響應(yīng)主體大小:接收到的響應(yīng)主體信息的數(shù)量,用于衡量服務(wù)器發(fā)送的數(shù)據(jù)量;
[0086]請(qǐng)求失敗總數(shù):發(fā)起HTTP請(qǐng)求后,可能由于網(wǎng)絡(luò)原因、資源問題導(dǎo)致請(qǐng)求不能正常的被處理,從而導(dǎo)致失敗;
[0087]HTTP響應(yīng)碼信息:按照HTTP響應(yīng)碼的第一位數(shù)字進(jìn)行分組,分別為1#、2#、3**、4**和5**,對(duì)于HTTP響應(yīng)數(shù)量按照各響應(yīng)碼進(jìn)行分類展示。
[0088]2)頁(yè)面詳細(xì)信息。頁(yè)面詳細(xì)信息包含兩個(gè)部分請(qǐng)求響應(yīng)時(shí)間和請(qǐng)求響應(yīng)數(shù)據(jù)大小。為了方便的查看響應(yīng)時(shí)間最長(zhǎng)和響應(yīng)數(shù)據(jù)最大的鏈接,我們分別按照響應(yīng)時(shí)間和響應(yīng)數(shù)據(jù)大小進(jìn)行降序排列。
[0089]3)性能指標(biāo)圖。性能指標(biāo)圖主要是展示測(cè)試任務(wù)運(yùn)行過程中的關(guān)鍵性能信息的走勢(shì),通過每隔固定時(shí)間采樣一次的方式獲得該類信息。主要包括以下幾個(gè)性能指標(biāo)圖:
[0090]虛擬用戶圖:反映測(cè)試過程中虛擬用戶數(shù)量的變化趨勢(shì),方便確定某個(gè)時(shí)間點(diǎn)有多少個(gè)虛擬用戶正在執(zhí)行請(qǐng)求操作;
[0091]HTTP請(qǐng)求數(shù)圖:每秒虛擬用戶向目標(biāo)服務(wù)器發(fā)送的HTTP請(qǐng)求數(shù)量。請(qǐng)求數(shù)越大,表示對(duì)于服務(wù)器產(chǎn)生的壓力越大。通過HTTP請(qǐng)求數(shù)的走勢(shì),對(duì)比接收到的響應(yīng)數(shù)量,就可以衡量服務(wù)器的處理能力;
[0092]請(qǐng)求響應(yīng)數(shù)據(jù)圖:表示每秒從網(wǎng)絡(luò)上的接收到的數(shù)據(jù)量大小,是衡量網(wǎng)絡(luò)性能的重要指標(biāo);
[0093]請(qǐng)求失敗圖:反映每秒請(qǐng)求的失敗數(shù),數(shù)值越小越好。通過分析請(qǐng)求失敗數(shù)量的走勢(shì),可以得出服務(wù)器從哪個(gè)時(shí)間點(diǎn)開始變得不穩(wěn)定。
[0094]上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡(jiǎn)化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.基于Http協(xié)議的移動(dòng)應(yīng)用自動(dòng)化性能測(cè)試系統(tǒng),其特征在于:包括順序相連的性能測(cè)試主平臺(tái)、運(yùn)行于終端設(shè)備的移動(dòng)代理模塊,所述的性能測(cè)試主平臺(tái)包括依次相連的Web網(wǎng)站、任務(wù)調(diào)度模塊、設(shè)備管理服務(wù)器,設(shè)備管理服務(wù)器與移動(dòng)代理模塊相連,移動(dòng)代理模塊通過XMPP協(xié)議與設(shè)備管理服務(wù)器保持通信,用于分發(fā)測(cè)試任務(wù),取得性能測(cè)試數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的基于Http協(xié)議的移動(dòng)應(yīng)用自動(dòng)化性能測(cè)試系統(tǒng),其特征在于:所述的移動(dòng)代理模塊,包括腳本錄制模塊和腳本回放模塊。
3.基于Http協(xié)議的移動(dòng)應(yīng)用自動(dòng)化性能測(cè)試方法,其特征在于,包含以下順序的步驟: 51.在真實(shí)的移動(dòng)網(wǎng)絡(luò)環(huán)境下獲取用戶使用移動(dòng)應(yīng)用的行為,生成自動(dòng)化性能測(cè)試腳本; 52.基于該腳本模擬虛擬的并發(fā)用戶對(duì)移動(dòng)應(yīng)用開展性能測(cè)試,支持移動(dòng)Web應(yīng)用中主流的HTTP協(xié)議下應(yīng)用服務(wù)器,數(shù)據(jù)庫(kù)服務(wù)器性能測(cè)試,壓力加載測(cè)試,幫助發(fā)現(xiàn)移動(dòng)應(yīng)用系統(tǒng)性能瓶頸。
4.根據(jù)權(quán)利要求3所述的基于Http協(xié)議的移動(dòng)應(yīng)用自動(dòng)化性能測(cè)試方法,其特征在于,具體包含以下順序的步驟: 1)錄制腳本:在移動(dòng)設(shè)備中啟動(dòng)移動(dòng)代理模塊,配置腳本錄制設(shè)置;啟動(dòng)測(cè)試腳本錄制后,腳本錄制模塊就會(huì)捕獲被測(cè)移動(dòng)應(yīng)用所發(fā)出的請(qǐng)求,通過測(cè)試腳本生成模塊生成一定格式的測(cè)試腳本,生成的測(cè)試腳本在錄制完成后,自動(dòng)上傳到性能測(cè)試主平臺(tái),以供壓力測(cè)試使用; 2)壓力測(cè)試:在創(chuàng)建測(cè)試任務(wù)過程中,測(cè)試人員需要根據(jù)業(yè)務(wù)場(chǎng)景的需要對(duì)測(cè)試任務(wù)進(jìn)行相應(yīng)的配置,以形成多終端加壓測(cè)試的策略,然后通過設(shè)備管理服務(wù)器將測(cè)試腳本與測(cè)試配置分發(fā)到目標(biāo)移動(dòng)設(shè)備中,從而達(dá)到“一端錄制,多端回放”的測(cè)試自動(dòng)化效果; 3)查看測(cè)試報(bào)表:在移動(dòng)終端設(shè)備回放過程中,性能收集器將收集到的性能數(shù)據(jù)通過移動(dòng)設(shè)備發(fā)送回主測(cè)試平臺(tái),經(jīng)由測(cè)試報(bào)告生成模塊進(jìn)行合并計(jì)算處理,最終生成詳細(xì)的性能測(cè)試報(bào)告。
【專利摘要】本發(fā)明公開了基于Http協(xié)議的移動(dòng)應(yīng)用自動(dòng)化性能測(cè)試系統(tǒng)即方法,包括順序相連的性能測(cè)試主平臺(tái)、運(yùn)行于終端設(shè)備的移動(dòng)代理模塊,所述的性能測(cè)試主平臺(tái)包括依次相連的Web網(wǎng)站、任務(wù)調(diào)度模塊、設(shè)備管理服務(wù)器,設(shè)備管理服務(wù)器與移動(dòng)代理模塊相連,移動(dòng)代理模塊通過XMPP協(xié)議與設(shè)備管理服務(wù)器保持通信,用于分發(fā)測(cè)試任務(wù),取得性能測(cè)試數(shù)據(jù)。本發(fā)明的測(cè)試系統(tǒng)及方法,智能地開展應(yīng)用系統(tǒng)性能自動(dòng)化評(píng)估工作,幫助用戶快速發(fā)現(xiàn),定位應(yīng)用系統(tǒng)響應(yīng)瓶頸,對(duì)于保障服務(wù)器能夠穩(wěn)定地提供服務(wù)具有重要的實(shí)踐指導(dǎo)價(jià)值。
【IPC分類】H04L12-26
【公開號(hào)】CN104579822
【申請(qǐng)?zhí)枴緾N201410758295
【發(fā)明人】陸璐, 梁力圖
【申請(qǐng)人】華南理工大學(xué)
【公開日】2015年4月29日
【申請(qǐng)日】2014年12月10日