本節大綱
?軟體測驗需求分析的概述
?專案需求分析實戰演練
?用例設計方法-等價類
?用例分析專案實戰
?用例設計方法-邊界值
01需求分析的概述
什么是需求?
? 需求是產品必須完成的事以及必須具備的品質,需求包括:功能性需求、非功能性需求和限制條件,
? 功能性需求:功能性需求是產品必須完成的那些事,要求一定的功能和品質,
? 案例:微信可以給好友發訊息、發紅包、發語音和視頻等操作
? 非功能性需求:非功能性需求是產品必須具備的屬性或品質,諸如觀感、可用性、安全性和法律限制 等,
? 例子:x 平臺用戶數為5萬人,每天登錄用戶數為1萬左右,網路的帶寬為100M帶寬,在作業時間 根據資料名稱條件進行搜索,可以在3秒內得到搜索結果,
? 2021年天貓活動的訂單處理峰值達高于58.3萬筆/秒,要求訂單成功率為100%
? 注意:在專案中一般優先分析功能性需求,產品的功能確定之后再分析非功能性需求,
? 限制條件:在需求分析中需要考慮一些條件約束,規則等,比如客戶的約束,行業的約束,法律的約 束以及自己的約束,
? 例如:客戶需求:x平臺必須在2021年開學的第一學期上線
需求的重要性

? 符合盡早介入測驗、檔案也需要測驗原則
? 是設計測驗用例的重要依據,有助于保證測驗的質量和進度
? 是衡量測驗覆寫率的重要指標,
如何進行需求分析
? 測驗需求分析的主要目的:根據需求檔案提取測驗點,根據測驗點來撰寫測驗用例,
? 需求分析步驟:
1. 熟悉需求背景及商業目標
2. 找出功能性需求與約束:
? 單個功能,如能否登錄,等否發送資訊;
? 功能互動;
? 業務流程,如登錄成功-給好友發送紅包-好友領取紅包
3. 找出非功能性需求與約束:
? UI、性能、網路、兼容性、易用性、特殊情況
02需求分析演練
案例
? 生活物品測驗需求分析,如:杯子、筆、桌子
不管讓你測什么,面試官的考察主要目的其實是:沒有需求檔案或者需求不完整的情況下如何測驗 ?能不能把測驗用例設計方法應用到實際作業中去 ?測驗思維是否完整 ,應變能力如何,表達能力如何?
一、如何測驗一個杯子?
功能測驗:
1.倒入溫水,測驗杯子是否可以正常裝水;
2.裝入水后,是否可以正常喝水;
3.杯子是否有保溫功能,保溫功能是否正常;
4.擰緊杯蓋后,上下左右翻轉杯子,杯子是否漏水;
容量測驗:
1.倒入溫水,測驗杯子的最大盛水量是多少;
2.杯子的最大盛水量是否符合國際計量標準,是否沒有誤差;
兼容性測驗:
1.分別倒入不同的液體(冰水、熱水、溫水、果汁、酒水),測驗杯子是否正常;
2.用杯子泡茶、咖啡、牛奶,測驗杯子是否可以正常使用;
3.在大風、大雨、大雪、高溫天氣下,杯子是否正常使用;
4.杯子放進微波爐,是否會爆炸;
5.杯子放進冰箱的時候,是否會融化;
安全性測驗:
1.杯子的材質是否符合國際標準,是否對人體有害;
2.杯子是否會與所盛液體發生化學反應,產生對人體有害的物質(細菌,病毒等);
3.杯子在高溫、零下溫度是否會發生化學反應,產生有害物質;
4.杯子置于微波爐、冰箱是否會發生化學反應,產生有害物質;
5.杯子破損后,是否容易對使用者造成傷害;
性能測驗:
1.分別倒入0-100攝氏度的水,是否可以承受不同溫度;
2.倒入不同液體靜置一段時間(24小時以上),杯子是否會漏水;
3.杯子的保溫性是否達到要求 ;
4.杯子的耐熱性是否達到要求;
5.杯子的耐寒性是否達到要求;
壓力測驗:
1.用手按壓杯子,是否容易變形;
2.杯子從不同高度摔下去的損壞程度如何;
3.在杯子內分別裝入少量的、半杯的、滿杯的液體,看其裝載量是否達到設計標準;
易用性測驗:
1.杯子的形狀是否容易倒入液體;
2.杯子的重量和大小是否合適;
3.杯子是否防滑;
4.杯口是否平整,是否方便飲用;
5.杯子拿在手上是否會掉色;
6.杯子是否隔熱、不燙手;
UI測驗:
1.杯子設計是否符合需求規格說明書;
2.杯子的形狀和顏色是否符合大眾審美需求;3.杯子是否標有刻度、Logo等;
互動性測驗:杯子與杯蓋、杯托互動性是否符合用戶使用習慣;
檔案測驗:使用手冊是否對杯子的用法、限制、使用條件進行了詳細描述;維護性測驗:杯子破損后,是否有修補措施;
二、如何測驗一把傘?
功能測驗:
1.傘是否可以正常打開/關閉,是否可以反復打開/關閉;
2.傘是否可以折疊,傘的尺寸是否符合使用需求;
3.傘骨與傘柄是否耐用,材質是否符合需求,是否生銹;
4.傘的底座是否結實,是否容易脫落;
5.傘是否能夠正常遮陽/擋雨,傘面是否能夠承受住風吹日曬,是否防紫外線;
6.傘的暗扣/粘扣的是否能夠正常使用,外部捆綁條長度是否合適,是否結實耐用;
7.自動傘是否可以正常使用,按鈕承受力度是否適中;
UI測驗:
1.傘的型別是否符合需求,手動傘、自動傘;
2.傘的外觀、顏色、是否齊全,是否美觀;
易用性測驗:
1.傘的重量和大小是否方便人們攜帶;
2.傘的打開、關閉是否容易操作;
兼容性測驗:
1.傘的用途:遮陽、擋雨是否可以一傘二用;
2.傘是否能夠遮擋住別的東西,例如沙子等;
壓力測驗:
1.遮陽傘的抗紫外執行緒度;
2.傘最大能承受住多大的風、雨的力度;
安全性測驗:
1.傘尖是否容易誤傷到旁人;
2.傘柄是否光滑,避免開合刮傷;
3.傘底座的掛繩是否結實,不易脫落;
維護性測驗:傘破損后,是否有修補措施;
三、如何測驗一支鋼筆?
功能測驗:
1.鋼筆書寫文字是否流暢;
2.鋼筆字跡的顏色是否正常,書寫的文字是否能正常顯示;
3.鋼筆書寫字跡的粗細度是否合適;
4.鋼筆是按鍵式還是筆帽式的(按鍵式的能否正常使筆芯正常收縮,筆帽式的是旋轉的還蓋帽的);
5.鋼筆的筆芯觸地能否正常書寫;
6.鋼筆筆芯是否漏墨水;
7.鋼筆沒有墨水是否能繼續書寫;
8.鋼筆筆桿能否正常拆卸;
9.鋼筆筆芯用完能否換筆芯;
UI測驗:
1.鋼筆的筆桿、筆帽、筆芯顏色與風格是否統一;
2.鋼筆上是否注明了品牌;
兼容性測驗:
1.鋼筆能否在各類紙張上進行書寫;
2.鋼筆換不同型別的筆芯能否調換成功;
易用性測驗:
1.筆桿是否防滑處理;
2.筆桿長度大小是否符合正常人的手大小長度設計;
安全性測驗:
1.鋼筆筆芯的墨水是否有毒;
2.手部粘漆是否有毒;
3.筆桿是否光滑平整不劃手;
壓力測驗:
1.鋼筆從一定的高度掉落,是否完好無損;
2.鋼筆是否能承受一定的壓力;
四、如何測驗一個桌子?
功能測驗:
1.確認桌子的功能是用于辦公還是用于放置物品,桌子的尺寸是否符合需求;
2.桌腿高度粗細是否合適,接觸地面的部分是否平整;3.桌面是否保持水平面持平,是否能放置物品保持不傾斜;
3.桌面和桌腿連接處是否緊密無縫隙;
4.桌子的支撐點是否牢固,放置物品桌子是否搖晃;
5.桌子會不會掉顏色,物品在桌子上放置一段時間顏色會不會粘到物品上;
6.有水撒到桌子上的時候,用布或紙擦的時候會不會掉顏色;
7.桌面是否防水、防油以及其他污漬;
易用性測驗:
1.桌子的高度是否合適,是否方便拿放物品;
2.桌子是否方便移動,重量是否合適;
3.桌子有污漬是否易于清理干凈;
UI測驗:
1.檢查桌子整體顏色是否均勻協調,各個部位之間的顏色是否協調;
2.桌子形狀大小是否適中,桌面與桌腿的大小比例是否協調;
3.桌子的表面是否光滑,是否會凹凸不平;
安全性測驗:
1.桌子的桌面、邊緣和拐角處是否平滑不傷手;
2.桌子的支撐力是否足夠;
3.桌子推倒后,損毀程度如何,是否不易傷人;
性能測驗:
1.桌子的承重能力如何,最大能承受的重量是多少;
2.桌子上堆放較重物體一段時間,承重能力如何;
03用例方法-等價類
黑盒測驗
? 黑盒測驗:也稱功能測驗,測驗中把被測的軟體當成一個黑盒子,不關心盒子的 內部結構是什么,只關心軟體的輸入資料與輸出結果,
? 主要測驗依據是需求檔案、設計檔案、用戶手冊
? 1:業務能力
? 2:測驗策略(功能測驗、UI測驗,兼容性測驗)
? 3:設計用例 --邏輯思維

案例需求:
? 兩個整數加法計算器基本需求
? 第一個數和第二個數都是只能輸入-99到99之間的整數
? 對于輸入的小于-99的資料或者大于99的資料,程式應給出明確提示
? 對于輸入的小數、字符等非法資料,程式應給出明確提示

你會這樣測驗嗎?
-99+(-99),-99+(- 98),......,-99+99-98+(-99),-98+(-98),......,-98+99 ...... 98+(-99),98+(-98),......,98+99 99+(-99),99+(-98),......,99+99
黑盒測驗產生的問題
? 從理論上講,黑盒測驗只有采用窮舉輸入測驗,把所有可能的輸入都作為測驗情 況考慮,才能查出所有的錯誤,實際上測驗情況是無窮多的,完全測驗是不可能 的,
? 如何解決?
必須將黑盒測驗行為加以分類
1、節約測驗實施的時間和資源
2、避免盲目測驗、提高測驗效率
3、使測驗的實施重點突出、目的更明確
測驗用例設計方法
? 黑盒測驗用例設計方法
1. 等價類劃分法
2. 邊界值分析法
3. 錯誤推測法
4. 因果圖法
5. 判定表法
6. 正交實驗法
7. 狀態遷移圖法
8. 場景法
? 白盒測驗用例設計方法
1. 陳述句覆寫
2. 判定覆寫
3. 條件覆寫
4. 判定-條件覆寫
5. 基本路徑覆寫
6. 回圈覆寫
等價類劃分法
? 等價類劃分是一種典型的、常用的黑盒測驗方法,這種方法把全部輸入資料 合理劃分為若干等價類,在每一個等價類中取一個資料作為測驗的輸入條件, 就可以用少量有代表性的測驗資料取得較好的測驗結果,
1. 有效等價類:有效等價類是程式規格說明有意義,合理的輸入資料 --驗證軟體的功能 是否實作
2. 無效等價類:無效等價類是程式規格說明無意義,不合理的輸入資料 --提高軟體的安 全性和體驗性

等價類劃原則
1. 如果輸入條件規定了取值范圍或值的個數,則可以確定一個有效等價類和兩個無效等價類,? 案例:成績:【0,100】,用戶名:長度8個字符長度

2. 在規定了輸入資料必須遵守的規則的情況下,可確立一個有效等價類(符合規則)和若干個無效等 價類(從不同角度違反規則),
? 案例:輸入數值必須是正整數
? 有效:正整數
? 無效:
? 負數
? 小數
? 字符
3. 在輸入條件是一個布爾量的情況下,可確定一個有效等價類和一個無效等價類,? 案例:第一個數和第二個數必填

4. 在規定了輸入資料的一組值(假定n個),并且程式要對每一個輸入值分別處理的情況下,可確立N個有 效等價類和一個無效等價類,
?案例:密保問題選擇

5. 在規定了輸入資料必須遵守的規則的情況下,可確立一個有效等價類(符合規則)和若干個無效等 價類(從不同角度違反規則),
? 案例:輸入數值必須是正整數
等價類分析步驟
1. 為每個輸入劃分等價類,得到等價類串列 ,為每個等價類規定一個唯一編號

2. 設計一個測驗用例,使其盡可能多的覆寫所有的有效等價類,重復這一步驟,使得所有有效等價類 均被測驗用例覆寫到
3. 設計一個測驗用例,使其只覆寫一個無效等價類,重復這一步驟,使得所有無效等價類均被覆寫
04用例分析實戰
案例-需求
? 兩個整數加法計算器基本需求 第一個數和第二個數都是只能輸入-99到99之間的整數,且為必填項 對于輸入的小于-99的資料或者大于99的資料,程式應給出明確提示 對于輸入的小數、字符等非法資料,程式應給出明確提示

分析1:等價類串列

分析2:測驗用例

05設計方法-邊界值
邊界值分析法
? 邊界值分析法的理論基礎,是假設大多數的錯誤是發生在各種輸入條件的邊界上,如果在邊界上的取 值不會導致程式出錯,那邊其他的取值導致程式錯誤的可能性也很小,
? 是對等價類劃分法的一種補充,邊界值的分析基本思想:正好等于、剛剛大于、剛剛小于邊界的值作 為測驗資料,
? 使用場景:
1. 輸入條件明確了一個值的取值范圍,或是規定了值的個數
2. 輸入條件明確了一個有序集合
分析1:等價類+邊界值

分析2:測驗用例

文章首發于微信公眾號:程式員一凡,如果對你有幫助,記得點文末的在看,讓這么精彩的內容讓更多的朋友看到

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/288456.html
標籤:其他
下一篇:▓▓那些年那些新人捅的簍子▓▓
