CRM系統(tǒng):Spring的軟件測(cè)試方法在超市CRM中的應(yīng)用
Spring的軟件測(cè)試方法在超市CRM中的應(yīng)用
徐金寶, 廖 雷, 鄧秀慧
(南京工程學(xué)院計(jì)算機(jī)工程學(xué)院,江蘇 南京, 211167)
摘 要:軟件測(cè)試是軟件工程生命周期中的重要環(huán)節(jié), Sp ring框架對(duì)軟件測(cè)試具有優(yōu)良的支撐. 將Sp ring的軟件測(cè)
試方法應(yīng)用到超市客戶(hù)關(guān)系管理系統(tǒng)中,對(duì)單元測(cè)試、集成測(cè)試兩個(gè)階段從模擬對(duì)象的應(yīng)用、業(yè)務(wù)層、控制器、持久
層的測(cè)試以及測(cè)試驅(qū)動(dòng)開(kāi)發(fā)管理等幾個(gè)方面進(jìn)行分析,總結(jié)了在應(yīng)用軟件系統(tǒng)中,進(jìn)行軟件測(cè)試的有效經(jīng)驗(yàn)和手
段同時(shí)將面向切面編程思想應(yīng)用到超市客戶(hù)關(guān)系管理系統(tǒng)中,解決了傳統(tǒng)方法難以解決的問(wèn)題,收到良好效果.
關(guān)鍵詞: Sp ring; 軟件測(cè)試; 客戶(hù)關(guān)系管理; 面向切面編程; 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)
中圖分類(lèi)號(hào): TP311. 5 文獻(xiàn)標(biāo)識(shí)碼:A
Applica tion of Spr ing Software TestingMethod
to Customer Rela tionshipManagement in Supermarkets
XU J in2bao, L IAO Lei, DENG Xiu2hui
( School of Computer Engineering, Nanjing Institute of Technology, Nanjing 211167, China)
Abstract: Sp ring frame is of great use to software testingwhich constitutes one of the critical phases of life cycle of software
engineering. Sp ring software testing method was app lied to supermarket customer relationship management system
( S2CRM) for the purpose of unit testing and integration testing, focusing on mock object app lication, business layer,
controller, persistence layer testing and test - driven developmentmanagement. This paper summarized the experience and
effective method of software testing in app lied software systems based on the testing results. Furthermore, the idea of
aspect2oriented p rogram was emp loyed to solve p roblemswith regard to customer relationship management in supermarkets
which were difficult to address through the use of traditionalmethod. It is p roved that the result is satisfactory.
Key words: Sp ring; software testing; customer relationship management; aspect2oriented p rogram; test2driven
development
收稿日期: 2008 - 12 - 28;修回日期: 2009 - 02 - 11
基金項(xiàng)目: 南京工程學(xué)院科研基金項(xiàng)目(KXJ08071, KXJ08117)
作者簡(jiǎn)介: 徐金寶(1970 - ) ,男,碩士,講師,研究方向?yàn)镴ava新技術(shù)與MIS研制、數(shù)據(jù)挖掘.
E2ma il: keeboo@163. com
當(dāng)前,輕量級(jí)的Java EE框架以其優(yōu)越的性能得到廣泛重視,中小規(guī)模甚至較大規(guī)模的管理信息系統(tǒng)
的開(kāi)發(fā),都傾向于采用Struts + Sp ring + Hibernate ( SSH)的整合. 隨著業(yè)務(wù)復(fù)雜性的增加,開(kāi)發(fā)出易于維護(hù)
和易于測(cè)試的系統(tǒng)具有重要意義[ 1 ] . 現(xiàn)在各種框架的設(shè)計(jì),都是努力基于“軟件總線”的思想,以及在更高
層次上實(shí)現(xiàn)“高內(nèi)聚、低耦合”的原則. 傳統(tǒng)重量級(jí)的以EJB為核心的Java EE框架過(guò)于依賴(lài)應(yīng)用服務(wù)器、
設(shè)計(jì)成本高、難以測(cè)試和維護(hù),而Sp ring采用普通的Java bean (稱(chēng)為POJO) ,靈活運(yùn)用控制反轉(zhuǎn)( Inversion
of Control, IoC) 、依賴(lài)注入(Dependency Injection, D I)以及面向切面編程(Aspect Oriented Programming,
AOP)的思想與機(jī)制,使得Sp ring成為一個(gè)優(yōu)秀的輕量級(jí)的Java EE框架, Sp ring可以對(duì)幾乎所有流行的其
他框架進(jìn)行整合,同時(shí)對(duì)軟件測(cè)試有著良好的支持,并極力提倡測(cè)試驅(qū)動(dòng)開(kāi)發(fā)( TDD) ,以提高軟件開(kāi)發(fā)的
效率[ 2 ] .
基于Java EE管理信息系統(tǒng)的測(cè)試工作量很大,原因一是業(yè)務(wù)本身的復(fù)雜性,二是各種框架之間的整
合以及版本兼容問(wèn)題. 本文將Sp ring框架下對(duì)業(yè)務(wù)層、控制器、持久層的測(cè)試方法以及對(duì)TDD的支持、注
釋技術(shù)的運(yùn)用等,靈活應(yīng)用到基于Struts + Sp ring + Hibernate的超市客戶(hù)關(guān)系管理系統(tǒng)的測(cè)試中,總結(jié)了
在較大規(guī)模管理信息系統(tǒng)中進(jìn)行軟件測(cè)試的方法和經(jīng)驗(yàn).
1 相關(guān)知識(shí)簡(jiǎn)介
111 超市客戶(hù)關(guān)系管理系統(tǒng)
CRM是通過(guò)對(duì)客戶(hù)資料的管理和分析,來(lái)提高客戶(hù)滿意度、發(fā)掘潛在客戶(hù)、保持老客戶(hù),實(shí)現(xiàn)以客戶(hù)
為中心的業(yè)務(wù)流程,從而提高企業(yè)競(jìng)爭(zhēng)力的一種手段. 超市客戶(hù)關(guān)系管理系統(tǒng)包括的功能有客戶(hù)管理、渠
道管理、銷(xiāo)售管理、費(fèi)用管理、服務(wù)管理和競(jìng)爭(zhēng)對(duì)手管理等,并且具有一些簡(jiǎn)單的商業(yè)智能,如運(yùn)用FP2Tree
關(guān)聯(lián)規(guī)則算法分析客戶(hù)購(gòu)買(mǎi)行為、運(yùn)用C 415分類(lèi)算法進(jìn)行客戶(hù)群體劃分等,并且可以用手機(jī)進(jìn)行客戶(hù)資
料的查詢(xún)與更新. 該系統(tǒng)基于Struts + Sp ring + Hibernate的整合框架進(jìn)行設(shè)計(jì),明確遵循MVC模式,系統(tǒng)
劃分成模型層、視圖層和控制器層[ 3 - 4 ] .
112 軟件測(cè)試及測(cè)試工具JUnit
軟件測(cè)試是軟件工程生命周期中的重要環(huán)節(jié),測(cè)試為了盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤,而不是去證明
軟件正確.
從工程角度出發(fā),軟件測(cè)試可以分為單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試和用戶(hù)測(cè)試,其中單元測(cè)試主要采
用白盒測(cè)試,集成測(cè)試、系統(tǒng)測(cè)試和用戶(hù)測(cè)試主要采用黑盒測(cè)試.
Sp ring框架下對(duì)測(cè)試驅(qū)動(dòng)開(kāi)發(fā)( TDD)有著良好的支持,先編寫(xiě)測(cè)試用例,再填寫(xiě)程序代碼,使得運(yùn)行
結(jié)果與測(cè)試用例相一致,于是編程與測(cè)試均完成,這樣可以提高軟件開(kāi)發(fā)效率,實(shí)現(xiàn)敏捷開(kāi)發(fā).
目前流行的軟件測(cè)試工具有JUnit和testNG,本文以JUnit作為軟件測(cè)試工具. JUnit常用的接口和類(lèi)
如下[ 5 ] :
test接口是testCase、testSuite的共同接口,使用組合器設(shè)計(jì)模式,用于運(yùn)行測(cè)試和獲得測(cè)試結(jié)果. 該接
口的countTestCases( )方法返回測(cè)試用例的數(shù)量; run (TestResult result) 方法執(zhí)行測(cè)試過(guò)程.
testCase抽象類(lèi)的setUp ( )和tearDown ( )方法實(shí)現(xiàn)測(cè)試用例的初始化和回收.
assert靜態(tài)類(lèi)用來(lái)比較測(cè)試結(jié)果值與期望結(jié)果值之間的匹配. 常用的方法有assertEquals ( )判斷兩個(gè)
對(duì)象值是否相等; assertSame ( )判斷兩個(gè)對(duì)象是否來(lái)自同一引用; assertTrue ( )判斷結(jié)果是否為真.
testSuite,如果需要測(cè)試一組有關(guān)聯(lián)的測(cè)試,可以通過(guò)testSuite組裝多個(gè)testCase.
113 超市客戶(hù)關(guān)系管理系統(tǒng)的測(cè)試問(wèn)題
對(duì)于超市CRM需要分層測(cè)試,每一層有自己的特點(diǎn),需要針對(duì)性的測(cè)試,當(dāng)各個(gè)層次測(cè)試完畢后,將
各層結(jié)合起來(lái)進(jìn)行聯(lián)合測(cè)試. 并且在超市CRM系統(tǒng)新的模塊開(kāi)發(fā)中,應(yīng)盡量采用TDD思想,以提高開(kāi)發(fā)
的效率. 基于Struts + Sp ring + Hibernate的輕量級(jí)的架構(gòu),無(wú)論是在開(kāi)發(fā)中還是在測(cè)試中,有一個(gè)版本問(wèn)
題,同一個(gè)框架的不同版本,有很大區(qū)別,甚至不兼容,這是必須予以特別重視的問(wèn)題. 本文開(kāi)發(fā)與測(cè)試環(huán)
境采用Struts 210、Sp ring 210、Hibernate 310、JUnit 410
強(qiáng)力推薦:
天柏客戶(hù)關(guān)系管理系統(tǒng)
天柏客戶(hù)關(guān)系管理系統(tǒng)(CRM)是一款集專(zhuān)業(yè)性、實(shí)用性、易用性為一體的純B/S架構(gòu)的CRM系統(tǒng),它基于以客戶(hù)為中心的協(xié)同管理思想和營(yíng)銷(xiāo)理念,圍繞客戶(hù)生命周期的整個(gè)過(guò)程,針對(duì)不同價(jià)值的客戶(hù)實(shí)施以客戶(hù)滿意為目標(biāo)的營(yíng)銷(xiāo)策略,通過(guò)企業(yè)級(jí)協(xié)同,有效的“發(fā)現(xiàn)、保持和留住客戶(hù)”,從而達(dá)到留住客戶(hù)、提高銷(xiāo)售,實(shí)現(xiàn)企業(yè)利潤(rùn)最大化的目的。通過(guò)對(duì)客戶(hù)進(jìn)行7P的深入分析,即客戶(hù)概況分析(Profiling)、客戶(hù)忠誠(chéng)度分析(Persistency)、客戶(hù)利潤(rùn)分析(Profitability)、客戶(hù)性能分析(Performance)、客戶(hù)未來(lái)分析(Prospecting)、客戶(hù)產(chǎn)品分析(Product)、客戶(hù)促銷(xiāo)分析(Promotion)以及改善與管理企業(yè)銷(xiāo)售、營(yíng)銷(xiāo)、客戶(hù)服務(wù)和支持等與客戶(hù)關(guān)系有關(guān)的業(yè)務(wù)流程并提高各個(gè)環(huán)節(jié)的自動(dòng)化程度,從而幫助企業(yè)達(dá)到縮短銷(xiāo)售周期、降低銷(xiāo)售成本、擴(kuò)大銷(xiāo)售量、增加收入與盈利、搶占更多市場(chǎng)份額、尋求新的市場(chǎng)機(jī)會(huì)和銷(xiāo)售渠道,最終從根本上提升企業(yè)的核心競(jìng)爭(zhēng)力,使得企業(yè)在當(dāng)前激烈的競(jìng)爭(zhēng)環(huán)境中立于不敗之地。
關(guān)鍵詞:CRM,CRM系統(tǒng),CRM軟件,客戶(hù)關(guān)系管理,客戶(hù)管理軟件,客戶(hù)管理系統(tǒng),客戶(hù)關(guān)系管理軟件,客戶(hù)關(guān)系管理系統(tǒng)