1軟體測試的目的及意義
由于人們對于軟體品質的重視程度越來越高,就導緻了測試在軟體開發中的地位越來越重要。軟體工程的總目标是充分利用有限的人力和物力資源,高效率、高品質地完成軟體開發項目。不足的測試勢必使軟體帶着一些未揭露的隐藏錯誤投入運作,這将意味着更大的危險讓使用者承擔。軟體測試是程式的一種執行過程,目的是盡可能發現并改正被測試軟體中的錯誤,提高軟體的可靠性。它是軟體生命周期中一項非常重要且非常複雜的工作,對軟體可靠性保證具有極其重要的意義。
2測試的方法
1.白盒測試
白盒測試是對軟體産品的内部工作過程,通過測試證明每種内部操作是否符合設計規格要求,全面了解程式内部邏輯結構、對所有邏輯路徑進行測試。主要立足于對軟體的過程性細節做到細緻的檢查,對程式的所有邏輯路徑進行測試,通過在不同的點檢查程式的狀态,确定實際的狀态是否與預期的狀态一緻。
2.黑盒測試
黑盒測試也稱功能測試或資料驅動測試,它是在已知産品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程式看作一個不能打開的黑盆子,在完全不考慮程式内部結構和内部特性的情況下,測試者在程式接口進行測試,它隻檢查程式功能是否按照需求規格說明書的規定正常使用,程式是否能适當地接收輸入數鋸而産生正确的輸出資訊,并且保持外部資訊(如資料庫或檔案)的完整性。黑盒測試方法主要有等價類劃分、邊值分析、因—果圖、錯誤推測等,主要用于軟體确認測試。“黑盒”法着眼于程式外部結構、不考慮内部邏輯結構、針對軟體界面和軟體功能進行測試。“黑盒”法是窮舉輸入測試,隻有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程式中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。
3.回歸測試
在軟體生命周期中的任何一個階段,隻要軟體發生了改變,就可能給該軟體帶來問題。軟體的改變可能是源于發現了錯誤并做了修改,也有可能是因為在內建或維護階段加入了新的子產品。當軟體中所含錯誤被發現時,如果錯誤跟蹤與管理系統不夠完善,就可能會遺漏對這些錯誤的修改;而開發者對錯誤了解的不夠透徹,也可能導緻所做的修改隻修正了錯誤的外在表現,而沒有修複錯誤本身,進而造成修改失敗;修改還有可能産生副作用進而導緻軟體未被修改的部分産生新的問題,使本來工作正常的功能産生錯誤。同樣,在有新代碼加入軟體的時候,除了新加入的代碼中有可能含有錯誤外,新代碼還有可能對原有的代碼帶來影響。是以,每當軟體發生變化時,我們就必須重新測試現有的功能,以便确定修改是否達到了預期的目的,檢查修改是否損害了原有的正常功能。同時,還需要補充新的測試用例來測試新的或被修改了的功能。為了驗證修改的正确性及其影響就需要進行回歸測試。
3測試用例
測試的主要内容是按實際操作的資料向系統的各個功能子產品輸入資料,檢測輸出結果是否符合預期要求。
1.登入測試:在登入測試是在登入頁面開始在輸入使用者名和密碼登入時自動區分首頁和使用者,使首頁管理者在進入首頁後能使用背景功能。登入測試用例表6-1所示:
表5-1登入測試用例
用例名稱 | 登入測試 |
基本描述 | 管理者登入測試就是使用者輸入的使用者名和密碼進行管理者登入,系統判斷該使用者的輸入是否合法,對此功能進行測試。 |
測試方案 | 分别使用系統承認的首頁管理者使用者名及密碼、注冊的遊客的使用者名和密碼和未注冊的使用者名和密碼進行測試。 |
輸入資料 | 1使用者名111和密碼1234 2使用者名2和密碼123456 3使用者名aaa和密碼321 |
預期結果 | 第一組首頁管理者使用者名及密碼成功登入首頁,并能使用背景界面 第二組注冊遊客使用者名及密碼成功登入首頁,但不能使用櫃員操作 第三組未注冊的使用者名和密碼不能登入首頁,提示錯誤資訊 |
以下是登入的3種測試結果:
圖5-1 輸入正确的使用者名的密碼
圖5-2 輸入錯誤的使用者名、密碼
2.單詞查找子產品測試:使用者用學号登入,對前台背單詞軟體基本子產品進行測試。
測試内容:查詢單詞、加入生詞庫、檢視生詞庫。測試各個按鍵功能。
測試結果:能正常查詢、加入生詞、檢視生詞。各按鍵功能可以實作。
測試結果:操作成功,各功能都能實作。