您好,登錄后才能下訂單哦!
題設:給定一個帶通配符問號的數W,問號可以代表任意一個一位數字。再給定一個整數X,和W具有同樣的長度。問有多少個整數符合W的形式并且比X大?其中輸入格式:為多組數據,每組數據兩行,第一行輸入W,第二行輸入X,它們長度相同,且在[1..10]之間。輸出格式:每行一個整數表示結果。
測試如此需求描述,如何思考?如何分析?如何設計?如何測試?
測試過程的PDCA如何實現?測試個人能力的PDCA曲線如何完成?
以小見大,淺析軟件測試過程。
需求描述是什么?
把復雜的問題簡單化:比較兩個數的大小。
用自己的語言描述問題:
1、輸入多組W、X數據,第組數據兩行,第一行W,第二行X
2、W、X兩個位數相同(10位以內)的整數
3、W帶有通配符:?
4、輸出W>X的個數,每行一個整數結果
有問題嗎?
1、W中的通配符“?”個數有限制嗎?
2、控制臺的命令行行式實現?還是圖形化界面?
3、……(更多的問題)
測試過程實現
測試分析
1、核心問題是什么?
比較輸入數據的大小 -- 如何將復雜的問題簡單化?如何抓住對象問題的核心?
2、開發實現猜想(構建自己的原型)
1)命令行:輸入數據-->邏輯處理-->輸出結果
2)圖形化:界面設計-->輸入數據-->邏輯處理-->輸出結果
3)邏輯處理:按位比較大小并判斷個數?
4)面向過程?面向對像?
3、哪里會出錯?
1)數據與數據交互模塊:輸入、輸出(可以統通為接口:內部或外部)
2)數據邏輯處理模塊
4、為什么會出錯?
1)數據格式處理異常
2)核心邏輯處理缺陷
5、會出什么樣的問題
1)直接問題:輸出結果不正確
2)間接問題:問題處理的效率
6、測試分析輸出
1)需求核心描述
2)需求限定條件
3)假想問題列表
測試設計
1、測試的優先級
1)核心邏輯處理
2)處理過程限定
3)最終實現形式
2、邏輯處理(測試假想)
1)判斷W輸入的正確性、有效性 -- 1
2)判斷X輸入的正確性、有效性 -- 1
3)比較W和X:>、=、<(大于、等于、小于)-- 2
4)輸出最終結果
3、測試方法
1)黑盒測試:輸入數據,查看結果
2)白盒測試:核心邏輯,處理效率
3)灰盒測試:經常用到的,集成了白盒與黑盒測試的特點,增加測試覆蓋率,提高測試效率和效果
4、測試數據描述
方法:等價類、邊界值......
| 全是數字 | 全是“?” | 不全為“?” | 第1位 | 數字 、?、其它字符組合 | 數字取值范圍 | 0~9999999999 | |||
| 第1位是? | 第1位不是? | 0 | 非0 | 每位取值范圍 | 0~9 | ||||
W | N/A | y | y | y | N/A | y | N/A | |||
X | y | N/A | N/A | N/A | N/A | y | N/A | |||
y:適用;N/A不適用 |
5、完善測試設計(測試設計評審過程)
1)發現差異:開發者與實現者的溝通,發現理想與現實的差異
2)充實設計:發現差異,充實測試設計,彌補測試設計缺陷
6、測試設計輸出
1)測試計劃:明確描述測試實現的6W1H
2)測試用例
測試實現
1、測試執行
1)執行測試設計輸出,記錄測試過程
2)提交問題、跟蹤問題、驗證問題修改
3)驗證并實現測試目標
2、測試總結與回顧
1)需求分析理解
2)測試設計盲點
3)測試效果滿意度:測試目標達成度、干系人滿意度
軟件測試需要不斷的實踐、總結、思考。
軟件測試是門藝術,是個過程,是門科學。
注:1、PDCA:
1)P (plan) 計劃,確認方針和目標,制定方法和規則。
2)D (Do) 執行,根據計劃,執行計劃,實現計劃目標。
3)C (check) 檢查,分析和總結計劃執行的結果,確認效果,發現問題,明析問題。
4)A (action) 處理,問題的改進與處理,標準化先進成果,更正和改進不足,提出下輪PDCA循環。
2、6W1H:
1)Who—責任人?
2)For whom—干系人?(關鍵人、合作者)
3)Why—對像的詳盡描述?(需求的分析、理解)
4)What—目標是什么?(時間、成本、范圍、質量)
5)Where—從哪里來到哪里去,環境如何?
6)When—關鍵時間限制?(關鍵節點時間計劃)
7)How—如何設計、執行、實現?(過程計劃,問題和風險)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。