日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件测试之正交法

發布時間:2023/12/29 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件测试之正交法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

正交法

通過分析我們發現,對于圖中的程序而言,我們要設計81條測試用例,那么有沒有一種方法能夠使用最小的測試過程集合獲得最大的測試覆蓋率呢?

1. 概述

1.1 定義

正交法,也叫正交實驗法或者正交排列法, 就是使用最小的測試過程集合獲得最大的測試覆蓋率

“正交實驗”是研究多因素、多水平的一種實驗方法,它利用正交表來對實驗進行設計,通過少數實驗代替全面的實驗.

在一項實驗中,把影響試驗結果的量稱為試驗因素(因子),簡稱因素。因素可以理解為試驗過程中的自變量,試驗結果可以看成因素的函數。在試驗過程中,每一個因素可以處于不同的狀態或狀況,把因素所處的狀態或狀況,稱為因素的水平簡稱水平

1992年AT&T公司,針對某一個軟件做了一個回歸測試:

在18個周(4個半月)的時間范圍內測試1500條測試用例。后來開發時間推遲了,測試時間被壓縮了。測試經理想了一個辦法,兩個人在8個周(2個月)測試1000條測試用例。但是測試經理不能保證該軟件就是完全沒有問題的。后來他決定用正交表去重新設計一下測試用例,422條測試用例,42個bug。測試完畢后,軟件上線了。在上線的兩年時間內。凡事被測試到的領域,都沒有發現任何問題。后來呢,他從頭到尾有總結了一番:有可能只會測試出32條bug。

前后對比:

  • 測試用例的條數少了

  • 測試出來bug的數量多了

1.2 正交表的構成

˙正交表時一種特制的表, 一般記為Ln(mk)Ln(m^k)Ln(mk)

  • n是表的行數,也就是需要測試組合的次數
  • k是表的行數, 表示控件個數(因素的個數,或因子的個數)
  • m是每個控件包含的取值個數(各因素的水平數,即各因素的狀態數)

**例如: **L9(34)L9(3^4)L9(34) 正交表如下

2. 使用正交法設計測試用例

2.1 步驟

  • 根據需求把空間即其取值列舉出來
  • 根據空間和空間的取值個數,選擇一個合適的正交表
    • 根據控件的個數,選擇正交表的次冪,也就是正交表中包含的最大值, 例如,4個控件,選擇4次冪
    • 根據控件取值個數,選擇正交表的底,也就是正交表包含的最大值, 例如, 每個控件有3個取值,底是3
  • 把控件及其取值映射到正交表中
    • 把控件名字分別映射到正交表的列名位置
    • 把正交表中每一列的數字分別用對應的控件取值替代
  • 根據正交表,編寫測試用例
  • 2.2 案例

    實現“字符屬性設置”的測試用例編寫

    (1). 列舉因子表

    字體字符樣式字體顏色字號
    仿宋粗體紅色20號
    楷體斜體綠色30號
    華文彩云下劃線藍色40號

    (2) 確定使用的正交表

    確定采用的正交表
    L9(34)L9(3^4)L9(34)

    (3). 把控件及其取值映射到正交表中

    (4). 編寫測試用例

    上圖正交表每一行都是一條測試用例, 此處僅列出2條

    用例編號輸入預期結果實際結果是否是bug
    UT-設置字符子項測-01字體:仿宋; 字符樣式: 粗體; 顏色:紅色; 字號:20仿宋、 粗體、 紅色、20號
    UT-設置字符子項測-02字體:仿宋; 字符樣式: 粗體; 顏色:紅色; 字號:30仿宋、 粗體、 紅色、20號

    3. 小結

    3.1 使用場景

    • 需求中條件的組合量比較大的時候
    • 需求兩個兩個相互組合的時候

    3.2 局限性

    正交表的個數有限,一般要求每個控件的取值相等,但是這在實際中很難應用,所以在實際使用時要進行取舍

    • 對于控件個數,如果沒有,就選擇一個接近的
    • 對于控制的取值,應該少數服從多數, 有更多空間的取值一樣

    邊界值測試法

    1. 介紹

    邊界值分析法就是對輸入或輸出邊界值進行測試的,也是一種黑盒測試.

    邊界值分析法通常作為等價類劃分法的補充,其測試用例來自等價類的邊界;長期的經驗得知,大量的錯誤是發現在輸入或輸出范圍的邊界上,而不是發生再輸入輸出范圍的內部,因此針對各種邊界情況設計測試用例,可以查出更多錯誤.

    和等價類劃分法的區別:

    • 是等價類劃分法的補充
    • 等價類劃分法可以挑選等價范圍內任意一個數據作為代表,邊界值分析法要求每個邊界值都要作為測試條件
    • 邊界值分析法不僅考慮輸入條件,同樣考慮輸出產生的測試情況

    常見的邊界值:

    • **邊界點(上點)😗*輸入范圍的邊界點
    • 離點: 離邊界點最近的點
    • 內點: 輸入范圍內的任意一個點

    對于邊界值的說明:

    邊界值數據本質上屬于等價類的范疇,測試時確實是一種冗余(重復),但是為了更好的測試質量(邊界值特別容易出bug),邊界值必須要單獨測,適當必要的冗余是可以接受的.

    舉例: 0-100內的整數

    上點0, 100
    離點1, 99; -1,101; 1,101; 0, 99;
    內點34

    2. 使用邊界值設計測試用用例

    2.1 步驟:

    • 明確需求
    • 確定有效和無效等價類
    • 明確輸入條件中的邊界值
    • 編寫測試用例

    注意: 邊界值法應用時,如果測試時間緊張,應該優先測試最大值和最小值

    2.2 案例

    要求:測試qq賬號是否符合規范

  • 需求: qq號是6-10位的整數
  • 確定邊界值
  • 上點6個, 10個
    離點5個, 9個, 7個,11個
    內點8個
  • 編寫測試用例
  • 用例編號等價類劃分輸入預期結果實際結果
    UT-QQ是否符合規范-01有效等價類6個正確
    UT-QQ是否符合規范-02有效等價類10個正確
    UT-QQ是否符合規范-03無效等價類5個錯誤
    UT-QQ是否符合規范-04有效等價類7個正確
    UT-QQ是否符合規范-05無效等價類11個錯誤
    UT-QQ是否符合規范-06有效等價類9個正確
    UT-QQ是否符合規范-07有效等價類8個正確
    UT-QQ是否符合規范-08無效等價類特殊符號,例如: #,¥ *、空格等錯誤
    UT-QQ是否符合規范-09無效等價類數字+特殊符號錯誤

    3. 小結

    邊界值分析法作為等價類劃分法的補充,經常和等價類劃分一起使用.

    使用的場景是:有輸入并且存在邊界值的位置.

    總結

    以上是生活随笔為你收集整理的软件测试之正交法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。