1 引言
為了讓企業(yè)的管理和運(yùn)營更加高效。使企業(yè)商業(yè)模式由以產(chǎn)品為中心升級(jí)到以客戶為中心,CRM的在各個(gè)企業(yè)的使用率越來越高。CRM(Customer Relationship Mallagement)即為客戶關(guān)系管理。是指用計(jì)算機(jī)技術(shù)完成客戶管理、銷售、市場(chǎng)營銷等一系列功能的系統(tǒng)。CRM系統(tǒng)具有數(shù)據(jù)大集中、數(shù)據(jù)實(shí)時(shí)性強(qiáng),交互性強(qiáng)、系統(tǒng)穩(wěn)定性高等特點(diǎn),隨著電子商務(wù)客戶量和數(shù)據(jù)量的加大,CRM系統(tǒng)的負(fù)荷越來越重,其性能的好壞將直接決定企業(yè)提供服務(wù)的質(zhì)量。所以相比于其他系統(tǒng)功能至上的測(cè)試?yán)砟畈煌珻RM系統(tǒng)最注重的則是軟件性能測(cè)試,而工業(yè)標(biāo)準(zhǔn)級(jí)負(fù)載測(cè)試工具LoadRunner則使CRM系統(tǒng)的性能測(cè)試變得輕松可靠。
2 軟件性能測(cè)試概述
性能測(cè)試是指利用自動(dòng)化測(cè)試軟件模擬多種正常、峰值、異常條件來對(duì)系統(tǒng)施壓,從而驗(yàn)證系統(tǒng)的各項(xiàng)性能指標(biāo)是否能夠達(dá)到用戶所要求的標(biāo)準(zhǔn),進(jìn)而找出系統(tǒng)瓶頸,優(yōu)化系統(tǒng)性能。性能測(cè)試包括負(fù)載測(cè)試和壓力測(cè)試兩個(gè)方面:
1)負(fù)載測(cè)試:確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測(cè)試當(dāng)負(fù)載逐漸增加時(shí)系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。
2)壓力測(cè)試:通過確定一個(gè)系統(tǒng)的瓶頸或者不能接收的性能點(diǎn),來獲得系統(tǒng)能提供的最大服務(wù)級(jí)別。
壓力測(cè)試與負(fù)載測(cè)試原理相同但目標(biāo)不同,負(fù)載測(cè)試是發(fā)現(xiàn)系統(tǒng)的性能瓶頸,而壓力測(cè)試則是找到系統(tǒng)所能承載的最大服務(wù)級(jí)別,壓力測(cè)試可以看作是極限條件下的負(fù)載測(cè)試。
3 利用LoadRunner對(duì)CRM系統(tǒng)進(jìn)行負(fù)載測(cè)試
3.1 CRM系統(tǒng)介紹
當(dāng)下,Web技術(shù)發(fā)展迅猛。CRM系統(tǒng)的也緊跟技術(shù)發(fā)展步伐步入了Web2.0時(shí)代。功能上,CRM一般由客戶協(xié)作管理、業(yè)務(wù)管理、分析管理和應(yīng)用集成管理四個(gè)分系統(tǒng)組成,結(jié)合各個(gè)分系統(tǒng)的功能及其特點(diǎn),一套優(yōu)秀的CRM系統(tǒng)應(yīng)當(dāng)具有綜合性、集成性、智能化、高技術(shù)和復(fù)合性等特點(diǎn)。
本文所要測(cè)試的國內(nèi)某大型電子信息制造企業(yè)所使用的CRM系統(tǒng)主要由客戶端、Web服務(wù)器、應(yīng)用服務(wù)器及數(shù)據(jù)庫服務(wù)器等組成。從架構(gòu)上看,本CRM系統(tǒng)采用的是B/S模式的三層結(jié)構(gòu),即表示層、業(yè)務(wù)邏輯層與數(shù)據(jù)層,其架構(gòu)與系統(tǒng)組件的對(duì)應(yīng)關(guān)系如圖1所示。
圖1 CRM系統(tǒng)體系結(jié)構(gòu)
3.2 制定CRM系統(tǒng)測(cè)試計(jì)劃
由于本CRM系統(tǒng)是企業(yè)運(yùn)用于全球客戶關(guān)系的管理。包括供應(yīng)商、合作伙伴和分銷商,并不涉及終端個(gè)人用戶,所以系統(tǒng)的用戶量不高,同時(shí)登錄系統(tǒng)的用戶不會(huì)像其他Web應(yīng)用那樣造成服務(wù)器癱瘓的狀況,但是CRM系統(tǒng)產(chǎn)生的數(shù)據(jù)量大。系統(tǒng)操作效率要求高,因此我們不必關(guān)心系統(tǒng)最大服務(wù)級(jí)別,而要重點(diǎn)監(jiān)控?cái)?shù)據(jù)庫服務(wù)器的運(yùn)行狀況。由于CRM系統(tǒng)性能測(cè)試場(chǎng)景多且復(fù)雜,所以我們只選取了其中一個(gè)數(shù)據(jù)庫查詢場(chǎng)景作介紹,測(cè)試計(jì)劃表如表1所示。
表1 測(cè)試計(jì)劃表
3.3 設(shè)計(jì)測(cè)試腳本
腳本主體采用自動(dòng)錄制方式,按照測(cè)試計(jì)劃表逐項(xiàng)操作,錄制完成后,我們必須對(duì)腳本進(jìn)行增強(qiáng)以適合測(cè)試場(chǎng)景:
1)參數(shù)關(guān)聯(lián):本例中需要關(guān)聯(lián)的量有三個(gè),兩個(gè)會(huì)話碼和一個(gè)安全碼,首先,我們要找到其左右邊界,然后確定該會(huì)話碼在服務(wù)器響應(yīng)中第一次出現(xiàn)的位置,將以下代碼嵌入其所在位置的前面。
2)插入事物:在此,我們需要測(cè)試登錄、搜索、打開、退出等一系列操作的響應(yīng)時(shí)間,所以我們需要把這四種操作分別做成事物,即在每個(gè)操作的代碼前后插入事物開始和事物結(jié)束函數(shù),以登錄為例插入事物方法如下。
Ir_start_transaction(“Sign In”);
Ir_end_transaction(“Sign In”,LR_AUTO);
3)插入集合點(diǎn):因?yàn)橐M用戶同時(shí)
3)插入集合點(diǎn):因?yàn)橐M用戶同時(shí)操作,為了達(dá)到并發(fā)操作,我們需要在上述四個(gè)事物前面添加集合點(diǎn),按照需求,我們把集合點(diǎn)函數(shù)放到四個(gè)事物開始之前,以登錄為例函數(shù)如下。
Ir_rendezvous(“Sign In”):
4)訂單號(hào)的保存:由于原網(wǎng)站沒有保存訂單號(hào)的鏈接。在錄制過程中無法完成此功能,所以我們必須手工編寫腳本來實(shí)現(xiàn)訂單號(hào)的保存。Action()函數(shù)開始處編寫頭文件:
3.4 設(shè)計(jì)運(yùn)行場(chǎng)景
根據(jù)測(cè)試要求,我們?cè)O(shè)計(jì)了兩種運(yùn)行場(chǎng)景:
1)并發(fā)用戶數(shù)20、40、60:采用運(yùn)行前加載所有用戶的方式,迭代一次。
2)并發(fā)用戶逐級(jí)遞增:采用初始用戶數(shù)20,每90s增加20的方式,運(yùn)行五分鐘。以上兩種方式的加載主機(jī)均為美國IP地址:10.37.143.143,思考時(shí)間設(shè)置為最高2s。
3.5 分析結(jié)果
以上幾個(gè)場(chǎng)景運(yùn)行完成后,將結(jié)果導(dǎo)入Analysis,并發(fā)條件下的事物響應(yīng)時(shí)間如表2所示。從表2我們可以看出各個(gè)事物響應(yīng)時(shí)間隨著并發(fā)用戶數(shù)的增加而增大,但是所有響應(yīng)時(shí)間數(shù)據(jù)隨著并發(fā)用戶數(shù)的增加變化平穩(wěn),而且60個(gè)用戶并發(fā)時(shí),所有響應(yīng)時(shí)間在用戶可接受范圍之內(nèi)。
表2 用戶并發(fā)測(cè)試結(jié)果表
虛擬用戶數(shù)成功數(shù)平均事物響應(yīng)時(shí)間(單位:s)(并發(fā)百分比) 登錄系統(tǒng)查詢訂單打開訂單退出系統(tǒng)點(diǎn)擊率是指客戶端每秒向服務(wù)器提交的HTTP請(qǐng)求數(shù),并不是我們平時(shí)所理解的頁面上某一內(nèi)容被點(diǎn)擊的次數(shù),鼠標(biāo)一次點(diǎn)擊可以產(chǎn)生很多個(gè)HTTP請(qǐng)求,如圖2。吞吐率和點(diǎn)擊率正好相反,指的是客戶端每秒從服務(wù)器獲得的數(shù)據(jù)量,如圖3。點(diǎn)擊率可以反映用戶產(chǎn)生的負(fù)載量。如果系統(tǒng)運(yùn)行正常,點(diǎn)擊率增大,相應(yīng)的吞吐率也會(huì)增大,所以通過對(duì)比點(diǎn)擊率與吞吐率,我們可以判斷出服務(wù)器的運(yùn)行狀況。
圖2 并發(fā)虛擬用戶數(shù)——點(diǎn)擊率對(duì)照?qǐng)D
圖3 并發(fā)虛擬用戶數(shù)——吞吐率對(duì)照?qǐng)D
圖2和圖3中,當(dāng)虛擬用戶隨著時(shí)間而逐級(jí)增加時(shí),我們看到點(diǎn)擊率和吞吐率都有一個(gè)上升的趨勢(shì),且上升的幅度在一個(gè)合理的范圍,說明系統(tǒng)在用戶數(shù)突然增加時(shí),仍能夠保持相對(duì)的穩(wěn)定。兩圖中吞吐率和點(diǎn)擊率都有四個(gè)峰值,通過時(shí)間軸判斷。此時(shí)系統(tǒng)正在執(zhí)行訂單查詢操作,說明數(shù)據(jù)庫服務(wù)器此刻接受了大量的請(qǐng)求,也發(fā)出了大量的響應(yīng)。因?yàn)镃RM系統(tǒng)數(shù)據(jù)量龐大,結(jié)合查詢事物響應(yīng)時(shí)間,我們可以斷定數(shù)據(jù)庫服務(wù)器工作狀態(tài)正常。
4 結(jié)語
性能測(cè)試是一個(gè)系統(tǒng)而復(fù)雜的工程。針對(duì)各個(gè)不同的系統(tǒng),測(cè)試方法和技術(shù)往往不同。本文介紹了性能測(cè)試的基本原理與關(guān)鍵技術(shù),并以國內(nèi)某大型電子信息制造企業(yè)CRM系統(tǒng)數(shù)據(jù)庫為例用LoadRunner進(jìn)行了測(cè)試,取得了較好的結(jié)果,為CRM軟件性能測(cè)試提供了一種新思路。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:基于LoadRunner軟件的CRM系統(tǒng)性能測(cè)試