[摘 要] 某企業(yè)討論了ERP系統(tǒng)測(cè)試方法和適合工具的選用,該系統(tǒng)是了為引進(jìn)世界成熟先進(jìn)的管理理念,全面提升企業(yè)的管理水平為目標(biāo)而開(kāi)發(fā)實(shí)施的,系統(tǒng)包括企業(yè)財(cái)務(wù)會(huì)計(jì)、生產(chǎn)管理、采購(gòu)、生產(chǎn)經(jīng)管、庫(kù)存、銷售與分銷等管理功能,全面實(shí)現(xiàn)系統(tǒng)經(jīng)營(yíng)管理的集成。本論文首先討論了采用的測(cè)試法,分析了如何使用工具來(lái)完成各種測(cè)試以及產(chǎn)生的效果,然后詳細(xì)描述了權(quán)限測(cè)試,最后討論存在的不足之處以及改進(jìn)的辦法。
[關(guān)鍵詞] ERP;SAP;信息管理;系統(tǒng)測(cè)試;工具選用
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 12. 027
[中圖分類號(hào)] F270.7;TP393 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 1673 - 0194(2012)12- 0047- 02
某企業(yè)是一家大型國(guó)有企業(yè),各項(xiàng)業(yè)務(wù)快速發(fā)展,但各部門的業(yè)務(wù)信息管理缺乏統(tǒng)一、集成的平臺(tái),不利于業(yè)務(wù)發(fā)展。為了引進(jìn)先進(jìn)的管理理念,全面提升企業(yè)的管理水平,進(jìn)一步提高競(jìng)爭(zhēng)能力,企業(yè)決定開(kāi)發(fā)ERP系統(tǒng)。
經(jīng)過(guò)較長(zhǎng)時(shí)間的調(diào)研和論證,企業(yè)決定引進(jìn)SAP公司的R/3系統(tǒng)。由于該企業(yè)不同于傳統(tǒng)的制造業(yè),有特定的管理經(jīng)營(yíng)方式,有自己獨(dú)特的業(yè)務(wù)、客戶、供應(yīng)商,有獨(dú)特的企業(yè)文化、政策規(guī)范和經(jīng)營(yíng)理念,還有一些重要的成功經(jīng)驗(yàn),在引進(jìn)R/3時(shí),我們考慮將企業(yè)的“個(gè)性”與ERP軟件的“共性”結(jié)合起來(lái),走二次開(kāi)發(fā)的道路。我們請(qǐng)專業(yè)顧問(wèn)公司協(xié)助完成實(shí)施,二次開(kāi)發(fā)基本上由本企業(yè)精銳團(tuán)隊(duì)來(lái)完成。
ERP實(shí)施項(xiàng)目是復(fù)雜的系統(tǒng)工程,我們采用3個(gè)階段逐步實(shí)施的方法。第一階段以財(cái)務(wù)管理為主,并與其他系統(tǒng)進(jìn)行整合,實(shí)現(xiàn)SAP系統(tǒng)與業(yè)務(wù)系統(tǒng)無(wú)縫集成。系統(tǒng)涵蓋企業(yè)的財(cái)務(wù)會(huì)計(jì)、生產(chǎn)管理、采購(gòu)、生產(chǎn)經(jīng)管、庫(kù)存、銷售與分銷等管理功能。筆者
參與了該系統(tǒng)開(kāi)發(fā)與實(shí)施、系統(tǒng)配置和測(cè)試等工作。
ERP系統(tǒng)相當(dāng)復(fù)雜,因此在系統(tǒng)正式上線前應(yīng)做好測(cè)試,選擇合適的測(cè)試工具,盡可能多地發(fā)現(xiàn)各種錯(cuò)誤和缺陷。在項(xiàng)目準(zhǔn)備階段,我們制訂了詳細(xì)的測(cè)試計(jì)劃,確定測(cè)試的進(jìn)度安排、使用的工具以及這些測(cè)試的目的。對(duì)標(biāo)準(zhǔn)系統(tǒng)和二次開(kāi)發(fā)部分的測(cè)試方案有所不同。
我們的測(cè)試包括單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。在測(cè)試前選好各種測(cè)試用例,用例清單中包括:交易代碼(在R/3系統(tǒng)中,每個(gè)功能分配一個(gè)交易代碼,用戶輸入后進(jìn)入界面)、步驟說(shuō)明、測(cè)試數(shù)據(jù)、期望結(jié)果、實(shí)際結(jié)果和測(cè)試狀態(tài)。
根據(jù)系統(tǒng)特點(diǎn),我們建立了生產(chǎn)系統(tǒng)和測(cè)試開(kāi)發(fā)系統(tǒng),所有設(shè)置、開(kāi)發(fā)的測(cè)試(系統(tǒng)測(cè)試)都在測(cè)試開(kāi)發(fā)系統(tǒng)進(jìn)行,確定沒(méi)問(wèn)題之后再通過(guò)傳輸系統(tǒng)傳入生產(chǎn)系統(tǒng)。兩個(gè)系統(tǒng)有相同的環(huán)境配置。
在單元測(cè)試開(kāi)發(fā)系統(tǒng)中,我們以最小單元——程序模塊,進(jìn)行正確性檢驗(yàn)的測(cè)試工作,目的在于發(fā)現(xiàn)每個(gè)程序模塊內(nèi)部可能存在的差錯(cuò),一般采用人工靜態(tài)檢查和動(dòng)態(tài)執(zhí)行跟蹤方法。測(cè)試時(shí)建立了3個(gè)“client“(是SAP系統(tǒng)中的最高等級(jí)),分別為“100”、“200”、“300”,測(cè)試流程是:在“100”中配置并測(cè)試業(yè)務(wù)場(chǎng)景和案例;在“200”配置中,生成傳輸請(qǐng)求傳到“300”;在“300”中測(cè)試業(yè)務(wù)場(chǎng)景和案例。
在集成測(cè)試系統(tǒng)中的壓力測(cè)試采用了SAP ABAP/4開(kāi)發(fā)工作臺(tái)提供的計(jì)算機(jī)輔助測(cè)試工具(CATT)。CATT具有良好的集成功能和報(bào)表功能,可以減少人工測(cè)試的次數(shù),由系統(tǒng)自動(dòng)完成測(cè)試,并使測(cè)試更加系統(tǒng)化(即事先定義測(cè)試過(guò)程中的輸入值以及預(yù)期的測(cè)試值),從而提高系統(tǒng)的質(zhì)量。所有測(cè)試都有日志,根據(jù)所使用的測(cè)試模塊和測(cè)試過(guò)程的不同,日志中記錄按層次結(jié)構(gòu)組織起來(lái),成為帶節(jié)點(diǎn)的結(jié)構(gòu)。日志可以從客戶端下載保存,便于以后查閱。
在集成測(cè)試中,我們根據(jù)實(shí)際需要,編制測(cè)試過(guò)程,測(cè)試過(guò)程包括任意數(shù)量的測(cè)試模塊。例如:為了測(cè)試一個(gè)發(fā)行過(guò)程,我們建立了一個(gè)測(cè)試過(guò)程,包括創(chuàng)建客戶、創(chuàng)建物料、報(bào)數(shù)、發(fā)貨和開(kāi)票過(guò)賬等測(cè)試模塊。定義好參數(shù)和變量。其中客戶和物料數(shù)據(jù)在系統(tǒng)外根據(jù)測(cè)試用例建立文本文件。測(cè)試時(shí)系統(tǒng)讀取文本文件中的每一組數(shù)據(jù)作為下一模塊的輸入數(shù)據(jù)。最后系統(tǒng)生成日志,詳細(xì)記錄結(jié)果。用此結(jié)果與預(yù)期的結(jié)果比較,查找問(wèn)題。
在壓力測(cè)試中,我們一次性導(dǎo)入30萬(wàn)條數(shù)據(jù),在數(shù)十臺(tái)客戶機(jī)上同時(shí)提交同一單據(jù),沒(méi)有出現(xiàn)死機(jī)現(xiàn)象,同時(shí)查詢2萬(wàn)條數(shù)據(jù),僅用40秒。上述測(cè)試結(jié)果表明,系統(tǒng)是耐壓、快捷、安全的。
72小時(shí)開(kāi)機(jī)導(dǎo)入數(shù)據(jù)狀態(tài)下,吞吐量平衡,說(shuō)明其性能是經(jīng)得起測(cè)試的。
在測(cè)試中比較有特點(diǎn)的是權(quán)限測(cè)試。ERP系統(tǒng)是一個(gè)高度集成的系統(tǒng),從生產(chǎn)、銷售到財(cái)務(wù),所有的處理和數(shù)據(jù)都集中管理,因此合理的授權(quán)管理是保障系統(tǒng)安全性的一個(gè)重要部分,保證用戶擁有需要的權(quán)限,避免用戶使用不應(yīng)該擁有的權(quán)限使用系統(tǒng)的功能或查看數(shù)據(jù)。系統(tǒng)采用授權(quán)參數(shù)文件生成器來(lái)進(jìn)行授權(quán)管理,授權(quán)參數(shù)文件將針對(duì)交易代碼及組織結(jié)構(gòu)兩個(gè)層次進(jìn)行識(shí)別。我們對(duì)生產(chǎn)系統(tǒng)中的所有用戶進(jìn)行授權(quán),上線前所有用戶參數(shù)文件將傳至生產(chǎn)系統(tǒng)。
我們制定了有效的權(quán)限測(cè)試策略,每個(gè)用戶賬號(hào)在授權(quán)的組織結(jié)構(gòu)中測(cè)試能否正常使用授權(quán)的交易代碼對(duì)應(yīng)的功能。對(duì)于重要的交易和數(shù)據(jù)著重進(jìn)行是否有錯(cuò)誤授權(quán)的測(cè)試,主要分為兩種:對(duì)同一交易,不同組織權(quán)限不同,所以特別測(cè)試跨組織結(jié)構(gòu)的權(quán)限,防止某組織的用戶訪問(wèn)其他組織的數(shù)據(jù);有些交易,如某些訂單的創(chuàng)建,操作人員可創(chuàng)建訂單,但必須由領(lǐng)導(dǎo)確認(rèn)釋放權(quán)限,特別測(cè)試確認(rèn)釋放的權(quán)限是否正確授權(quán)。對(duì)公司重要的統(tǒng)計(jì)數(shù)據(jù),只有企業(yè)領(lǐng)導(dǎo)才有查看分析的權(quán)限,各部門只能看到本部門的數(shù)據(jù),所以要特別測(cè)試這些部門的用戶是否誤分配了權(quán)限。
我們應(yīng)用CATT管理工具中的統(tǒng)計(jì)功能查看狀態(tài)分析報(bào)表,以及圖形化的測(cè)試歷史記錄。并將所有測(cè)試日志下載到文件中保存下來(lái),特別是有問(wèn)題的地方,詳細(xì)登記問(wèn)題出處、問(wèn)題原因和解決方法等。最后根據(jù)測(cè)試的各種資料完成測(cè)試報(bào)告,對(duì)測(cè)試進(jìn)行簡(jiǎn)要說(shuō)明,列出測(cè)試的結(jié)論,并作為軟配置保存。
系統(tǒng)測(cè)試包括功能測(cè)試、用戶界面測(cè)試、安裝反安裝測(cè)試、健壯性測(cè)試。功能測(cè)試是測(cè)試檢查軟件的功能是否正確,其依據(jù)是《軟件需求規(guī)格說(shuō)書(shū)》。方法是構(gòu)造一些合理輸入,檢查輸出是否與期望的相同。測(cè)試需構(gòu)造測(cè)試用例,填寫(xiě)功能測(cè)試報(bào)告。
用戶界面測(cè)試是評(píng)估圖形界面的正確性、易用性和視覺(jué)效果。界面元素有窗口、菜單、工具條、按鈕、輸入框、列表等,其組合數(shù)量可能非常多。但界面元系大多是成熟的、標(biāo)準(zhǔn)的構(gòu)件,它們本身一般不會(huì)出錯(cuò),可以把測(cè)試精力集中在使用上。
安裝反安裝測(cè)試是測(cè)試軟件在不同的操作系統(tǒng)、硬件配置情況下的安裝與反安裝的正確性。測(cè)試在高級(jí)配置、標(biāo)準(zhǔn)配置和最低配置3種環(huán)境下進(jìn)行。
健壯性測(cè)試:由于客戶數(shù)量、日平均使用次數(shù)較多,通過(guò)頻繁使用測(cè)試軟件的容錯(cuò)能力和恢復(fù)能力。
將集成好的軟件系統(tǒng),作為計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素結(jié)合在一起,在已實(shí)際運(yùn)行的環(huán)境中,對(duì)計(jì)算機(jī)進(jìn)行一系列集成測(cè)試和確認(rèn)測(cè)試。若沒(méi)有問(wèn)題,則投入正常使用。
通過(guò)各階段的測(cè)試,發(fā)現(xiàn)了系統(tǒng)存在的缺陷和局限性,對(duì)比較嚴(yán)重的缺陷及時(shí)作了修改,那些對(duì)系統(tǒng)影響不大的缺陷作了修改和處理。我們雖然不能保證軟件永遠(yuǎn)不會(huì)再出錯(cuò),但相對(duì)于一個(gè)理論上合理和在試驗(yàn)中有效的統(tǒng)計(jì)模型來(lái)說(shuō),如果按照概率的方法,定義環(huán)境中1 000個(gè)小CPU每小時(shí)內(nèi)差錯(cuò)不大于0.095的話,那我們就有95%的信心說(shuō),我們已經(jīng)做了足夠多的測(cè)試,系統(tǒng)正式上線后可以穩(wěn)定運(yùn)行。另外,對(duì)系統(tǒng)性能的局限性在測(cè)試報(bào)告中作了詳細(xì)說(shuō)明。例如,我們通過(guò)壓力測(cè)試,發(fā)現(xiàn)當(dāng)銷售訂單很多時(shí),一些報(bào)表的查詢性能會(huì)下降,而根據(jù)實(shí)際業(yè)務(wù)的情況,在3年后訂單數(shù)會(huì)接近測(cè)試時(shí)的數(shù)據(jù)。因此,我們建議系統(tǒng)使用到一定階段,應(yīng)該做歸檔處理,這為維護(hù)人員對(duì)系統(tǒng)的維護(hù)提供了很大的幫助。
當(dāng)然,系統(tǒng)還存在需要改進(jìn)的地方,比如我們?cè)诖_認(rèn)測(cè)試時(shí),用戶用日常工作中出現(xiàn)的一些特殊數(shù)據(jù)來(lái)測(cè)試,發(fā)現(xiàn)了功能上一個(gè)小問(wèn)題。雖然影響不大,但也說(shuō)明我們?cè)趩卧獪y(cè)試和集成測(cè)試中選擇的數(shù)據(jù)量還不夠,還應(yīng)該更接近實(shí)際值,選擇一些更接近實(shí)際工作的數(shù)據(jù)來(lái)測(cè)試。另外,我們只用到CATT的部分功能,如果更好地利用它,將會(huì)使測(cè)試更加實(shí)用、有效。因此,在以后的項(xiàng)目中要特別注意充分利用CATT工具來(lái)提高工作效率。