首頁>>>技術(shù)>>>CRM  CRM產(chǎn)品

CRM的自動化測試研究

鄭瀾 2010/08/02

  軟件測試是軟件開發(fā)生命周期中的一個重要環(huán)節(jié),其目的在于發(fā)現(xiàn)軟件中的錯誤,確保軟件的質(zhì)量。隨著近幾年移動通信新業(yè)務(wù)的不斷推出及3G的正式商用,移動通信的業(yè)務(wù)關(guān)聯(lián)度越來越高,業(yè)務(wù)支撐系統(tǒng)內(nèi)部結(jié)構(gòu)也變得越來越復(fù)雜。在業(yè)務(wù)支撐系統(tǒng)的每次新業(yè)務(wù)上線測試中,新業(yè)務(wù)對老業(yè)務(wù)的影響程度越來越難以預(yù)估,這給測試工作帶來了許多不確定的因素。

  全覆蓋的回歸測試必不可少

  在實際的軟件上線中,常常會出現(xiàn)新業(yè)務(wù)上線后功能正常、但一些老業(yè)務(wù)功能卻變得不正常的情況。究其原因,在于新業(yè)務(wù)在開發(fā)過程中,修改了一些與老業(yè)務(wù)共用的模塊或內(nèi)部接口,由于對系統(tǒng)關(guān)聯(lián)度認知與把控不夠,造成了一些相關(guān)聯(lián)的老業(yè)務(wù)沒有測試或是測試不充分,最終導(dǎo)致了新業(yè)務(wù)上線后老業(yè)務(wù)功能異常的情況。我們通常將對老業(yè)務(wù)的測試稱為“回歸測試”,回歸測試的正確性對軟件質(zhì)量有著舉足輕重的作用。

  在可預(yù)見的未來幾年內(nèi),移動通信的業(yè)務(wù)種類將會越來越多,各業(yè)務(wù)間的關(guān)聯(lián)度會越來越高。為防止新老業(yè)務(wù)相互影響的情況發(fā)生,應(yīng)加強業(yè)務(wù)支撐系統(tǒng)內(nèi)部軟件結(jié)構(gòu)的梳理與規(guī)劃,在編寫測試用例時充分考慮到業(yè)務(wù)的關(guān)聯(lián)性,但這主要還是依賴于人為的判斷。俗話說:“智者千慮,必有一失!闭l也不能保證在每次的新業(yè)務(wù)測試中,都能準(zhǔn)確地判斷出與之相關(guān)聯(lián)的老業(yè)務(wù)做到回歸測試的百分之百覆蓋。在這種情況下,進行全系統(tǒng)的地毯式全覆蓋測試,就成為回歸測試的一個重要解決方案。

  業(yè)務(wù)支撐系統(tǒng)是一個非常龐大的計算機軟件系統(tǒng),功能繁多,進行全系統(tǒng)的地毯式全覆蓋測試,將會出現(xiàn)成千上萬甚至是幾十萬個測試用例,這并非靠手工測試所能完成,于是我們需要引入自動化測試的方法。自動化測試是指通過計算機軟件編程,由計算機來自動完成測試工作的一種測試方法,與手工測試一樣,包括數(shù)據(jù)準(zhǔn)備、測試執(zhí)行、結(jié)果校驗等環(huán)節(jié)。自動化測試系統(tǒng)本身就是一個計算機軟件系統(tǒng),在CRM(Client Relation Management,客戶關(guān)系管理)領(lǐng)域,目前較成熟的產(chǎn)品有QTP(Quick Test Professional)、WinRunner等等。

  如何建設(shè)自動化測試系統(tǒng)

  建設(shè)自動化測試系統(tǒng),首先必須建立起完備的測試用例庫。在CRM測試中,需要記錄每個業(yè)務(wù)測試的預(yù)置條件、測試步驟、結(jié)果驗證標(biāo)準(zhǔn)等信息,但這些信息還僅僅只能應(yīng)用于手工測試。在自動化測試中,測試用例庫中還必須詳細地記錄預(yù)置條件相關(guān)界面中各個界面元素的名稱、需要輸入的數(shù)值、測試執(zhí)行的按鈕或鏈接、結(jié)果驗證相關(guān)界面中各個界面元素的名稱及其對應(yīng)的數(shù)值。

  完成測試用例庫的編寫后,就可以進行自動化腳本的編寫開發(fā)工作。以QTP為例,采用的是VB Script,開發(fā)者需具備一定的VB編程基礎(chǔ)。自動化測試與手工測試一樣,包括數(shù)據(jù)錄入、測試執(zhí)行、結(jié)果驗證等部分,將原先通過手工逐步操作的內(nèi)容以腳本的形式記錄下來,包括文本框的數(shù)據(jù)輸入、下拉框的數(shù)據(jù)選擇、執(zhí)行按鈕的點擊等等。與軟件編程一樣,自動化腳本的編寫也是一項艱苦的軟件開發(fā)工作。自動化腳本編寫完成后,就可以由電腦來進行自動化測試了。

  自動化測試的執(zhí)行效率非常高,一個復(fù)雜的測試項目,從錄入數(shù)據(jù)、測試執(zhí)行到結(jié)果驗證一般只需幾秒鐘就可以完成,遠遠高于手工測試的速度。全系統(tǒng)的自動化回歸測試一般只需要幾個小時到十幾個小時就能完成,這就使得在每次新版本上線前,都能進行一次全系統(tǒng)的回歸測試,有效地確保了軟件的質(zhì)量。新上線業(yè)務(wù)對一些相關(guān)聯(lián)業(yè)務(wù)的影響有時難以準(zhǔn)確判斷,通過全系統(tǒng)的自動化測試,能夠在測試階段及時發(fā)現(xiàn),從而杜絕了在上線后出現(xiàn)故障。

  自動化測試系統(tǒng)的建設(shè)是一個工作量巨大的工程,不僅在測試用例庫的編寫上比手工測試更為復(fù)雜、嚴格,而且自動化腳本的編寫也是一項相當(dāng)耗時耗力的工作,絕不亞于被測試軟件的開發(fā)過程,因此自動化測試系統(tǒng)建設(shè)的成本是非常高的。

  適宜關(guān)鍵且不經(jīng)常變化部分

  自動化測試比較適用于在系統(tǒng)中處于比較關(guān)鍵的位置但又不經(jīng)常變化的部分,例如CRM中的用戶開銷戶、用戶套餐申請與取消、用戶停復(fù)機等模塊。對于會經(jīng)常變化的部分,則不宜采用自動化測試的方法,剛剛花費大量時間精力編寫的自動化腳本,可能在下一個的軟件版本測試中又發(fā)生了變化,新編寫的自動化腳本可能一次都還沒有使用又要重新進行修改,那將是時間與人力成本的巨大浪費。

  自動化測試是軟件回歸測試的一種重要的方法,但不能完全用于替代軟件測試工作。計算機軟件只能用于替代人的機械重復(fù)動作,而不具有對各種特殊情況的應(yīng)變能力。因此,在日常測試中,采用手工測試與自動化測試相結(jié)合的方法,可以互相取長補短,基本實現(xiàn)全覆蓋的測試,以確保軟件上線的質(zhì)量。

  除了CRM領(lǐng)域外,計費賬務(wù)領(lǐng)域也是業(yè)務(wù)支撐系統(tǒng)的一個重要組成部分。兩者不同的是,CRM主要面向營業(yè)網(wǎng)點,采用界面操作的方式運作,而計費賬務(wù)領(lǐng)域以后臺程序運作為主。目前在計費賬務(wù)領(lǐng)域還沒有成熟的自動化測試工具,但只要我們遵循自動化測試的方法與思路,就可以自行開發(fā)這方面的軟件,為業(yè)務(wù)支撐系統(tǒng)量身定做一款合適的自動化測試系統(tǒng),這將大大提高測試的效率與效果。

通信世界周刊

從這里開始編輯

相關(guān)閱讀:
零售業(yè)CRM應(yīng)用成企業(yè)營銷利器 2010-08-02
“在線CRM”加“移動CRM” 讓項目跟蹤得心應(yīng)手 2010-08-02
略博:房地產(chǎn)CRM需要理念創(chuàng)新! 2010-07-30
RightNow客戶體驗影響報告 2010-07-29
SaaS爭鋒 關(guān)鍵是樹立品牌 2010-07-28

熱點專題:  客戶關(guān)系管理-CRM