2022-02-06 09:13:47|已瀏覽:3629次

在“軟件測試用例設計需要參考哪些輸入?”文章中,作者提出了測試用例設計需要參考的幾個主要來源:開發(fā)文檔、用戶需求、標準與規(guī)范、類似產(chǎn)品需求、測試經(jīng)驗知識庫和其他隱性需求等。針對測試對象的測試條件的識別,將以這些參考文檔作為輸入。
在測試實踐過程中,不同測試人員會負責測試對象的不同功能和特性。因此,將某個功能或者特性相關(guān)的參考輸入文檔分配給同一個測試人員,有助于提高測試條件識別的效率和有效性的。下面針對不同的參考輸入來源,在識別測試條件上面有哪些特點或者原則?
1)開發(fā)文檔
這里的開發(fā)文檔是一個統(tǒng)稱,包含了開發(fā)過程中的各種軟件工作產(chǎn)品,例如:系統(tǒng)需求規(guī)格說明、概要設計規(guī)格說明等。對于系統(tǒng)測試而言,系統(tǒng)需求規(guī)格說明是其最主要的參考輸入之一;對于其他測試級別,其主要參考輸入來源是相對應的開發(fā)文檔。
假如系統(tǒng)需求規(guī)格說明比較完善正規(guī),那么從該文檔中提取測試條件相對比較容易,其基本原則是每條需求條目至少有一個測試用例覆蓋。根據(jù)需求條目的顆粒度不同,多個需求條目可以在一個測試用例中進行驗證;而有的需求條目可以合并成一個,并在同一個測試用例中驗證。在測試條件提取過程中,測試人員需要注意的是:需求更多的是從軟件開發(fā)角度出發(fā)的,測試人員需要將這樣的需求轉(zhuǎn)換為測試的角度進行考慮。
假如系統(tǒng)需求規(guī)格說明不全,甚至沒有的情況下,如何識別其中的測試條件是一個挑戰(zhàn)。下面是識別測試條件的幾個建議:
(1)首先,與軟件產(chǎn)品的系統(tǒng)人員和開發(fā)人員進行討論,從測試的角度,將存在于他們腦子里的未文檔化的需求明確;
(2)其次,假如測試人員具備代碼方面的能力,可以通過實現(xiàn)的代碼倒推出軟件系統(tǒng)是如何實現(xiàn)的,它們也可以作為識別測試條件的參考。當然,這里面臨的一個問題是,代碼實現(xiàn)是否是正確的、全面的,這是測試人員需要考慮的一個問題。
(3)第三,從測試的角度推動開發(fā)團隊提高開發(fā)文檔的質(zhì)量,從規(guī)范軟件開發(fā)過程(流程)的層面逐步改進系統(tǒng)需求的質(zhì)量,例如:通過輸出測試文檔或者測試中的檢查表,推動改進開發(fā)文檔質(zhì)量。
2)用戶需求
測試過程中我們經(jīng)常會聽到測試人員不僅需要驗證開發(fā)是否正確實現(xiàn)了功能,同時也需要從用戶的角度考慮軟件產(chǎn)品是否真的滿足了用戶的需求,這是測試中的確認(Validation)關(guān)注點。而用戶需求就在其中充當了很重要的角色,用戶需求通常是從用戶實際使用的角度進行描述和劃分的,類似于用例場景。
由于用戶不一定了解和熟悉軟件產(chǎn)品相關(guān)的知識和技能,因此用戶需求很難是完整的。測試人員在分析用戶需求的時候,需要結(jié)合軟件產(chǎn)品的相關(guān)開發(fā)文檔具體內(nèi)容。同時,需要測試人員積極與客戶、產(chǎn)品的技術(shù)支持人員、銷售人員進行溝通,從他們角度獲取可能的測試條件。例如:客戶現(xiàn)場實際的網(wǎng)絡拓撲結(jié)構(gòu)、用戶實際使用的功能配置等。
3)標準與規(guī)范
標準與規(guī)范中定義的內(nèi)容會比開發(fā)文檔中可能詳細的多,因此它們是測試人員進行深入和細致學習的重要對象。例如:數(shù)據(jù)通信產(chǎn)品中的很多功能開發(fā)都是基于某些國際、國家和行業(yè)的標準與規(guī)范而開展的,基于它們獲取測試條件取,對于提高測試的覆蓋率和有效性是非常有必要的。下面是基于標準與規(guī)范識別測試條件的一些原則和建議:
(1)開發(fā)文檔沒有詳細描述軟件產(chǎn)品的某個功能或者特性,而是直接參考某某協(xié)議標準,例如:OAM PDU的格式與Y.1731/802.1ag/D80相兼容。
(2)協(xié)議一致性測試、標準與規(guī)范一致性測試等,這個時候,標準與規(guī)范可能是識別測試條件的主要參考輸入。測試人員可以基于標準與規(guī)范來檢查軟件產(chǎn)品的實現(xiàn)是否存在偏差,這主要是測試中的驗證(Verification)關(guān)注點;
(3)除了通過標準與規(guī)范獲取測試條件之外,測試人員也可以通過它們檢查開發(fā)文檔是否存在遺漏和錯誤,這是前期評審工作的主要目的之一。
4)類似產(chǎn)品需求
隨著軟件產(chǎn)品越來越復雜,行業(yè)內(nèi)采用增量-迭代開發(fā)模型的場合越來越多,例如敏捷開發(fā)。測試人員經(jīng)常面臨的軟件產(chǎn)品是基于已有的系統(tǒng)之上,即測試對象是基于以前版本的功能增加、缺陷修復、平臺移植等變更基礎之上。因此測試人員需要分析歷史測試是否全面,測試對象變更是否影響以前運行的軟件版本等。基于這些信息,測試人員可以獲取新的測試需求。
5)測試經(jīng)驗知識庫
測試并不是存在編碼之后的一個階段,測試應該貫穿于整個軟件開發(fā)生命周期。類似于開發(fā)過程改進一樣,測試也應該是PDCA(戴明質(zhì)量環(huán))的過程。因此,不同項目中的測試經(jīng)驗是每次測試用例設計的重要輸入。通過測試經(jīng)驗知識庫,測試團隊的測試經(jīng)驗和技能才能在整個組織中共享。
測試經(jīng)驗知識庫可以來自測試執(zhí)行的經(jīng)驗、測試過程中發(fā)現(xiàn)的缺陷分類和分析、用戶反饋的缺陷分類和分析等。
6)其他隱性的需求
除了從前面提到的輸入文檔中識別測試條件之外,其他的一些隱性輸出也可以作為識別測試條件的基礎,例如不同產(chǎn)品利益相關(guān)者針對測試對象中間版本的變更而達成的備忘錄;通過雜志、網(wǎng)絡等查找類似測試對象產(chǎn)品的一些常見缺陷和失效,以及軟件產(chǎn)品在用戶現(xiàn)場使用的討論等。
通過測試用例設計的參考輸入:系統(tǒng)需求、用戶需求、標準與規(guī)范、類似產(chǎn)品需求、測試經(jīng)驗知識庫,以及其他隱性的需求,測試人員可以獲取一系列的初始測試條件,即測試條件列表。為了提升測試效率和有效性,需要為每個測試用例需要設定一個測試優(yōu)先級。
初始的測試條件列表,還需要更進一步的測試類型分析和功能交互分析,才能得到相對完善的測試條件列表。接下來,測試人員可以采用一系列測試技術(shù)與方法,進行詳細測試用例的設計。
注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.hebeijilong.cn/news-id-19665.html 違者必究!部分文章來源于網(wǎng)絡由培訓無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實性請自行核實或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注軟件測試頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費申請試課。關(guān)注官方微信了解更多:150 3333 6050