軟件產品檢測的意義:
軟件產品檢測能夠解放程序員和售后服務人員。軟件測試能夠減低軟件質量風險,使程序員能夠更專注于解決程序的算法和效率,與此同時通過嚴謹檢驗的完善產品也減輕了售后服務人員的任務量。
軟件測試的目的
簡單地說,就是替用戶受過,測試的最終目的是確保最終交給用戶的產品的功能符合用戶的需求,把盡可能多的問題在產品交給用戶之前發現并改正。具體地講,測試一般要達到下列目標:
1、 確保產品是健壯的和適應用戶環境的 健壯性即穩定性,是產品質量的基本要求,尤其對于一個用于事務關鍵或時間關鍵的工作環境中。另外就是不能假設用戶的環境(某些項目可能除外),如:報業用戶許多配置是比較低的,而且是和某些第三方產品同時使用的。
2、 確保產品滿足性能和效率的要求 使用起來系統運行效率低(性能低)、或用戶界面不友好、用戶操作不方便(效率低)的產品不能說是一個有競爭力的產品。用戶最關心的不是你的技術有多先進、功能有多強大,而是他能從這些技術、這些功能中得到多少好處。也就是說,用戶關心的是他能從中取出多少,而不是你已經放進去多少。
3、確保產品完成了它所承諾或公布的功能,并且所有用戶可以訪問到的功能都有明確的書面說明------在某種意義上與ISO9001是同一種思想。產品缺少明確的書面文檔,是廠商一種短期行為的表現,也是一種不負責任的表現。所謂短期行為,是指缺少明確的書面文檔既不利于產品最后的順利交付,容易與用戶發生矛盾,影響廠商的聲譽和將來與用戶的合作關系;同時也不利于產品的后期維護,也使廠商支出超額的用戶培訓和技術支持費用。從長期利益看,這是很不劃算的。領測認為接觸過的軟件產品,很少有向方正這樣大大的產品、薄薄的文檔。
軟件測試的目的是為了能增強軟件使用可靠性,發現軟件存在的不足和差異等等。要成為一名專業的軟件測試人才必須要掌握專業技能因此要不斷學習。
軟件產品檢測的價值
1.測試來澄清需求
假設有這樣一個簡單的需求:“用戶可以在一個訂單同時使用多個折扣”??紤]一下如果用戶要求三個50%的折扣,那么這個訂單到底怎么打折?是累加起來,打150%折,反給用戶錢?還是在50%的基礎上打50%折扣, 然后再打50%, 最終打12.5%折呢?所以,我們應該將這個需求表達的更清晰一些。反過來想:這些具體的有明確期望結果的測試不就是一個能夠幫助澄清需求的很好的例子嗎?
在思考問題的時候,我們還應該考慮兩方面:一個是正常路徑,另一個是異常路徑。通過正常路徑,在減少defect的同時,還可以挑選出需要automation的case,以便在每個迭代周期都能對基本功能進行快速驗證??紤]異常路徑不僅可以澄清當某些地方出錯時軟件應該怎么做,還可以提醒程序員編寫處理出錯情況的代碼。
在測試時不應該浮于表面一味地寫測試用例,應該挖掘更深層次的問題,并且給出合理建議。例如,“當軟件和數據庫連接斷開怎么辦?”,“應該每隔5分鐘嘗試一次連接,連續3次嘗試失敗后發郵件給數據庫管理團隊?!?br />
2.快速找到最重要的缺陷
測試過程中發現缺陷是非常正常的事情,但是往往時間和產生的價值不成正比,如何快速準確的定位到重要問題的所在是一個優秀測試人員需要具備的技能,文章列舉了一個“應用破壞員工”的例子講述了幾個基本方法:1)區域模型2)快速攻擊3)歷史缺陷。憑借這些方法一個資深測試人員一夫當關,卻有千軍萬馬之勢,讓重要缺陷無處遁逃。
3.提供有用的測試數據和信息用于整個項目決策
好的測試不僅要包括描述清晰,覆蓋率完整的測試用例,更需要的是測試完成以后經過良好分析的測試報告,而我們所做的所有工作都是為了產生一個有用有價值的測試報告,而這個測試報告對于整個項目的許多關鍵性決策也具有指導性作用。所有單單一個測試pass率或者是完成率是遠遠不夠的,漂亮的測試報告需要有這三點1)系統整體思想2)測試中發現的突出或異常事件3)統計分析數據。使得決策者在拿到報告的同時就可以有個清晰的認識,做出快速正確的判斷。
4.與相關人員溝通,協助開發人員修改缺陷
對缺陷報告描述的時候需要盡量清晰,完整,方便開發人員定位錯誤代碼并發現問題。
如果在整個軟件開發過程中,軟件測試可以做到上述的幾點,那么測試的價值就得到了充分的體現.
免責聲明:1、文章文字與圖片來源網絡,如有問題請及時聯系我們。2、涉及轉載的所有文章、圖片、音頻視頻文件等資料,版權歸版權所有人所有。3、本文章內容如無意中侵犯了媒體或個人的知識產權,請聯系我們立即刪除
審核編輯 黃昊宇
-
軟件測試
+關注
關注
2文章
228瀏覽量
18572
發布評論請先 登錄
相關推薦
評論