一種基于云服務(wù)的軟件穩(wěn)定性測(cè)試遠(yuǎn)程監(jiān)控系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種基于云服務(wù)的軟件穩(wěn)定性測(cè)試遠(yuǎn)程監(jiān)控系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的高速發(fā)展,使用互聯(lián)網(wǎng)的用戶越來(lái)越多,為了保障用戶體驗(yàn),避免大量用戶訪問(wèn)時(shí)導(dǎo)致系統(tǒng)響應(yīng)時(shí)間緩慢甚至宕機(jī)的行為,就必須要進(jìn)行網(wǎng)站的性能測(cè)試并根據(jù)測(cè)試結(jié)果進(jìn)行優(yōu)化。性能測(cè)試是通過(guò)自動(dòng)化的測(cè)試工具模擬多種正常、峰值以及異常負(fù)載條件來(lái)對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試。負(fù)載測(cè)試和壓力測(cè)試都屬于性能測(cè)試,兩者可以結(jié)合進(jìn)行。通過(guò)負(fù)載測(cè)試,確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測(cè)試當(dāng)負(fù)載逐漸增加時(shí),系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。壓力測(cè)試是通過(guò)確定一個(gè)系統(tǒng)的瓶頸或者不能接受的性能點(diǎn),來(lái)獲得系統(tǒng)能提供的最大服務(wù)級(jí)別的測(cè)試。性能測(cè)試的主要工具是Loadrunner,Loadrunner是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具,通過(guò)以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來(lái)確認(rèn)和查找問(wèn)題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。企業(yè)使用LoadRunner能最大限度地縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。LoadRunner可適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試,能預(yù)測(cè)系統(tǒng)行為并評(píng)估系統(tǒng)性能。然而,Loadrunner工具是一種本地的⑶I程序,不能通過(guò)WEB直接訪問(wèn),性能測(cè)試中的穩(wěn)定性測(cè)試是一種需要長(zhǎng)時(shí)間執(zhí)行的測(cè)試類型,一般要測(cè)試長(zhǎng)達(dá)24小時(shí)或更長(zhǎng)時(shí)間,而且在這種長(zhǎng)時(shí)間的性能測(cè)試過(guò)程中,非常容易發(fā)生各種問(wèn)題,如果得不到及時(shí)的處理,整個(gè)測(cè)試結(jié)果都會(huì)作廢,為了充分利用夜間和周末的時(shí)間,并更好的進(jìn)行性能測(cè)試工作,需要一個(gè)基于WEB的性能測(cè)試執(zhí)行監(jiān)控工具。
[0003]HP公司Performance Center產(chǎn)品,提供了一種Web創(chuàng)建并執(zhí)行的方法,但是因?yàn)镻erformance Center價(jià)格較高,一般企業(yè)都未采購(gòu),而且該軟件較為龐大,功能復(fù)雜,主要的功能是實(shí)現(xiàn)各種資源的統(tǒng)一管理(測(cè)試腳本、用戶、測(cè)試主機(jī))。而且為了數(shù)據(jù)安全考慮,該P(yáng)erformance Center服務(wù)器一般是放在局域網(wǎng)中,與廣域網(wǎng)隔離,無(wú)法直接遠(yuǎn)程訪問(wèn)。
[0004]另外一種遠(yuǎn)程測(cè)試執(zhí)行的方法是使用VPN(虛擬專用網(wǎng)絡(luò))方式訪問(wèn)企業(yè)內(nèi)部網(wǎng)絡(luò),然后訪問(wèn)對(duì)應(yīng)的Loadrunner主機(jī),這樣可以實(shí)現(xiàn)遠(yuǎn)程測(cè)試執(zhí)行與實(shí)時(shí)監(jiān)控。為了數(shù)據(jù)安全,VPN賬號(hào)在企業(yè)內(nèi)部一般是有限人員才能使用,大量的普通測(cè)試人員無(wú)法獲得VPN訪問(wèn)權(quán)限,其次VPN訪問(wèn)企業(yè)內(nèi)部網(wǎng)絡(luò),需要通過(guò)實(shí)時(shí)圖像方式訪問(wèn)內(nèi)部的主機(jī),對(duì)于網(wǎng)絡(luò)帶寬要求較高,多人使用的時(shí)候會(huì)比較卡頓,最后使用VPN方式訪問(wèn),對(duì)于穩(wěn)定性測(cè)試仍然需要測(cè)試人員長(zhǎng)時(shí)間關(guān)注測(cè)試程序的執(zhí)行情況,無(wú)法自動(dòng)進(jìn)行告警提示。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種基于云服務(wù)的軟件穩(wěn)定性測(cè)試遠(yuǎn)程監(jiān)控系統(tǒng),用以解決使用Loadrunner軟件進(jìn)行長(zhǎng)時(shí)間穩(wěn)定性測(cè)試遠(yuǎn)程監(jiān)控困難的問(wèn)題。
[0006]具體地,本發(fā)明提供的基于云服務(wù)的軟件穩(wěn)定性測(cè)試遠(yuǎn)程監(jiān)控系統(tǒng),包括:
[0007]在每個(gè)1adrunner控制主機(jī)上部署一個(gè)1adrunner代理采集模塊,用于采集對(duì)應(yīng)1adrunner控制主機(jī)上的測(cè)試信息,并將采集的測(cè)試信息發(fā)送至局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù);
[0008]數(shù)據(jù)處理模塊,用于將所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)中存儲(chǔ)的測(cè)試信息進(jìn)行格式轉(zhuǎn)換及壓縮處理后發(fā)送至廣域網(wǎng)中的云服務(wù)器;
[0009]云服務(wù)器,用于將接收到的測(cè)試信息進(jìn)行解壓處理,并按信息類型插入到云服務(wù)器數(shù)據(jù)庫(kù)中;
[0010]云服務(wù)器Web展現(xiàn)模塊,用于提供人機(jī)交互界面,通過(guò)與所述云服務(wù)器數(shù)據(jù)庫(kù)通信,響應(yīng)用戶的查詢操作。
[0011]可選地,本發(fā)明所述系統(tǒng)中:
[0012]所述云服務(wù)器Web展現(xiàn)模塊,還用于將用戶通過(guò)人機(jī)交互界面輸入的對(duì)某1adrunner控制主機(jī)的控制命令寫(xiě)入到所述云服務(wù)器數(shù)據(jù)庫(kù)內(nèi)的命令表中;
[0013]所述云服務(wù)器,還用于將所述云服務(wù)器數(shù)據(jù)庫(kù)內(nèi)命令表中的控制命令發(fā)送至所述數(shù)據(jù)處理模塊;
[0014]所述數(shù)據(jù)處理模塊,還用于將接收到的控制命令寫(xiě)入到所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)內(nèi)的命令表中;
[0015]所述loadrunner代理采集模塊,還用于將所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)內(nèi)命令表中的對(duì)所屬1adrunner控制主機(jī)的控制命令,發(fā)送給所屬的1adrunner控制主機(jī)。
[0016]可選地,本發(fā)明所述系統(tǒng)還包括:集中采集器;
[0017]所述集中采集器,用于將所述各loadrunner代理采集模塊采集到的測(cè)試信息寫(xiě)入到所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù);以及讀所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)內(nèi)的命令表,將命令表中的控制命令發(fā)送到控制命令對(duì)應(yīng)的1adrunner控制主機(jī)上的1adrunner代理采集模塊。
[0018]可選地,本發(fā)明所述系統(tǒng)中,所述集中采集器采用HTTP服務(wù)接口,與所述局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)采用數(shù)據(jù)庫(kù)連接池的方式進(jìn)行信息交互。
[0019]可選地,本發(fā)明所述系統(tǒng)中,所述數(shù)據(jù)處理模塊與所述云服務(wù)器間采用HTTP服務(wù)接口進(jìn)行通信。
[0020]可選地,本發(fā)明所述系統(tǒng)中,所述測(cè)試信息的類型包括:測(cè)試執(zhí)行信息、測(cè)試監(jiān)控信息和測(cè)試告警信息。
[0021]可選地,本發(fā)明所述系統(tǒng)中,所述云服務(wù)器,還用于在將接收到的測(cè)試信息進(jìn)行解壓處理后,若測(cè)試信息中包含測(cè)試告警信息,則查測(cè)試聯(lián)系人信息,并通知所述測(cè)試聯(lián)系人。
[0022]可選地,本發(fā)明所述系統(tǒng)中,所述云服務(wù)器,具體用于檢測(cè)測(cè)試告警信息的優(yōu)先級(jí),若為高優(yōu)先級(jí),則通過(guò)即時(shí)通信的方式通知測(cè)試聯(lián)系人;否則,通過(guò)郵件方式通知測(cè)試聯(lián)系人。
[0023]本發(fā)明有益效果如下:
[0024]與現(xiàn)有技術(shù)相比,本發(fā)明所述的監(jiān)控方式,通過(guò)使用云服務(wù),搭建成本極低。使用該技術(shù)可以大大節(jié)約測(cè)試人工的工作時(shí)間,提高測(cè)試效率,降低人力成本。通過(guò)使用云服務(wù)器,保證了全國(guó)各地網(wǎng)絡(luò)接入都非??焖?、保證了服務(wù)器按照訪問(wèn)數(shù)量進(jìn)行計(jì)費(fèi)、保證了服務(wù)器99.99%可訪問(wèn)、保證了測(cè)試數(shù)據(jù)100%不丟失。本發(fā)明簡(jiǎn)單,快速有效,很好地解決了使用Loadrunner軟件進(jìn)行長(zhǎng)時(shí)間穩(wěn)定性測(cè)試監(jiān)控困難的難題。
【附圖說(shuō)明】
[0025]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0026]圖1為本發(fā)明提供的一種基于云服務(wù)的遠(yuǎn)程的軟件穩(wěn)定性測(cè)試執(zhí)行監(jiān)控告警系統(tǒng)的結(jié)構(gòu)框圖;
[0027]圖2為本發(fā)明中1adrunner代理采集模塊的界面截圖;
[0028]圖3為本發(fā)明中集中采集器的工作流程圖;
[0029]圖4為本發(fā)明中數(shù)據(jù)處理模塊的工作流程圖;
[0030]圖5為本發(fā)明中云服務(wù)器的工作流程圖;
[0031]圖6為本發(fā)明中云服務(wù)器WEB展現(xiàn)模塊的工作流程圖。
【具體實(shí)施方式】
[0032]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0033]本發(fā)明提供一種基于云服務(wù)的遠(yuǎn)程的軟件穩(wěn)定性測(cè)試執(zhí)行監(jiān)控告警系統(tǒng),其實(shí)施原理為:通過(guò)提煉測(cè)試過(guò)程中的核心信息:TPS、響應(yīng)時(shí)間、錯(cuò)誤數(shù)、成功數(shù)、系統(tǒng)性能監(jiān)控指標(biāo)等形成一個(gè)核心的測(cè)試數(shù)據(jù)集,然后通過(guò)數(shù)據(jù)轉(zhuǎn)發(fā)裝置轉(zhuǎn)發(fā)到廣域網(wǎng)的云服務(wù)器中,并通過(guò)云服務(wù)器實(shí)現(xiàn)測(cè)試告警信息的發(fā)送和測(cè)試數(shù)據(jù)的實(shí)時(shí)查看與分析。通過(guò)本發(fā)明將一個(gè)局域網(wǎng)使用的客戶端程序,能夠通過(guò)廣域網(wǎng)服務(wù)器進(jìn)行數(shù)據(jù)的查看與分析。
[0034]如圖1所示,本發(fā)明所述系統(tǒng)包括:部署在每個(gè)1adrunner控制主機(jī)上的1adrunner代理采集模塊110、數(shù)據(jù)處理模塊120、云服務(wù)器130、以及云服務(wù)器Web展現(xiàn)模塊140、局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150和云服務(wù)器數(shù)據(jù)庫(kù)160。
[0035]每個(gè)1adrunner代理采集模塊110,用于采集對(duì)應(yīng)1adrunner控制主機(jī)上的測(cè)試信息,并將采集的測(cè)試信息發(fā)送至局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150 ;
[0036]數(shù)據(jù)處理模塊120,用于將局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150中存儲(chǔ)的測(cè)試信息進(jìn)行格式轉(zhuǎn)換及壓縮處理后發(fā)送至廣域網(wǎng)中的云服務(wù)器130 ;
[0037]云服務(wù)器130,用于將接收到的測(cè)試信息進(jìn)行解壓處理,并按信息類型插入到云服務(wù)器數(shù)據(jù)庫(kù)160中;
[0038]云服務(wù)器Web展現(xiàn)模塊140,用于提供人機(jī)交互界面,通過(guò)與云服務(wù)器數(shù)據(jù)庫(kù)160通信,響應(yīng)用戶的查詢操作。
[0039]基于上述原理闡述,下面給出幾個(gè)具體及優(yōu)選實(shí)施方式,用以細(xì)化和優(yōu)化本發(fā)明實(shí)施例所述系統(tǒng)的功能,以使本發(fā)明方案的實(shí)施更方便,準(zhǔn)確。需要說(shuō)明的是,在不沖突的情況下,如下特征可以互相任意組合。
[0040]本發(fā)明實(shí)施例中,用戶還可以通過(guò)本發(fā)明所述系統(tǒng)向1adrunner控制主機(jī)發(fā)起控制操作?!揪唧w實(shí)施方式】如下:
[0041]云服務(wù)器Web展現(xiàn)模塊140,還用于將用戶通過(guò)人機(jī)交互界面輸入的對(duì)某1adrunner控制主機(jī)的控制命令寫(xiě)入到云服務(wù)器數(shù)據(jù)庫(kù)160內(nèi)的命令表中;
[0042]云服務(wù)器130,還用于讀云服務(wù)器數(shù)據(jù)庫(kù)160內(nèi)的命令表,將命令表中的控制命令發(fā)送至數(shù)據(jù)處理模塊120 ;本發(fā)明中,云服務(wù)器讀命令表并發(fā)送控制命令后,可以將命令表內(nèi)的命令清空,或者,云服務(wù)器記錄上一次發(fā)送控制命令的時(shí)間戳,將該時(shí)間戳以后的控制命令發(fā)送至數(shù)據(jù)處理模塊,以使云服務(wù)器發(fā)送的控制命令均為新產(chǎn)生的控制命令,而非在前已經(jīng)發(fā)送過(guò)的控制命令。
[0043]數(shù)據(jù)處理模塊120,還用于將接收到的控制命令寫(xiě)入到局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150內(nèi)的命令表中;
[0044]1adrunner代理采集模塊110,還用于將局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150內(nèi)命令表中的對(duì)所屬1adrunner控制主機(jī)的控制命令,發(fā)送給所屬的1adrunner控制主機(jī),以對(duì)該1adrunner控制主機(jī)進(jìn)行控制。
[0045]優(yōu)選地,本發(fā)明實(shí)施例所述系統(tǒng)還包括:集中采集器170,作為各1adrunner代理采集模塊110的統(tǒng)一接口與局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)150通信。具體地:
[0046]集中采集器170,用于將各loadrunner代理采集模塊110采集到的測(cè)試信息寫(xiě)入到局域網(wǎng)服務(wù)器數(shù)據(jù)庫(kù)1