用例場景作為測試用例
什麼是軟體測試?
軟體測試是透過驗證與確認來檢查待測軟體的文件與行為的行為。軟體測試還能提供對軟體的客觀且獨立的觀點,使公司能夠認識並理解軟體實施的風險。
軟體測試可以為使用者或資助者提供有關軟體品質與軟體失敗風險的客觀且獨立資訊。測試的主要目的之一是偵測軟體缺陷,以找出並修正錯誤。測試無法確定產品在所有條件下都能正常運作,僅能確定在特定條件下無法正常運作。

用例測試
用例測試是一種功能性的黑盒測試技術,可協助測試人員定義測試場景,並根據 Ivar Jacobson 在其著作《物件導向軟體工程》中所述,以交易為單位,從頭到尾執行整個系統。透過此技術,測試團隊可根據每個功能的特性,建立能從頭到尾執行整個軟體的測試場景。用例測試是使用者與軟體應用程式之間的互動,因此有助於從使用者的角度測試系統。以下是其中一些優點。
什麼是用例?
- 用例以敘述性語言撰寫,從終端使用者的角度描述系統的功能需求。
- 用例圖使用統一模型語言建立,每個步驟以橢圓形標示其名稱;
- 參與者以小人圖示表示,其名稱寫在下方;每個動作以參與者與用例之間的連結表示;
- 系統邊界以包圍用例的矩形表示。

用例的要素
根據您想要或需要的深度與複雜度,用例描述了以下要素的組合。
- 參與者——任何執行行為的個人或事物(使用系統的人)
- 主要參與者——啟動與系統互動以達成目標的利害關係人
- 次要參與者是系統需要其協助才能完成用例的參與者.
- 前置條件——必須在用例執行前或執行後成立或發生
- 觸發事件——引發用例啟動的事件
用例場景與替代路徑路徑
用例建模是一種正式的方法,用以描述業務系統與其環境之間的互動,並展示系統使用者所執行的活動。它也是UML中一種基於情境的技術。用例是一組完成特定任務或目標所需的步驟。通常,一個用例可以有多條路徑;每條路徑都被視為一個用例情境。簡單來說,用例是一個目標與各種流程的結合,而用例情境則代表其中一個操作的線性且直接的路徑。
情境是一種展示與預期系統互動的場景。情境是在需求分析過程中使用的一種工具,用以描述預期系統的特定用途。情境通過具體範例,從外部(例如使用者)的角度來捕捉系統的運作。一個用例可能包含多條使用者與系統互動時可選擇的「路徑」;每條路徑均被稱為一個情境。
- 主要成功情境 [基本流程] – 用例中沒有錯誤。
- 替代路徑 [替代流程] – 這些路徑是主線的變體。這些是系統層級出現問題時所產生的例外情況。
用例測試範例
用例情境被視為應用程式與參與者(使用者)之間的互動。這些用例用於描述需求,因此也可作為驗收測試的基礎。
以ATM為例,我們展示成功與失敗的情境。在此圖中,我們可以看到A(參與者——在此為個人)與S(系統)之間的互動。步驟1至5為成功案例,表示卡片與密碼已驗證,參與者被允許存取帳戶。
- A:插入卡片,
- S:驗證卡片並要求輸入PIN碼,
- A:輸入PIN碼,
- S:驗證PIN碼,並
- S:允許存取帳戶。
然而,在擴展過程中可能還存在其他三種情境,例如在驗證卡片時,系統發現某處有誤。這些擴展情境可列於下方,分別為圖中所示的2a、4a與4b。
2a)S:卡片無效(顯示訊息並拒絕卡片)
3a)S:密碼無效(顯示訊息並要求重試——兩次),以及
4a)S:密碼輸入錯誤三次(吞卡並退出)
用例情境作為測試案例
用例情境基本上是一份用例文件。換句話說,它描述了使用者在使用應用程式或系統時可能採取的操作。它也描述了使用者在使用軟體時可能遇到的情境。為了建立準確的測試情境,我們經常收集來自客戶、最終使用者和/或利益相關者的意見。這有助於全面覆蓋所有可能的用例情境,並實現對用例所有業務流程的全面測試。
用例與測試案例
用例與測試案例是軟體測試領域中常見的術語,且彼此密切相關。用例用於說明為執行特定任務而設計的系統應如何使用。相比之下,測試案例是一組為特定測試目標而設計的測試輸入、執行條件與預期結果。
| 比較參數 | 用例 | 測試案例 |
|---|---|---|
| 定義 | 一連串的動作,用以描述角色與系統之間的互動,以達成特定目標, | 一組測試輸入、條件與變數,用以定義軟體的特性。 |
| 目標 | 遵循所有順序操作以達成最後一步操作 | 驗證軟體是否運作正常。 |
| 迭代 | 它遵循不同的路徑 | 它遵循單一測試案例,一次測試一個 |
| 依賴 | 它依賴於需求 | 它依賴於使用案例 |
| 需求 | 需要文件和研究 | 測試輸入腳本,每個測試腳本完成一個步驟 |
| 完成 | 一次完成所有步驟 | 測試反覆進行,直到完成。 |
| 互動 | 使用者 | 結果 |
| 運作中 | 它依照軟體逐步的功能能力運作。 | 在測試人員的協助下運作,以驗證軟體 |













