<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 基于模型的測試教程:工具&示例 > 原文: [https://www.guru99.com/model-based-testing-tutorial.html](https://www.guru99.com/model-based-testing-tutorial.html) ## 什么是基于模型的測試? 基于模型的測試是一種軟件測試技術,其中根據模型做出的預測來檢查被測軟件的運行時行為。 模型是對系統行為的描述。 行為可以用輸入序列,動作,條件,輸出以及從輸入到輸出的數據流來描述。 它在實踐上應該是可以理解的并且可以重用; 可共享必須對被測系統有準確的描述。 有許多可用的模型,它描述了系統行為的不同方面。 該模型的示例為: * 數據流 * 控制流 * 依賴圖 * 決策表 * 狀態轉換機 基于模型的測試描述了系統如何響應動作(由模型確定)。 提供行動,并查看系統是否按照預期做出響應。 它是驗證系統的輕量級形式方法。 此測試可以應用于硬件和軟件測試。 在本教程中,您將學習 * [什么是基于模型的測試?](#1) * [基于模型的測試示例](#2) * [有限狀態機](#3) * [狀態圖](#4) * [統一建模語言(UML)](#5) * [基于模型的測試的挑戰](#6) * [模型測試的優勢](#8) ## 基于模型的測試示例 ![Model Based Testing – Stuff You Must Know!](https://img.kancloud.cn/28/bd/28bdad9f3edfc7778bf2d43491b5fda7_523x471.png) 上面的模型解釋了在記事本中寫詩的簡化方法以及與每個步驟有關的可能動作。 對于每個動作(例如開始,輸入詩詞,保存),可以生成[測試用例](/test-case.html),并可以驗證輸出。 ## MBT 的類型: 有兩種類型的基于模型的測試框架。 1. 脫機/先驗:執行之前生成測試套件。 測試套件不過是測試用例的集合。 2. 在線/即時:在測試執行期間生成測試套件 ## 測試中的不同模型: 為了理解 MBT,有必要理解下面解釋的一些模型。 讓我們一一講解: ### 有限狀態機 該模型可幫助測試人員根據所選輸入評估結果。 輸入可以有各種組合,從而導致系統處于相應狀態。 系統將具有特定狀態和當前狀態,該狀態和當前狀態由測試人員提供的一組輸入控制。 考慮示例- 有一個系統允許員工登錄該應用程序。 現在,員工的當前狀態為“出”,一旦登錄系統,該狀態即為“進入”。 在“處于”狀態下,員工可以查看,打印,掃描系統中的文檔。 ![Model Based Testing – Stuff You Must Know!](https://img.kancloud.cn/42/c3/42c37ebe585d69da5b5c8b4beb741d7a_528x386.png) ### 狀態圖 它是有限狀態機的擴展,可用于復雜的實時系統。 狀態圖用于描述系統的各種行為。 它具有一定數量的狀態。 系統的行為被分析并以每種狀態的事件形式表示。 例如 - 在缺陷管理工具中以“新建”狀態引發缺陷。 一旦開發人員對其進行了修復,則必須將其更改為“已修復”狀態。 如果未修復缺陷,則將狀態更改為“重新打開”。 狀態圖的設計應使每個狀態都需要一個事件。 ![Model Based Testing – Stuff You Must Know!](https://img.kancloud.cn/3c/df/3cdf73771bb6f158620dd461019f2d36_546x205.png) ### 統一建模語言(UML) **統一建模語言**([ **UML** )是一種標準化的通用建模語言。 UML 包含一組圖形標記技術來創建可視化模型,這些可視化模型可以描述系統的非常復雜的行為。 UML 具有以下符號: * 活動項目 * 演員們 * 業務流程 * 組件 * 程式語言 ![Model Based Testing – Stuff You Must Know!](https://img.kancloud.cn/e0/6b/e06bca01dcefb16f3070fb4a2a208e4e_508x394.png) ## 基于模型的測試的挑戰: 在每個組織中部署 MBT 顯然需要大量的投資和精力。 以下是 MBT 在軟件工程中的缺點。 * 測試人員必需的技能 * 學習曲線時間會更多 * 難以理解模型本身 ## 模型測試的優點: 以下是 MBT 的優點: * 簡單的測試用例/套件維護 * 降低成本 * 改善測試范圍 * 可以在 n 臺機器上運行不同的測試 * 早期缺陷檢測 * 缺陷數量增加 * 節省時間 * 提高測試人員的工作滿意度 ### 結論 測試人員在測試過程中始終會構建心理模型。 這些心理模型可以轉化為紙上模型。 這有助于測試人員獲得可讀性和可重用性。 基于模型的測試是軟件測試的一種新方法。 下面顯示了軟件測試的演變- **![Model Based Testing – Stuff You Must Know!](https://img.kancloud.cn/3b/70/3b703e5646fab33209478482fa701a4a_465x230.png)**
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看