流程測試——流程測試設(shè)計
流程需求分析完成后,提取被測對象涉及到的業(yè)務流程,進行測試用例的設(shè)計。
流程測試用例與功能驗證測試用例不同,流程測試用例更多需要保證流程的正確性,不需要校驗單個功能點的正確性,一般使用場景法設(shè)計測試用例。
【案例1 ECShop用戶購買流程分析】
ECShop注冊用戶購物流程分析,首先確定該流程所涉及的用戶角色,然后根據(jù)產(chǎn)品需求或用戶故事,確定基本流、備選流及異常流。
測試工程師將分析出來的流程路徑,可以利用表格形式記錄,表格中包含序號、流程屬性、流程描述、角色等信息,如表1所示。
表1 注冊用戶業(yè)務流程劃分表

通過上述路徑分支劃分,最終生成對應的測試用例,需要注意的是,流程中涉及登陸、支付等功能的正確性,需單獨測試驗證,流程測試中僅關(guān)注流程本身,而不是單個功能節(jié)點本身。
大部分的流程測試都采用上述的方法,測試工程師應當確保對用戶期望實現(xiàn)的業(yè)務清晰,否則無法設(shè)計出合理的流程用例,很可能被已經(jīng)實現(xiàn)的系統(tǒng)流程誤導。
設(shè)計流程用例的時候,測試工程師需注意流程中的判定條件、邊界數(shù)據(jù)、異常處理以及是否符合實際用戶應用場景。
【案例2 銀行貸款申請流程】
很多銀行的貸款申請流程如圖1所示。

圖1 貸款申請流程
表2 貸款申請流程說明


上述流程相比一般的業(yè)務就復雜多了,流程中涉及至少客戶經(jīng)理、自動審批規(guī)則、電核、一級審批、二級審批等五個節(jié)點,并且在每個節(jié)點中又涉及到很多的單點功能驗證。測試工程師在分析上述需求時,應當仔細閱讀每一個流程描述。比如,“系統(tǒng)將會通過自動審批規(guī)則來判斷相關(guān)的貸款申請是否需要進行電核處理”這句需求中“自動審批規(guī)則”包括哪些具體規(guī)則,這個隱性需求同樣需要測試工程師提取確認,否則無法保證測試的質(zhì)量。
對于邊界問題,上述流程中當一級審批同意后,如果貸款申請金額超過5萬元,則需進行二級審批,因此在設(shè)計用例時,需考慮此類邊界問題。

