*****====自己學習過程中的總結,如有錯誤請及時指出!謝謝!**********==
1、測試人員參與需求評審、互動評審、視覺評審;理解需求,進行需求分析
2、測試負責人編寫測試計畫,分配測試任務,評估測試週期
3、測試人員整理互動or需求疑難點,確認異常場景or特殊情況下的互動細節,最好是能劃出新功能的資料流圖&流程圖
4、測試人員編寫測試點,轉化測試用例,評審測試點or測試用例
5、開發送測(提測)前,開發自行走查,產品視覺驗收,若有必要,測試可介入冒煙測試
6、送測(提測)階段,缺陷管理,發現bug,提交bug
7、博主這邊是分a1,a2,a3...階段,一般a1過新功能測試用例&主流程回歸,a2驗證bug&交叉測試&拓展測試,a3驗證bug&拓展測試
8、預發(灰髮)環境驗證
9、線上環境驗證
10、版本覆盤
1、是否有不正確或遺漏的功能?
2、在介面上,輸入是否能正確的接受?能否輸出正確的結果?
3、是否有資料結構錯誤或外部資訊(例如資料檔案)訪問錯誤?
4、效能上是否能夠滿足要求?
5、是否有初始化或終止性錯誤?
1.比較簡單,不需要了解程式內部的**及實現,因為與內部實現無關;
2.從使用者角度出發,能很容易的知道使用者會用到哪些功能,會遇到哪些問題;
3.基於軟體開發文件,所以也能知道軟體實現了文件中的哪些功能;
4.在做軟體自動化測試時較為方便。
1.不可能覆蓋所有的**,覆蓋率較低;
2.部分路徑不能測試到,不能測試程式中隱藏的錯誤;
3.自動化測試的復用性較低。
等價類、邊界值、因果圖、判定表、狀態遷移、正交實驗、場景法、錯誤推斷
1、回歸測試更方便,由於回歸測試的額動作和用例是完全設計好,測試結果也是可以預料的,將回歸測試自動執行,可以提高測試效率,縮短回歸測試時間
2、執行更多更繁瑣的測試
3、可以執行一些手工測試困難的測試,可以通過自動化測試模擬同時有大量使用者的測試
4、測試具有一致性和可重複性,每次測試的結果和執行的內容的一致性可以得到保障,達到測試的可重複的效果
5、測試的復用性,實現在不同的測試過程中使用相同的用例
6、測試的執行可靠性,按指令碼執行,後續定位復現有明確的路徑可循
7、資源利用率高,人力成本低
8、基本的、邏輯性不強的操作,效能測試、壓力測試、回歸測試,自動化測試很大優勢
1、手工測試比自動測試發現的缺陷更多
2、對測試的依賴性大
3、只適合回歸測試
4、手工測試編寫時間少於測試指令碼編寫時間
5、手工測試可以靠人的想象力去測試, 而工具是死的
6、自動化測試可能會制約軟體開發,指令碼維護會受到限制,從而制約軟體的開發
總結:自動化測試是對手工測試的一種補充,自動化測試不可能完全替代手工測試,因為很多資料的正確性、介面是否美觀、業務邏輯的滿足程度等都離不開測試人員的人工判斷
1、安裝、解除安裝 apk上安裝與解除安裝,在工具上可以安裝解除安裝
2、相容性測試 系統版本,安卓版本,尺寸
3、異常測試 斷網、斷電、伺服器異常情況下,客戶端是否正常處理
5、易用性測試 操作簡單,符合使用者使用習慣
7、功能測試 檢驗功能是否符合需求,涉及到ui層,介面,資料,服務端,**邏輯等。
8、穩定性測試 通過monkey:命令列工具,對正在開發的應用程式進行壓測,向系統傳送偽隨機的使用者事件流(按鍵輸入、觸屏輸入、手勢輸入)進行壓測
9、安全測試 是否容易被外界破解,是否存在被惡意**注入的風險
10、效能測試 應用測試、rom測試、客戶端執行時裝置的cpu、gpu、流量、耗電量,響應時間
12、外網場景測試 不同網路場景,wifi、3g、4g、電信、移動、聯通、弱網場景,通過fiddler
13、中斷測試(**接入、來簡訊、電量不足提示燈外部事件)
web效能測試
響應時間...
加上:流量、電量、cpu、gpu、記憶體...
相容測試
不同瀏覽器和瀏覽器版本
加上:手機的尺寸、解析度、系統版本、安卓版本
交叉事件測試
在操作某個軟體的時候,來**、來簡訊,電量不足提示等外部事件
操作型別測試
橫屏測試,手勢測試
冒煙測試:新版本驗證測試,主要確認新的版本是否存在致命性bug,功能可以正常執行,不會影響下一輪測試,不要求覆蓋面有多廣,但是要保證被測物件的主功能點得到測試,還要保證所有被修改過以及修改相關的功能都是可用的,若都通過則可以進行系統測試
回歸測試:是軟體維護階段對軟體修改後進行的測試,指修改了舊**後,重新進行測試以確認修改沒有引入新的錯誤或導致其他**產生錯誤
動態測試:通過執行被測程式,檢查執行結果與預期結果的差異,通常使用白盒和黑盒測試從不同的角度設計測試用例來查詢**中的錯誤
關鍵字:不執行,文件,**
執行,結果差異,黑盒白盒
α測試:是由乙個使用者在開發環境下進行的測試,也可以是公司內部的使用者在模擬實際操作環境下進行的測試。目的是評價軟體產品的furps(即功能、可使用性、可靠性、效能和支援)
β測試:是軟體的多個使用者在乙個或多個使用者的實際使用環境下進行的測試。開發者通常不在測試現場,beta測試不能由程式設計師或測試員完成。(文件,客戶培訓,產品支援,可支援性)
λ測試:是第三個階段,此時產品已經相當成熟,只需在個別地方再做進一步的優化處理即可上市發行
效能測試:為了獲得系統在某種特定的條件下(包括特定的負載條件下)的效能指標資料
負載測試:模擬實際軟體系統所承受的負載條件的系統負荷,通過不斷載入(逐漸增加模擬使用者的數量)或其他載入方式來觀察不同負載下系統的響應時間和資料吞吐量、系統占用的資源(如cpu、記憶體),以檢驗系統的行為和特性,以發現系統可能存在的效能瓶頸、記憶體洩漏、不能實時同步等問題。負載測試更多地體現 了一種方法或一種技術
壓力測試:在強負載(大資料量、大量併發使用者等)下的測試,檢視應用系統在峰值使用情況下操作行為,從而有效地發現系統的某項功能隱患、系統是否具有良好的容錯能力和可恢復能力。壓力測試分為高負載下的長時間的穩定性壓力測試和極限負載情況下導致系統崩潰的破壞性壓力測試
測試需求中是否存在邏輯矛盾以及需求在技術上是否可以實現
關鍵字:測試需求,邏輯矛盾,技術實現
測試設計是否符合全部需求以及設計是否合理
關鍵字:測試設計,符合需求,是否合理
軟體測試面試常見問題(二)
1 階段評審與同行評審的區別?同行評審目的 發現小規模工作產品的錯誤,只要是找錯誤 階段評審目的 評審模組 階段作品的正確性 可行性 及完整性 同行評審人數 3 7人 人員必須經過同行評審會議的培訓,由sqa指導 階段評審人數 5人左右 評審人必須是專家 具有系統評審資格 同行評審內容 內容小 一般...
前端的常見面試題 基礎篇
原型prototype 原型鏈 proto constructor建構函式 物件原型 proto 和建構函式 prototype 原型物件裡面都有乙個屬性 constructor 屬性 constructor 我們稱為建構函式,因為它指回建構函式本身。constructor 主要用於記錄該物件引用於...
面試攻略 C 面試基礎篇
基礎篇 1.const 和 const的區別 如果const修飾在 p前則不能改的是 p,而不是指p 如果const是直接寫在p前,則p不能改 舉個栗子 int i1 30 int i2 40 const int p i1 p前並沒有用const修飾,所以p是指標變數。能被賦值重新指向另乙個記憶體位...