軟件更強調(diào)數(shù)據(jù)的精確性,網(wǎng)站強調(diào)服務(wù)器所能承受的壓力,ERP強調(diào)業(yè)務(wù)流程,驅(qū)動程序強調(diào)軟硬件的兼容性。在做測試分析時需要根據(jù)軟件的特性來選取測試類型,并將其列入測試需求當中。
第三層:測試的焦點。測試的焦點是指根據(jù)所測的功能點進行分析、分解,從而得出 的著重于某一方面的測試,如界面、業(yè)務(wù)流、模塊化、數(shù)據(jù)、輸入域等。目前關(guān)于各個焦點的測試也有不少的指南,那些已經(jīng)是很好的測試需求參考了,在此僅列出業(yè)務(wù)流的測試分析方法。
任何一套軟件都會有一定的業(yè)務(wù)流,也就是用戶用該軟件來實現(xiàn)自己實際業(yè)務(wù)的一個流程。簡單的來說,在做測試需求分析時需要列出以下類別:
1) 常用的或規(guī)定的業(yè)務(wù)流程
2) 各業(yè)務(wù)流程分支的遍歷
3) 明確規(guī)定不可使用的業(yè)務(wù)流程
4) 沒有明確規(guī)定但是應(yīng)該不可以執(zhí)行的業(yè)務(wù)流程
5) 其他異?;虿环弦?guī)定的操作
然后根據(jù)軟件需求理出業(yè)務(wù)的常規(guī)邏輯,按照以上類別提出的思路,一項一項列出各種可能的測試場景,同時借助于軟件的需求以及其他信息,來確定該場景應(yīng)該導致的結(jié)果,便形成了軟件業(yè)務(wù)流的基本測試需求。
在做完以上步驟之后,將業(yè)務(wù)流中涉及的各種結(jié)果以及中間流程分支回顧一遍,確定是否還有其他場景可能導致這些結(jié)果,以及各中間流
程之間的交互可能產(chǎn)生的新的流程,從而進一步補充與完善測試需求。
5. 測試需求的優(yōu)先級
優(yōu)先級別的確定,利于測試工作有的放矢的展開,使測試人員清晰了解核心的功能、特性與流程有哪些,客戶最為關(guān)注的是什么,由此可確定測試的工作重點在何處,更方便處理測試進度發(fā)生問題時,實現(xiàn)不同優(yōu)先級別的功能、模塊、系統(tǒng)等迭代遞交或取舍,從而緩和測試風險。
通常,需求管理規(guī)范的客戶,會規(guī)定用戶需求/軟件需求的優(yōu)先級別,測試需求的優(yōu)先級可根據(jù)其直接定義。如果沒有規(guī)定項目需求的優(yōu)先級,則可與客戶溝通,確定哪些功能或特性是需要尤其關(guān)注的,從而確定測試需求的優(yōu)先級。
6. 測試需求的覆蓋率與覆蓋程度
測試需求的覆蓋率通常是由與軟件需求所建立的對應(yīng)關(guān)系來確定的。如果一個軟件的需求已經(jīng)跟測試需求存在了一對一或一對多的對應(yīng)關(guān)系,可以說測試需求已經(jīng)覆蓋了該功能點,以此類推,如果確定了所有的軟件需求都建立了對應(yīng)的測試需求,那么測試需求的覆蓋率便是測試需求覆蓋點/軟件需求功能點=100%,但并不意味著測試需求的覆蓋程度高。因為測試需求的覆蓋率只計算了顯性的(即被明確規(guī)定的功能與特性)因素,而隱性的(即沒有被明確規(guī)定但是有可能或不應(yīng)該擁有的功能與特性)因素并未計算在內(nèi)。因此根據(jù)不斷的完善或?qū)嶋H測試中發(fā)生的缺陷,可以對測試需求進行補充或優(yōu)化,并更新進測試用例中,以此來提高測試需求的覆蓋程度。