1. 指南針測試法:該方法要求測試人員嚴格遵守文檔、用戶需求或說明書來盡職盡責,非常忠實的測試每一個特性。這是最基本的的測試方法,也是我們平時測試的時候最易用到的方法。
2. 極限測試法:向軟件提出很多難以回答的問題,即找麻煩測試法,讓軟件性能達到最大極限、輸入或者計算量達到設計的最大能力,此時可能會出現一些crash等異常情況。要創建用戶確實會用到的場景,比如P圖中使用自拍相機連拍、使用最大保存分辨率保存、不斷快速切換前后攝像頭拍照等操作。
3. 快遞測試法: 數據就像快遞包裹在軟件中不斷流動,從數據輸入開始、到存儲在內存中、然后可能會被計算修改后最后輸出傳遞給用戶,達到目的地。測試人員要參與數據生命周期的每個階段。
4. 出租車測試法:測試人員需要和出租車司機一樣熟悉到達指定位置的每條可能的路徑。比如P圖中素材中心使用,要考慮多路徑進入情況,點擊首頁icon進入、素材中心點擊某個素材進入、push鏈接帶着某個素材跳轉進入等情況。
5. 出租車禁區測試法:用戶無論使用哪一條路徑都無法達到目的地。
6. 遍歷測試法: 選定一個目標類,然后用可以發現的最短路徑來訪問該目標類所包含的所有對象。有計划的進行抽查。
7.超模測試法:要求測試人員關心表面的東西,也就是關注測試界面。如P圖中不同大小屏幕手機/不同語言環境下,在一些UI展示方面的區別、進入不同頁面時,圖片展示情況、不同路徑進入/退出某個界面是否有異常(單圖保存/多圖保存后,底部p圖曬圖bar出現等)。
8.懶漢測試法:測試人員沒有做很多事情不意味着軟件也不做事情。接受默認值、保持輸入字段繼續為空,在表單中盡可能少填數據,在進入下一個界面不點擊任何按鈕或輸入數據。
9.取消測試法:啟動操作然后停止它。
10.破壞測試法:測試者要掌握某些操作成功需要的資源,從破壞應用程序的角度,如強制軟件做一些操作,在不同程度上刪除或者限制程序正常使用所需的資源。如P圖中拍照后退后台刪除原圖、破壞加載的圖片或者素材等。
11. 地標測試法:把軟件的某些特性定為關鍵點,確定起點和終點,執行程序從一個地標跳躍到另一個地標,探索應用程序,直到訪問了所有的目標地標。可以探索性的設置不同的起始地標、改變地標訪問順序、反復設置並增加新的地標來創造更多的測試場景。
12.深巷測試法:軟件最不可能被用到或最不吸引用戶的特性。
13.強迫症測試法:反復進行同樣的操作或者反復輸入同樣的數據,由於性能不足、惡意使用或者用戶重復提交同一請求等。比如P圖中重復進入退出某個界面、相機界面重復進入后取消退出等、下載中途點擊取消重復操作。
14.放大縮小測試法:放大或者縮小圖片、窗口等,可能或導致圖片、界面異常;按鈕遮蓋等情況發生。
15.移動測試法:移動拖拽圖片、控件至界面任意位置,可能會有不可預知的錯誤
16.惡鄰測試法:需求和功能特性耦合的地方最容易出現bug,找到那些缺陷數目較多的功能特性,把這些產品特性連接起來,最好能形成文檔,后續對鄰近功能特性進行重點測試。比如P圖中人臉選擇,美容進美妝、變妝去美妝等情況,很多地方人臉選擇需要記憶,用戶重新選擇人臉、中途切換人臉、保存/取消/切換人臉等操作數據會耦合共享;再比如一鍵美容、一鍵美妝和單項美容美妝之間的效果是疊加或者獨立的。
1.測試用例設計原則
測試用例包含幾個基本要素:用例編號、輸入數據、期望結果及前置條件等。
1.測試用例的代表性
2.測試結果的可判定性
3.測試結果的可再現性
2.探索性測試
探索性測試完全拋開測試用例,使用定義的比較籠統的測試用例。
強調測試者的主觀能動性,以及測試設計和測試執行的同時性。
包含4種方法:自由式探索、基於場景的探索式測試、基於策略的探索性測試、基於反饋的探索性測試
3.Base64編碼
Base64是一種基於64個可打印字符來表示二進制數據的方法,常用於處理文本數據的場合,表示、傳輸、存儲一些二進制數據。在Base64中的字符包括:A-Z,a-z,0-9,+,/
4.手工測試
軟件缺陷的根源:來自軟件開發本身
兩種缺陷:程序員引入的缺陷、運行環境導致的缺陷
5.編輯有效、無效的功能
2. 點擊操作欄【編輯】按鈕 3. 編輯無效的xx 3.1. 不填寫任何字段,點擊確認 3.2. 不填寫必填字段,點擊確認 3.3. 留空任意一個必填字段,點擊確認 3.4. 填寫的字段不符合格式(如非法字段),點擊確認 3.5. 填寫的內容過長或過短,點擊確認 |
2. 能正常跳轉到xx頁 3. 3.1. 必填字段提示不能為空 3.2. 必填字段提示不能為空 3.3. 能對留空的必填字段進行提示 3.4. 能友好對信息進行提示 3.5. 能正常截斷或友好進行提示 |
2. 點擊操作欄【編輯】按鈕 3. 編輯有效的xx 3.1. 輸入全部字段,點擊確認 3.2. 輸入必填字段,點擊確認 3.3. 輸入必填字段,清空所有的非必填字段,點擊確認 |
2. 能正常跳轉到編輯頁 3. 3.1. 能有效的xx 3.2. 能有效的編輯xx 3.3. 能有效的編輯xx,且能有效的清空所有的非必填字段 |
6.輸入框有效、無效查詢
2. 輸入無效的信息進行查詢 2.1.輸入框輸入空格+信息+空格,點擊查詢 2.2.輸入框輸入為空,點擊查詢 2.3.輸入框輸入信息超過一定的長度,點擊查詢 2.4.輸入框輸入信息,多次點擊查詢按鈕 2.5.輸入框輸入JS標記信息等信息,(比如<script>alert('aa');</script> ),點擊查詢按鈕 2.6.輸入框復制、粘貼 2.7.點擊下拉框,不選擇任何數據,直接點擊確認,點擊查詢 2.8.點擊下拉框,選擇某一個數據,點擊確認,然后點擊查詢 |
2. 2.1. 列表結果能被友好進行搜索並查詢結果友好展示 2.2. 列表搜索結果能被友好進行展示 2.3. 查詢條件能被友好提示,超過長度限制 2.4. 列表搜索結果只展示一次查詢內容 2.5. 列表搜索結果能友好進行展示 2.6. 輸入框能被友好進行復制、粘貼 2.7. 下拉框內不顯示任何其他數據 2.8. 下拉框能被友好顯示,且列表查詢結果顯示對應字段的內容 |
7.翻頁功能
2. 輸入不同的情況進行翻頁查看 2.1.點擊首頁、上一頁、下一頁、尾頁、指定跳轉頁 2.2. 無數據時查看翻頁 2.3. 首頁時,點擊上一頁 2.4. 尾頁時,點擊下一頁 2.5. 翻頁后,列表數據排序 2.6. 中間頁,勾選列表數據 2.7. 指定頁面顯示條數翻頁 2.8. 輸入非法字符(比如0、負數、字符串、中文、特殊字符%) |
2. 2.1.能友好跳轉到對應頁面 2.2.不顯示翻頁功能 2.3. 不能進行點擊上一頁,且可以點擊其他頁 2.4. 不能點擊下一頁,且可以點擊其他按鈕 2.5. 翻頁后,列表數據能友好進行提示 2.6. 勾選列表數據,能友好勾選前后翻頁選擇的數據 2.7. 能友好顯示指定翻頁條數 2.8. 能友好提示,不產生異常 |