五步搞定需求分析與設計|再談測試需求分析與設計

最近部門新加不少新同學,如何讓他們更好的融入到團隊中,更好更快的完成測試任務,特針對新人進行測試需求分析與設計進行培訓與輔導。本文整理部分內容和大家一起分享。

1.需求基礎信息

1)需求瞭解:

需求提出的背景是什麼?需要解決什麼樣的問題?滿足哪一類用戶的痛點?產品經理是如何滿足用戶需求/痛點,方案是什麼?

2)需求驗證與澄清:

產品經理視角:你是產品經理,你會如何設計並滿足用戶需求和痛點?這個方案和你的方案有什麼不同,你覺得那個更好?你對產品經理這個方案有哪些疑問需要和她澄清溝通?

用戶視角:你是用戶,這個方案是否能夠解決你的問題或者痛點?

競爭對手視角:競品是如何滿足某一類用戶的需求,解決用戶的痛點。這個方案和我們的方案有何不同?爲什麼會有這個不同?他的方案的優點是什麼?缺點是什麼?我們的方案比他好在什麼地方?

業務的視角:需求驗收的標準是什麼?滿足什麼條件該需求就達到了需求的價值?

2.需求分類:

1) 單功能性需求:爲滿足用戶某單一功能或者用戶體驗而產生的功能性需求,比如文章的評論、點贊、分享等單一能力;輪播圖;總資產優化等

2) 繼承類需求:在原有需求的基礎上變更或者衍生出的需求,根據需求變更的範圍可分爲交互類繼承性需求、局部變更類繼承性需求和擴展類繼承性需求。

3) 運營類需求:運營類需求又稱爲配置類需求,通過業務或者運營配置實現業務能力,比如通過配置不同的數據庫連接串,實現訪問不同的數據庫。

4) 用戶場景類或者系統類需求:此類需求一般是工程類需求,業務的實現過程比較複雜,涉及到不同的角色和業務環節。

3.需求分析與設計的步驟

通過大量的測試實踐,總結出需求分析與設計的6個基礎步驟。

1)角色分析。

2)目標是什麼?有什麼價值

3)實現目標的路徑分析

4)路徑節點分析

5)用例編寫

4.需求分析實例

因篇幅問題,本文重點以系統類需求、功能類需求的分析過程爲例和大家進行分享。

1)功能類需求:某模板需求,要求能夠展示三個商品,展示一段時間收益,商品關鍵字等信息。

(1)角色分析:改模板需求主要角色運營人員,進行後臺配置;C端客戶,配置好後展示個用戶。


2.項目目標

實現如圖所示的一種模板能力,運營可以根據需要配置模板的數據並展示在App上。

3.項目達成路徑

提供如圖所示八個業務參數入口和四個接口返回參數入口。

4.路徑節點分析

對於簡單功能性需求,路徑節點一般都很簡單,如圖所示的十二個參數入口;即我們需要的節點數據。大家可以參考圖中備註。

5.測試用例編寫

在測試用例編寫時,需要考慮覆蓋每一個參數的異常情況以及參數組合約束關係,同時因爲是一個內置模板類功能需要,需要考慮系統兼容性問題。

2) 用戶場景類或者系統類需求:

本文使用一個報銷單系統來說明系統類需求的分析過程,如圖所示,該系統需要實現的一個能力就是把線下報銷單流程變成電子化的線上報銷流程。

1.角色分析:

1)申請報銷(角色)

2)處理報銷(角色)

3)項目成本分析(角色)

4)預算管理(角色)

2.項目目標

將紙質報銷單實現線上電子化,實現線上審批和報銷。

3.項目達成路徑

關於項目的路徑達成,一般產品經理會給出完整的解決方案,但在測試同學還是要根據自己的想法去思考,如果你是產品經理如何設計這個產品,如何滿足用戶需求。然後根據產品經理的方案和自己的思考進行比對,看看差異在什麼地方?是我們思考的深度還是角度偏差導致差異?慢慢和產品的思考對齊,快速提升我們對業務的理解能力和思考的深度,確保做到對業務的不遺不漏,真正的做到躬身入局,不斷提升自己的能力。

在思考的過程中,採用敏捷思維方式,深入思考每一個角色可能發生的故事,一步步深挖需求,解決用戶的問題和需求。下圖以報銷流程爲類,如圖所示:



4.路徑節點分析

通過第三步對每個角色進行分析,會逐漸的梳理出來公共的事件,比如報銷單電子化項目中,申請報銷,報銷審覈、報銷覈准、預支款申請等都是我們梳理出來的事件或者節點。

5.測試用例編寫

根據梳理出來的事件和節點,採用場景分析法或者流程圖分析法。

流程圖分析法以角色爲永道、以事件爲節點,根據實際的業務觸發條件,梳理出來整個業務流程,編寫場景級的用例,場景級的用例就可以直接轉換成優先級較高的測試用例。完成場景級的用例,可以對每一個節點或者事件再進行分析和梳理,變成常規用例。

場景分析法是分析場景類需求和系統級需求最常用的一種用例分析方法,現在的軟件幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果就形成事件流。這種在軟件設計方面的思想也可以引入到軟件測試中,可以比較生動地描繪出事件觸發時的情景,有利於測試設計者設計測試用例,同時使測試用例更容易理解和執行基本流和備選流:如下圖所示,圖中經過用例的每條路徑都用基本流和備選流來表示,直黑線表示基本流,是經過用例的最簡單的路徑。備選流用不同的色彩表示,一個備選流可能從基本流開始,在某個特定條件下執行,然後重新加入基本流中(如備選流 1 和 3);也可能起源於另一個備選流(如備選流 2),或者終止用例而不再重新加入到某個流(如備選流 2和 4)。

場景分析法是分析場景類需求和系統級需求最常用的一種用例分析方法,大家可以根據前面的分析,自己嘗試使用場景分析法完成報銷流程的的測試場景分析,本文不在詳細贅述。


軟件測試需求分析與設計是測試的最最核心的能力,主要解決”測什麼?,““怎麼測?”的問題。

測什麼?主要通過對需求分析梳理出來角色,測試對象和測試範圍,理解測試價值和目標(用戶需求是什麼?業務目標是什麼?產品價值是什麼?)。

怎麼測是通過需求分析與設計,梳理出來測試的難點重點,測試的深度與廣度,測試策略(先測什麼?再測什麼?最後測什麼?),都有那些階段性產出和工價產品。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章