軟體測試 - 不可行路徑



軟體測試透過應用黑盒和白盒測試技術來執行。黑盒測試主要透過向軟體輸入特定資料集來驗證軟體生成的輸出,而白盒測試則驗證軟體的原始碼、演算法、資料流等。它還包括檢查程式碼的每條路徑、條件和語句。

軟體的不可行路徑

不可行路徑是指任何輸入資料的組合都無法測試和驗證的路徑。所有程式原始碼都由各種路徑組成。在測試開始時,所有這些路徑都將被執行和驗證。但是,可以看出,其中一些路徑是不切實際的,無法透過使用任何型別的輸入資料來遍歷。

不可行路徑增加了測試過程的整體成本,主要是針對自動化測試。為驗證不可行路徑而建立的自動化測試用例的配置、執行和維護非常耗時且昂貴。此外,它們還會阻礙和減慢總體的測試活動、測試報告生成以及軟體缺陷的識別。因此,如果不存在任何資料可以饋送到程式的全域性變數、輸入變數和設定以使其執行,則程式原始碼中的路徑被認為是不可行的。

軟體中的不可行路徑也不利於白盒測試的進行。使用白盒測試來驗證軟體中的不可行路徑可能會導致以下情況:

  • 不可行路徑沒有生成測試用例的範圍和可能性。因此,它為測試團隊創造了一種死鎖和不確定性的局面。
  • 原始碼中的不可行路徑可能導致測試用例設計不準確,從而導致採用不正確的測試方法。

軟體不可行路徑示例

讓我們來看一下下面的程式碼片段來說明軟體的不可行路徑。

  • 建立一定金額的訂單。
  • 如果訂單金額小於五百。
  • 則沒有折扣。
  • 否則,有 25% 的折扣。
  • 如果訂單金額大於一千。
  • 則有 35% 的折扣。
  • 結束

透過檢視上面的程式碼片段及其控制流圖,我們可以得出結論,路徑 1 → 2 → 3 → 5 → 6 → 7 指的是一條不可行路徑,因為不可能執行節點或語句 6。但是,路徑 1 → 2 → 4 → 5 → 6 → 7 和 1 → 2 → 4 → 5 → 7 是正確且可行的。

識別軟體不可行路徑的最佳實踐

因此,可以得出結論,每個程式原始碼都可能包含不可行路徑,這使得測試人員在白盒測試時更難以設計正確且合適的測試用例。因此,建議測試人員能夠利用其經驗、技能、各種方法、解決方案等來檢測和消除所有可能的不可行路徑。這將允許他建立正確且有效的測試用例,以便在軟體上成功執行測試。

軟體不可行路徑的缺點

軟體不可行路徑的缺點如下:

  • 軟體不可行路徑會佔用測試團隊的時間、精力和金錢。
  • 軟體不可行路徑會為測試用例的自動化帶來問題。
  • 軟體不可行路徑會阻礙測試過程,尤其是在白盒測試期間。

結論

本教程對軟體不可行路徑進行了全面介紹。我們首先描述了什麼是軟體的不可行路徑,軟體效能測試的不同型別,軟體不可行路徑的示例以及識別軟體不可行路徑的最佳實踐。這使您能夠深入瞭解軟體不可行路徑。明智的做法是繼續練習您所學的內容並探索與軟體測試相關的其他內容,以加深您的理解並拓寬您的視野。

廣告