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

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 決策表測試:學習示例 > 原文: [https://www.guru99.com/decision-table-testing.html](https://www.guru99.com/decision-table-testing.html) ## 什么是決策表測試? 決策表測試是一種軟件測試技術,用于測試不同輸入組合的系統行為。 這是一種系統方法,其中以表格形式捕獲了不同的輸入組合及其對應的系統行為(輸出)。 因此,它也被稱為**原因-結果**表,其中捕獲了因果關系以更好地覆蓋測試。 決策表是輸入相對于規則/案例/測試條件的表格表示。 讓我們學習一個例子。 ## 示例 1:如何為登錄屏幕制作決策基礎表 讓我們為登錄屏幕創建決策表。 ![](https://img.kancloud.cn/8d/ed/8ded3917f046115a9fc50f3f8e992a33_502x223.png) 如果用戶提供正確的用戶名和密碼,則條件很簡單,用戶將被重定向到主頁。 如果任何輸入錯誤,將顯示一條錯誤消息。 | **條件** | **規則 1** | **規則 2** | **規則 3** | **規則 4** | | **用戶名(T / F)** | F | ? | F | T | | **密碼(T / F)** | F | F | T | T | | **輸出(E / H)** | 是 | E | E | H | 傳說: * T –正確的用戶名/密碼 * F –用戶名/密碼錯誤 * E –顯示錯誤信息 * H –顯示主屏幕 解釋: * 情況 1 –用戶名和密碼均錯誤。 向用戶顯示一條錯誤消息。 * 情況 2 –用戶名正確,但密碼錯誤。 向用戶顯示一條錯誤消息。 * 情況 3 –用戶名錯誤,但密碼正確。 向用戶顯示一條錯誤消息。 * 情況 4 –用戶名和密碼均正確,并且用戶導航到主頁 將其轉換為測試用例時,我們可以創建 2 個場景, * 輸入正確的用戶名和正確的密碼,然后單擊登錄,預期結果將是用戶應導航到主頁 還有一個來自以下場景 * 輸入錯誤的用戶名和錯誤的密碼,然后單擊登錄,預期結果將是用戶應收到一條錯誤消息 * 輸入正確的用戶名和錯誤的密碼,然后單擊登錄,預期結果將是用戶應收到一條錯誤消息 * 輸入錯誤的用戶名和正確的密碼,然后單擊登錄,預期結果將是用戶應收到一條錯誤消息 因為他們基本上測試相同的規則。 ## 示例 2:如何為上傳屏幕制作決策表 現在考慮一個對話框,該對話框將要求用戶在某些條件下上傳照片,例如– 1. 您只能上傳“ .jpg”格式的圖片 2. 文件大小小于 32kb 3. 137 * 177 號決議。 如果任何條件失敗,系統將拋出相應的錯誤消息,說明問題,如果滿足所有條件,則照片將成功更新 ![](https://img.kancloud.cn/11/ed/11ed3843bea6748fe50a884313246a98_648x68.png) 讓我們為這種情況創建決策表。 | **Conditions** | **案例 1** | **案例 2** | **案例 3** | **案例 4** | **案例 5** | **案例 6** | **案例 7** | **案例 8** | | **格式** | .jpg | .jpg | .jpg | .jpg | 不是.jpg | Not .jpg | Not .jpg | Not .jpg | | **尺寸** | 小于 32kb | Less than 32kb | > = 32kb | >= 32kb | Less than 32kb | Less than 32kb | >= 32kb | >= 32kb | | **分辨率** | 137*177 | 不是 137 * 177 | 137*177 | Not 137*177 | 137*177 | Not 137*177 | 137*177 | Not 137*177 | | **輸出** | 照片已上傳 | 錯誤消息解析不匹配 | 錯誤消息大小不匹配 | 錯誤消息的大小和分辨率不匹配 | 格式不匹配的錯誤消息 | 錯誤消息格式和分辨率不匹配 | 格式和大小不匹配的錯誤消息 | 格式,大小和分辨率不匹配的錯誤消息 | 對于這種情況,我們可以創建 8 個不同的測試用例,并根據上表確保完整的覆蓋范圍。 1. 上傳格式為“ .jpg”,尺寸小于 32kb,分辨率為 137 * 177 的照片,然后單擊“上傳”。 預期結果是照片應成功上傳 2. 上載格式為“ .jpg”,尺寸小于 32kb,分辨率不為 137 * 177 的照片,然后單擊“上載”。 預期結果是應該顯示錯誤消息分辨率不匹配 3. 上傳一張格式為“ .jpg”,尺寸大于 32kb,分辨率為 137 * 177 的照片,然后單擊“上傳”。 預期結果是應該顯示錯誤消息大小不匹配 4. 上載格式為“ .jpg”,大小大于等于 32kb,分辨率不為 137 * 177 的照片,然后單擊“上載”。 預期結果是錯誤消息大小和分辨率不匹配應顯示 5. 上載格式不是“ .jpg”,尺寸小于 32kb,分辨率為 137 * 177 的照片,然后單擊“上載”。 預期結果是應顯示格式不匹配的錯誤消息 6. 上載格式不是“ .jpg”,尺寸小于 32kb,分辨率不為 137 * 177 的照片,然后單擊“上載”。 預期結果是錯誤消息格式和分辨率不匹配應顯示 7. 上載格式不是'.jpg',尺寸大于 32kb,分辨率為 137 * 177 的照片,然后單擊“上載”。 預期結果是應顯示格式和大小不匹配的錯誤消息 8. 上載具有'.jpg'以外的格式,大小超過 32kb 且分辨率不是 137 * 177 的照片,然后單擊上載。 預期結果是應顯示格式,大小和分辨率不匹配的錯誤消息 ## 為什么決策表測試很重要? 當需要測試不同的組合時,此測試技術就變得很重要。 它還有助于更好地覆蓋復雜業務邏輯的測試范圍。 在軟件工程中,邊界值和等效分區是用于確保更好的覆蓋范圍的其他類似技術。 如果系統對大量輸入顯示**相同的**行為,則使用它們。 但是,在每個輸入值集的系統行為為**不同**的系統中,邊界值和等效分區技術對確保良好的測試覆蓋率均無效。 在這種情況下,決策表測試是一個不錯的選擇。 該技術可以確保良好的覆蓋范圍,并且表示很簡單,因此易于解釋和使用。 該表可以輕松理解并涵蓋所有組合,因此可以用作需求和功能開發的參考。 隨著輸入數量的增加,該技術的重要性立即變得清晰。 可能的組合數由 2 ^ n 給出,其中 n 是輸入數。 對于 n = 10(這是基于 Web 的測試中非常常見的輸入形式),組合的數量將為 1024。顯然,您無法測試所有組合,但會使用基于決策的方法來選擇可能組合的豐富子集 測試技術。 ## 決策表測試的優勢 * 當不同輸入的系統行為不同而輸入范圍的系統行為不同時,等效分區和邊界值分析均無濟于事,但可以使用決策表。 * 該表示很簡單,因此可以輕松解釋,也可用于開發和業務。 * 該表將有助于進行有效的組合,并可以確保更好的測試覆蓋范圍 * 任何復雜的業務條件都可以輕松地轉化為決策表 * 在輸入組合很低的情況下,通常情況下我們要 100%覆蓋,這種技術可以確保覆蓋。 ## 決策表測試的缺點 主要缺點是,當輸入數量增加時,表格將變得更加復雜
                  <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>

                              哎呀哎呀视频在线观看