前言:軟件迅猛發(fā)展凸現(xiàn)軟件測試問題
隨著軟件業(yè)蓬勃發(fā)展,各種軟件需求紛繁而來,在潮起潮落的IT洪流中,軟件項目越來越凸現(xiàn)大型化、復雜化的發(fā)展趨勢。幾十人上百人的開發(fā)團隊、成千上萬的模塊與接口、跨地域、跨系統(tǒng)的使用用戶等情況早已屢見不鮮,所有這些,對項目質(zhì)量管理提出了更高要求,如何滿足各方需求,做出更好的軟件系統(tǒng)?測試管理逐漸成了大家目光的焦點。
軟件的質(zhì)量靠什么,靠管理、靠各個軟件過程的嚴密配合。但勿庸置疑,質(zhì)量的守護是靠測試。它就象一只看門狗,認真守護著軟件質(zhì)量這個“家”。
軟件測試的重要性
測試是什么?測試就是對項目開發(fā)過程的產(chǎn)品(編碼、文檔等)進行差錯審查,保證其質(zhì)量的一種過程。
軟件業(yè)的迅猛發(fā)展也就是近幾十年的過程,時間雖短,但許多誤解似乎已根深蒂固,對測試的偏見也是如此?!败浖闹攸c在于需求、在于分析、在于設(shè)計、在于開發(fā),而測試,容易,沒什么技術(shù)含量,找一些用戶,對照需求盡力去測就行了;有時間多測點,沒時間就少測點?!边@種看法在許多項目經(jīng)理、軟件負責人的心中固守著,難以改變。
這種觀念的結(jié)果有目共睹,是什么?很簡單,是大量軟件BUG、缺陷的“流失”,從測試人員手中悄然而過,流失到用戶手中,流失進項目維護階段。隨之而來的,便是用戶無休止的抱怨、維護人員無休止的“救火”、維護成本無休止的增加。這是軟件人員的夢魘!
惡夢總有醒來時,經(jīng)過無數(shù)教訓的重擊,在不堪回首而不得回首的經(jīng)歷中,軟件業(yè)的管理者發(fā)現(xiàn):是他們錯了,軟件測試是不可忽視的。
“所有這些問題,假如在項目中測試到的話,便不會有造成不可收拾的結(jié)果了?!报D―人們終于意識到測試簡單而純真的真諦。
軟件測試
軟件測試從直觀上來講是對測試對象進行檢查、驗證,似乎很簡單,但實際不然,它是由許多處理環(huán)節(jié)構(gòu)成的。根據(jù)測試目標、質(zhì)量控制的要求,它被劃分為以下各類環(huán)節(jié)(如下圖),并被設(shè)置了不同的準入、準出標準。
測試的主要過程及活動如上圖所示,內(nèi)容一目了然,在此就不一一詳述了,只希望通過對測試重點問題、關(guān)注熱點的介紹,幫助大家對測試管理有一個總體的把握。
測試方式中普遍存在的問題與點評
談到測試,我們無法回避的是當前軟件過程普遍存在的測試問題:
1、 手工過多,缺少測試工具,自動化測試方式缺失。
傳統(tǒng)的項目測試還是以手工為主,測試人員根據(jù)需求規(guī)格說明書的要求,與測試對象進行“人機對話”。隨著軟件業(yè)的不斷發(fā)展及軟件規(guī)模的擴大,這種測試的弊端日益明顯:
· 大量的手工使項目人力成本、溝通成本居高不下;
· 人工操作的低效率使項目耗時增加,帶來進度風險;
· 人員素質(zhì)及其他不確定因素會影響手工測試的結(jié)果,導致差錯率的增加。
· 在測試過程中,需要對測試案例庫進行統(tǒng)一配置管理,項目規(guī)模的激增使手工管理案例庫的難度日益加大,尤其是在需求變更、回歸測試頻繁發(fā)生的時候。
從古到今,當生產(chǎn)率阻礙了生產(chǎn)力的發(fā)展的時候,必然會引入更高級的生產(chǎn)工具及方式。項目測試也是這個道理,引入工具,引入自動化測試及管理,是項目測試的一大趨勢。
2、 缺乏文檔測試、檢查。
文檔是項目的重要產(chǎn)品之一,產(chǎn)品需求、功能分析、架構(gòu)設(shè)計、詳細設(shè)計、用戶手冊、維護手冊等等,對于項目的測試、上線、維護等過程起到至關(guān)重要的參考、指導作用,所以它們的質(zhì)量應該是項目重點關(guān)注點之一。令人遺憾的是,許多軟件項目對于文檔的重視只停留在口頭上,“編碼第一”的觀念似乎根深蒂固。
隨著需求不斷變更、補充,業(yè)務、技術(shù)人員忙于應付,無法騰出精力來進行文檔內(nèi)容的修改及完善,往往是將包含需求變更內(nèi)容的工作聯(lián)系單往需求文檔