測試結論

  由于需求的不斷變更,交行年金的測試仍在不斷的進行終。但在上線前后的兩個月的測試過程中,我感覺受益匪淺,留給我印象為深刻的是他們對測試流程的設計以及測試案例的組織,上線后的測試,由于測試人員對系統(tǒng)已經非常熟悉并且按照銀行的工作流程進行測試,以致使我感覺自己是交行的一名工作人員。

  新汶考核管理系統(tǒng)

  單元測試

  新汶考核測試,從7月份,由新汶工作人員開始了單元測試(前期我也參與了大約10天左右的時間),由于他們對業(yè)務比較了解,而且也參與了前期的開發(fā)工作,所以在單元測試過程中,對需求的掌控還是不錯的,也為以后的集成測試減輕了一些對照需求來對功能進行驗證的工作量。

  集成測試前期準備

  集成測試,計劃于8月底開始。在集成測試開始的前一周內,我通過了解需求設計以及數(shù)據結構,大體掌握了新汶考核系統(tǒng)的整體結構以及流程。并且拿到了客戶的實際數(shù)據,我感覺只當我真正看到和了解了客戶實際數(shù)據以后,我才真正“入戲”,我的思維意識才真正的發(fā)生了變化,才真正的開始站在客戶的角度去嘗試了解這個系統(tǒng)。

  通過對需求設計和客戶數(shù)據的了解,我組織了一套測試流程和測試數(shù)據。因為考核系統(tǒng)的業(yè)務流程比較簡單,大體流程即是按照需求設計和功能菜單來設計的。而測試數(shù)據則絕大部分參照了用戶數(shù)據,對照著各個功能菜單分別組織出來,并且通過這些數(shù)據也可將查詢功能的結果大體計算出來,各功能之間的業(yè)務關聯(lián)關系(例如參照、引用、回寫等)也通過這些數(shù)據很明顯的體現(xiàn)出來,這些都為為測試過程中數(shù)據的正確性驗證提供了方便。但是由于9月底給客戶演示后做了需求變更的計劃,等變更的需求審核確定后,這些數(shù)據還要做比較大的改動。

  再有一點是,新汶考核系統(tǒng)具有很強煤炭行業(yè)性質,在系統(tǒng)中有不少煤炭行業(yè)名詞(例如巷道、工作面、斷面、落煤方式),這些名詞在我們測試標準版產品的過程中幾乎沒有出現(xiàn)過,對我來說是比較陌生的。雖然這些專業(yè)名詞對測試過程來說并不是很重要,但是如果想真正融入這個系統(tǒng),真正以客戶的角度來看待這些功能,了解這些名詞還是很有必要的。我主要通過三個方式來了解這些:

  第一,網上查閱

  第二,與開發(fā)人員和客戶之間的交流。

  第三,結合客戶實際數(shù)據來加深理解。譬如,工作面綜合單價維護,通過客戶數(shù)據可以很明確的看出,工作面的屬性有支護方式和落煤方式,而工作面為斷面的支護方式和落煤方式通常為綜采和機;而綜合單價一列,很明顯是由各經營項目單價之和得出,固定金額則是根據歷史數(shù)據得出的一個警戒值,與目前的各經營項目無關。

  測試前期的準備,或許時間很短,或許看似無關緊要,但是對于一個從來沒有涉及過的項目,或者需求變更過的項目,我感覺還是非常重要的。了解系統(tǒng)需求設計和數(shù)據結構,對后面的測試作用巨大,測試開始后省去了通常的需要的熟悉階段,結合需求,很快能投入正常業(yè)務測試。了解客戶實際數(shù)據和行業(yè)知識,可能對測試流程上不會產生的質的影響,但會對我們的測試思維產生巨大的影響,能讓我們從思維意識上真正開始了解客戶,測試過程中我們將不在是一個單純的檢驗功能點的測試工程師,我們同樣也是一個客戶使用者,會提高我們的投入程度和責任感,我們會更多的從業(yè)務方面查找系統(tǒng)的Bug,這樣,應該會對后提交的產品的質量產生質的影響。

  測試過程

  本次集成測試,在GS3.5標準版的基礎上進行的升級,共歷經一個月時間,分了五個Build,其中兩個Build測試以新建帳套為主,這是為了發(fā)現(xiàn)更多基礎的Bug;另三個Build測試以恢復帳套數(shù)據(GS3.5標準版的測試數(shù)據庫)為主,這主要是為了模擬客戶現(xiàn)場進行升級,因為新汶礦業(yè)集團使用了我們的GS系統(tǒng)已經有一段時間,在系統(tǒng)已產生很多數(shù)據的情況下,對升級過程的測試中一個是要確保升級程序沒有錯誤,另一個是要確保對升級前的數(shù)據沒有產生影響。

  測試過程中,由于在有了前期的比較充分的準備,所以在對嚴重影響流程的問題修改之后,很快便投入客戶實際業(yè)務測試中來,經過前兩個Build的測試,系統(tǒng)已經基本趨于穩(wěn)定,后面三個Build可以多在細節(jié)以及數(shù)據驗證上下些功夫。在集成測試過程中,還進行了破壞性的測試,模擬客戶現(xiàn)場的各種突發(fā)事件,以檢驗系統(tǒng)的健壯性。

  數(shù)據正確性的驗證,可以結合程序、測試用例和數(shù)據結構三個方面來進行,主要包括了兩個步驟,一是有關聯(lián)業(yè)務之間的數(shù)據關系是否正確;二是查詢結果的數(shù)據是否正確。譬如,產量單查詢,如果單據錄入時嚴格按照測試用例的話,那么查詢結果的數(shù)據驗證可以直接參照測試用例;如果和測試用例有差別,那么可以在數(shù)據庫里查詢CLD表,如查詢條件為已記帳單據,那么驗證時便可在查詢語句里加入條件CLD_DJZT=’1’(單據狀態(tài)=已記帳),這個過程要對照數(shù)據結構。

  測試結論

  由于新汶考核系統(tǒng)要在短時間給客戶完成演示,所以本次測試時間緊,任務急,但由于前期開發(fā)組內部和客戶一起作過單元測試,并在集成測試前做了充分的準備,所以集成測試進行的較為順利,在9月底給客戶演示的過程中取得了很好的效果。另,給客戶演示后,又有一些新增和修改的需求擺上了日程表,所以新汶考核系統(tǒng)還需要進行一段時間的開發(fā)和測試,對于變動比較大的功能還需要提前進入了解。

  總結

  經過了這些測試項目,我逐步體會到,軟件測試如要真正以客戶為關注焦點,可以從以下幾個方面入手:

  1、制定完善的測試周期。這是一個循序漸進的過程,而且必須有充足的時間和人員來做保證。

  2、測試環(huán)境盡量模擬客戶現(xiàn)場環(huán)境。不能單一的依照我們內部的測試環(huán)境,應該多了解一些客戶現(xiàn)場的環(huán)境情況。

  3、組織完備的測試用例。對于一個成熟的測試項目來說,提前準備一套完備的測試用例非常重要,可以完全避免執(zhí)行測試過程的混亂局面。

  4、深入了解客戶實際業(yè)務和實際數(shù)據。這也是測試前的準備工作,是一個轉換測試思維的過程,是一個融入客戶的過程。

  以上文字,均為個人經歷和個人見解,希望多多批評指正。