visionmaster视觉软件说明书_测试策略与软件需求层次
1.需求層次
在軟件開發過程中,需求一般有三個層次,第一層是用戶有個想法、困難或者痛點,稱作為用戶需求;基于用戶需求進行可行性分析和價值分析后,在眾多解決用戶需求的方案,選擇一條最優解方案,稱之為業務需求,基于業務需求進行分解形成可實現的系統模塊或者功能,稱之為系統需求。1)用戶需求
用戶需求是需要重復考慮,客戶的痛點在什么地方,想要解決什么問題,達成什么目的,這部分內容很多時候比較隱晦或者用戶自己也很難定義清楚。比如用戶的需求可能是一架更快的馬車。
比如用戶需求可能是想過河,但表述時可能是希望能夠有一座橋。
所以對于業務需求一般需要專業人士,進行大量訪談跟蹤,最好以試圖的形式描述業務的現狀和期望解決的問題。所以用戶需求一定要了解與商業目的或者管理目的,了解客戶最后的動機。
2)業務需求
業務產品經理或者業務專家,通過對用戶需求分析提取,價值分析。梳理出有什么角色(Who),在什么條件下(When),在什么地方或者那個功能入口(Where),愿意花多少錢來完成,使用什么功能的什么操作(What)來達成業務目標。比如用戶需求是需要一架更快的馬車。
業務需求階段可以給出的方案可能是:四駕馬拉的馬車(原來是一匹馬),自行車,摩托車、汽車、火車、飛機等等,但通過對用戶需求價值分析,通過對角色能力判斷,確定一個摩托車的需求是滿足他的需求。一輛摩托車就是根據用戶需求分析出來的業務需求。
這部分實際上是需求規格說明書或者產品規格說明書的內容,這部分包含功能出發的入口,功能說明,功能使用約束的事件,以及執行完成后的響應及結果等。
3)系統需求
系統需求或者叫軟件需求,是實現業務需求,實際上是業務需求規格說明說的主要內容,業務需求分解為各個模塊或子系統的那些功能,包含功能的主流程和備選流程,數據對象和接口的結構等。系統需求是根據業務需求的落地實踐。比如業務需求需要一輛摩托車,系統需求就可以將業務需求通過分解成:
一個扶手方向盤
兩個輪子
一個車架
一套剎車系統
這樣就可以實現一輛摩托車。
2.不同層次需求的測試關注點不盡相同
基于以上需求分層,測試工程師應該針對不同層次的需求采用不同的測試方法。如在系統開發階段,開發出來的是一個個模塊或者子系統,測試應該解決的是單個模塊的功能是否滿足需求,需要考慮本模塊的核心功能和本模塊中的各種異常情況,包含異常場景中的異常流和備選流,也包含各種異常數據導致系統的潛在風險的功能,如某個功能某個項的輸入情況(默認、為空、超長、不符合業務規則和約束等)。
對于集成階段,需要考慮的是,即時每一個模塊都正常,整體業務是否可用,是否滿足業務需求,比如上面的例子提到的摩托車這個產品,在集成階段需要考慮的是,每一個組件都可用(方向盤、車架、輪子、剎車),但組合在一起是否能夠跑起來?是否按照業務需求的要求?更重要的是確保組裝起來后就是一個摩托車,而不是一個自行車。
而對于用戶驗收階段,需要確保完成的產品或者系統是滿足用戶需求的,比如我們造出的摩托車就是比馬車跑的快,而且沒有用戶非常反感的能力。這一條在測試時其實很多時候都被我們忽略,比如某個業務需求,解決用戶的某個痛點;通過系統需求分解后,完成某項功能。在測試時更多的是關心該業務需求是否被實現,而沒有關心該業務需求是否解決用戶的痛點。導致很多業務需求上線后,通過數據分析沒有達到預期結果,是一個偽業務需求。
為了解決以上問題,測試工程師更應該提前介入需求階段,了解用戶需求,基于用戶、業務需求需求進行測試,檢驗產品實現是否解決客戶的痛點,進行基于業務場景的測試,而對于系統需求,則需要根據需求規格說明書或者產品規格說明書,按照驗證在各種條件,輸入的組合情況下,操作的結果是否和需求描述的一致。
3.合適的測試策略
因為不同層次的需求,測試的關注點和側重點是不同的,所以需要針對不同層次需求或者階段采用不同的測試策略。測試策略是好的測試計劃的重要組成部分,是測試與任務聯系的橋梁。測試策略就是如何測試產品以及更快找出重要的問題?需要對那部分進行特殊的測試?要運用什么手段創建測試?當程序錯誤出現時如何識別?常見的測試策略有:基于階段劃分的測試策略:如:單元測試、集成測試、用戶驗收測試。
基于分層測試的策略模型,如:單元測試、服務接口測試、UI層測測試。
基于原型驗證的測試策略,如:業務驗證測試、灰度發布驗證、AB測試驗證。
以上只是簡單列舉,在實際測試過程中還會有各種測試策略在實際項目中的應用。比如前段時間我們內部有一個基于B端用戶的APP測試項目交接過來,該產品有近一年時間沒有迭代。交接過程中文檔缺失和人員斷檔的情況下,我們對新一輪App改版上線的策略是:
第一階段:核心功能走查,學習了解,確保核心功能正常,完成第一版高階用例梳理。
第二階段:業務測試階段,確保核心、輔助功能、基礎功能業務正常可用,可以流程的完成B端客戶的正常業務功能,在這個階段需要完成基本功能測試、兼容性測試、穩定性測試、性能測試、網絡測試等等。
第三階段:回歸測試階段,從用戶視覺進行測試大掃除,確保App正常發布。
測試策略是一個復雜活動,一項測試任務是否能夠在以最小的成本,快速高效、高質量完成,直接取決于測試策略是否科學規范。
——————— ?End??———————
視頻公開課
釘釘掃描下方海報進入直播群即可!如能幫到你,為我們點個在看哦?
總結
以上是生活随笔為你收集整理的visionmaster视觉软件说明书_测试策略与软件需求层次的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中的arange函数_Pyt
- 下一篇: python spider 安装_Pyt