軟件失效分類與管理
術語
軟件錯誤:是指在軟件生存周期內(nèi)的不希望或不可接受的人為錯誤,其結果是導致軟件缺陷的產(chǎn)生。
軟件缺陷:是存在于軟件之中那些不希望或不可接受的偏差,其結果是軟件運行于某一特定條件時出現(xiàn)軟件故障,這時稱軟件缺陷被激活。
原因產(chǎn)品說明書(主)軟件設計說明書(次)
軟件故障:是指軟件運行過程中出現(xiàn)的一種不希望或不可接受的內(nèi)部狀態(tài)。此時若無適當措施加以處理,便產(chǎn)生了軟件失效。
軟件失效:是指軟件運行時產(chǎn)生的一種不希望或不接受的外部行為結果。
軟件缺陷原因
主要來自產(chǎn)品說明書的編寫和產(chǎn)品方案設計。
產(chǎn)品說明書【主要原因】:1、寫的不全面、不完整和不準確;2、經(jīng)常更改。3、整個開發(fā)組沒有很好的溝通和理解。
設計方案:1、即軟件設計說明書。2、產(chǎn)生缺陷的原因與產(chǎn)品說明書或者需求說明書是一致的
缺陷與錯誤嚴重性和優(yōu)先級
劃分的通用原則:
??????? 嚴重性表示軟件缺陷所造成的危害的惡劣程度
??????? 優(yōu)先級表示修復缺陷的重要程度與次序
嚴重性
??????? 嚴重系統(tǒng)崩潰、數(shù)據(jù)丟失、數(shù)據(jù)順壞
??????? 較嚴重?操作性錯誤、錯誤結果、遺漏功能
??????? 一般小問題、錯別字、UI布局、罕見故障
??????? 建議不影響使用的瑕疵或更好的實現(xiàn)
優(yōu)先級
??????? 最高優(yōu)先級立即修復,停止進一步測試
??????? 次高優(yōu)先級在產(chǎn)品發(fā)布之前必須修復
??????? 中等優(yōu)先級如果時間允許應該修復
??????? 最低等優(yōu)先級可能會修復,但是也可能發(fā)布
嚴重性和優(yōu)先級的劃分用1~4表示
軟件錯誤的狀態(tài)
新信息NEW? 測試中新報告的軟件BUG
打開OPEN??? 被確認并分配給相關開發(fā)人員處理
修正FIX????? 開發(fā)人員已完成修正,等待測試人員驗證
拒絕DECLINED??? 拒絕修改bug
延期DEFERRED?? 不在當前版本修復的錯誤,下一版本修復
關閉CLOSED??? bug已被修復
錯誤管理流程
測試人員提交新的錯誤入庫,錯誤狀態(tài)NEW
高級測試人員驗證錯誤:如果確認是錯誤,分配給相應的開發(fā)人員,設置狀態(tài)為OPEN。如果不是錯誤,則拒絕,設置為DECLINED
開發(fā)人員查詢狀態(tài)為OPEN的錯誤,并做如下處理:
1、如果不是錯誤,則關閉
2、如果是錯誤,則修復并狀態(tài)為FIXED
3、 如果不能解決的錯誤,要留下文字說明并保持錯誤為OPEN
4、 對于不能解決和延期解決的錯誤,不能由開發(fā)人員自己解決,一般要通過某種會議(評審會)通過才能認可
測試人員查詢狀態(tài)為FIXED的錯誤,驗證錯誤是否已經(jīng)解決,做如下處理:
1、如果問題解決了,置狀態(tài)為CLOSE
2、 如果問題沒有解決,則置狀態(tài)為REOPEN
錯誤流程管理原則
1、 每次對錯誤的處理都要保留處理信息,包括處理姓名、時間、方法、意見、BUG狀態(tài)
2、為了保證錯誤處理的正確性,需要由豐富測試經(jīng)驗的測試人員驗證發(fā)現(xiàn)的錯誤是否是真正的錯誤,書寫的測試步驟是否準確,可以重復
3、 拒絕或延期處理錯誤不能由程序元單方面決定,應該由項目經(jīng)理、測試經(jīng)理和設計經(jīng)理共同決定
4、誤修復后必須由報告錯誤的測試人員驗證,確認已經(jīng)修復后,才能關閉錯誤。
自動化測試
自動化測試的優(yōu)勢
1、提高測試質(zhì)量
2、提高測試效率
3、 提高測試覆蓋率
4、? 執(zhí)行手工測試不能完成的測試任務
5、 更好的重現(xiàn)軟件缺陷能力
6、更好地利用資源
7、增進測試人員與開發(fā)人員之間的合作伙伴關系
應用場景:
1、 需要反復進性的工作
2、負載壓力測試
3、公司有大量的測試人員和開發(fā)人員,合作完成一個產(chǎn)品,對產(chǎn)品的生命周期進性有效管理和合作
4、 如果需要進性測試系統(tǒng)后臺或者內(nèi)部的性能特性,進而進性故障定位和性能調(diào)優(yōu)。
==============================================================================
自動化測試續(xù)
局限性:
1、? 定制性項目
2、周期很短的項目
3、 業(yè)務規(guī)則復雜的對象
4、人體感官與易用性測試
5、 不穩(wěn)定軟件
6、? 涉及物理交互
測試相關工具
負載壓力測試工具:
??????? 為了度量應用系統(tǒng)的可擴展性和性能,是一種預測系統(tǒng)行為和性能的自動化測試工具。
LOADRUNNER、QALOAD、SILK、PERFORMAV、E-TESTSUITEQ
網(wǎng)路測試工具:包括網(wǎng)絡故障定位工具、網(wǎng)絡性能檢測工具、網(wǎng)絡仿真模擬工具等。
測試管理工具:用于對測試進性管理。TESTDIRECTOR、TESTMANGER、TRACKRECORD
測試輔助工具:工具不執(zhí)行測試,為測試提供數(shù)據(jù)準備等。
功能測試工具:是用于檢測應用程序是否能夠達到預期的功能并正常運行,可以大大減少黑盒測試的工作量,在迭代開發(fā)的過程中,能夠很好地進性回歸測試
WINRUNNER QARUN
白盒測試工具:靜態(tài)測試工具直接對代碼進性分析,不需要運行代碼,一般是對代碼進性語法掃描,找出不符合編碼規(guī)范的地方,根據(jù)某種質(zhì)量模型評價代碼的質(zhì)量,生產(chǎn)系統(tǒng)調(diào)用關系圖。
LOGISCOPE、PRQA
??????? 動態(tài)測試工具一般采用“插樁”的方式,向代碼生成的可執(zhí)行文件中插入一些檢測代碼,用來統(tǒng)計程序運行時的數(shù)據(jù)。
DEVPARTNET、Rational Purify
