<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 什么是狀態轉換測試? 圖表,技術,示例 > 原文: [https://www.guru99.com/state-transition-testing.html](https://www.guru99.com/state-transition-testing.html) ## 什么是測試狀態轉換? 狀態轉換測試定義為一種軟件測試技術,其中輸入條件的變化導致被測應用程序(AUT)的狀態發生變化。 這是一種黑盒測試技術,其中測試人員針對序列中的不同輸入條件來分析被測應用程序的行為。 在這種技術中,測試儀提供正輸入和負輸入測試值并記錄系統行為。 它是系統和測試所基于的模型。 根據先前發生的情況,對于同一輸入獲得不同輸出的任何系統都是有限狀態系統。 **狀態轉換測試技術**在需要**測試不同系統轉換的地方很有幫助。** 在本教程中,您將學習- * [什么是測試狀態轉換?](#1) * [何時使用狀態轉換?](#2) * [何時不依賴狀態轉換?](#3) * [狀態轉換圖的四個部分](#4) * [狀態轉換圖和狀態轉換表](#5) * [如何進行狀態轉換(狀態轉換的示例)](#6) * [狀態轉換技術的優缺點](#7) ## 何時使用狀態轉換? * 當測試人員正在測試應用程序的一組有限的輸入值時,可以使用此方法。 * 當測試人員試圖測試被測應用程序中發生的事件序列時。 即,這將允許測試人員針對一系列輸入值測試應用程序行為。 * 當被測系統過去依賴于事件/值時。 ## 什么時候不依賴狀態轉換? * 未針對順序輸入組合進行測試時。 * 如果要針對不同的功能(例如探索性測試)進行測試 ## 狀態轉換圖的四個部分 狀態過渡模型包含以下四個主要部分 **1)指出軟件可能會獲得的** ![](https://img.kancloud.cn/68/20/68203b7b8cec40aa672a7ab5867e47fb_128x65.png) **2)**從一種狀態過渡到另一種狀態 ![](https://img.kancloud.cn/f1/85/f185a8db11a184f859e05501edd91938_41x17.png) **3)引發過渡的事件**,例如關閉文件或取款 ![](https://img.kancloud.cn/88/69/88694b6d7ff82148fa37f02c6e69be07_112x36.png) **4)過渡(錯誤消息或收到現金)導致的操作**。 ![](https://img.kancloud.cn/65/bb/65bb42cb2d5b0fcfacbab5bb42cfcb02_137x86.png) ## 狀態轉換圖和狀態轉換表 有兩種主要的方式來表示或設計狀態轉換,狀態轉換圖和狀態轉換表。 在狀態轉換圖中,狀態以方框文本顯示,并且轉換由箭頭表示。 也稱為狀態圖或圖形。 在識別有效過渡時很有用。 在狀態轉換表中,所有狀態都在左側列出,事件在頂部列出。 表中的每個單元格代表事件發生后系統的狀態。 它也稱為狀態表。 在識別無效過渡時很有用。 ## 如何進行狀態轉換(狀態轉換的示例) ### 范例 1: 讓我們考慮一個 ATM 系統功能,如果用戶輸入無效密碼三次,該帳戶將被鎖定。 在此系統中,如果用戶在前三次嘗試中均輸入了有效密碼,則該用戶將成功登錄。 如果用戶在第一次或第二次嘗試中輸入了無效的密碼,將要求用戶重新輸入密碼。 最后,如果用戶在第 3 次<sup>和第</sup>次輸入錯誤的密碼,該帳戶將被阻止。 ### 狀態轉換圖 ![](https://img.kancloud.cn/a1/0b/a10be29f6aa2b4657cef9b7c176b5793_676x384.png) 在圖中,每當用戶輸入正確的 PIN 時,他便進入“訪問授權”狀態,如果輸入的密碼錯誤,則他將進入下一次嘗試,并且如果在帳戶的第 3 次<sup>和</sup>相同時都進行了相同操作 達到阻止狀態。 ### 狀態轉換表 | | **正確的 PIN 碼** | **PIN 碼錯誤** | | **S1)啟動** | **S5** | **S2** | | **S2)1 次 <sup>st</sup> 嘗試** | **S5** | **S3** | | **S3)2 <sup>和</sup>嘗試** | **S5** | **S4** | | **S4)3 次<sup>次</sup>嘗試** | **S5** | **S6** | | **S5)授予訪問權限** | **-** | **-** | | **S6)帳戶已被阻止** | **-** | **-** | 在表中,當用戶輸入正確的 PIN 時,狀態將轉換為 S5(已授予訪問權限)。 并且,如果用戶輸入了錯誤的密碼,他將進入下一個狀態。 如果他第 3 次<sup>和</sup>做相同的時間,則他將進入帳戶被阻止狀態。 ### 范例 2: **在參考以下示例之前,請先檢查此視頻:** 在航班預訂登錄屏幕中,考慮到您必須輸入正確的座席名稱和密碼才能訪問航班預訂應用程序。 <center> <figure> ![](https://img.kancloud.cn/9c/ef/9cef73fe6046ef24582f8a1c045257a3_821x381.png) <figcaption>狀態轉換圖</figcaption> </figure> </center> 它使您可以使用正確的密碼和登錄名訪問應用程序,但是如果輸入錯誤的密碼怎么辦。 該應用程序允許進行三次嘗試,如果用戶在第四次嘗試中輸入了錯誤的密碼,則系統會自動關閉該應用程序。 狀態圖可幫助您確定要測試的有效過渡。 在這種情況下,必須使用正確的密碼和錯誤的密碼進行測試。 對于測試方案,登錄第 2 <sup>和第</sup>,第 3 <sup>和</sup>和第 4 <sup>和</sup>可以嘗試測試任何人。 您可以使用狀態表來確定無效的系統轉換。 ![](https://img.kancloud.cn/77/83/7783ee019787606601012371dcc24e5e_676x412.png) 在狀態表中,所有有效狀態都列在表的左側,而導致它們發生的事件則列在頂部。 每個單元代表當相應事件發生時狀態系統將移至的狀態。 例如,在 S1 狀態下,輸入正確的密碼將進入狀態 S6(已授予訪問權限)。 假設第一次嘗試輸入的密碼錯誤,將進入狀態 S3 或第二次嘗試。 同樣,您可以確定所有其他狀態。 使用此方法突出顯示兩個無效狀態。 假設您處于狀態 S6,即您已經登錄到應用程序,并且您打開了另一個航班預訂實例,并為同一座席輸入了有效或無效的密碼。 這種情況下的系統響應需要進行測試。 ## 狀態轉換技術的優缺點 | **優勢** | **劣勢** | | 這種測試技術將以圖形或表格形式表示系統行為,這將使測試人員有效地覆蓋和理解系統行為。 | 這種測試技術的主要缺點是我們不能每次都依賴這種技術。 例如,如果系統不是有限系統(不是按順序排列),則不能使用此技術。 | | 通過使用此測試,技術測試人員可以驗證是否滿足所有條件并捕獲了結果 | 另一個缺點是,您必須定義系統的所有可能狀態。 盡管對于小型系統而言這是可以的,但由于狀態數量呈指數級增長,因此很快可以分解為大型系統。 | ## 摘要: * 狀態轉換測試定義為一種測試技術,其中輸入條件的變化導致被測應用程序的狀態發生變化。 * 在軟件工程中,狀態轉換測試技術在需要測試不同系統轉換的地方很有用。 * 表示或設計狀態轉換的兩種主要方法是:狀態轉換圖和狀態轉換表。 * 在狀態轉換圖中,狀態以方框文本顯示,并且轉換由箭頭表示。 * 在狀態轉換表中,所有狀態都在左側列出,事件在頂部列出。 * 此測試技術的主要優點是,它將提供系統行為的圖形或表格表示形式,這將使測試人員有效地了解和理解系統行為。 * 這種測試技術的主要缺點是我們不能每次都依賴這種技術。
                  <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>

                              哎呀哎呀视频在线观看