軟體測試基礎入門知識點

2022-06-02 04:54:09 字數 2098 閱讀 1867

​ 程式設計師之間流傳著這樣一句話:有人喜歡創造世界,他們做了開發工程師,有人喜歡挑毛病,所以他們做了測試工程師。

軟體測試就是利用手工或測試工具按照測試方案和流程對產品進行功能和效能測試,簡單的來說就是為軟體做「質檢」。

​ bug 的經濟損失:

​ 軟體 bug 對我們的生活,工作都會帶來毀滅性的破壞。據悉,每年的軟體 bug 會讓整個市場經濟帶來近600億美元的損失!

​ 是想以最少的人力,物力和時間找出軟體中潛在的各種錯誤與缺陷,通過修正各種錯誤和缺陷提高軟體質量,迴避軟體發布後由於潛在的軟體缺陷和錯誤造成的隱患以及帶來的商業風險。(注意這個問題的答案,經常會與軟體測試的定義混淆)

​ 使用人工和自動手段來執行或測試某個系統的過程,其目的在於檢驗它是否滿足規定的需求或是弄清預期結果與實際結果之間的差別。

應當把 「 盡早和不斷地測試 」 作為座右銘

測試工作應該由獨立的專業的軟體測試機構來完成

pareto 原則,測試發現的錯誤中80%很可能起源於20%的模組中

設計測試用例(測什麼?怎麼測?)時,應該考慮各種情況

對測試出的錯誤結果一定要有乙個確認的過程(描述缺陷報告)

制定嚴格的測試計畫

完全測試是不可能的,測試需要終止

注意回歸測試的關聯性

妥善儲存一切測試過程文件

​ 指修改了舊**後,重新進行測試以確認修改沒有引入新的錯誤或導致其他**產生錯誤。

​ 在軟體開發的幾十年實踐中,人們總結了很多軟體開發模型用來描述和表示乙個複雜的開發過程,如:瀑布模型、快速原型模型、螺旋模型。

​ 軟體測試與軟體的開發模式有著緊密的聯絡,作為一名測試人員,應該充分理解軟體的開發模式,以便找準自己在其中的位置,從而發揮自身的價值。

3.1.1、瀑布模型

缺點:改良

3.1.2、軟體測試 & 軟體工程3.2.1、v模型

概要設計

詳細設計

編碼單元測試

整合測試

系統測試

驗收測試

v模型的優缺點

v模型清楚地標識出了軟體開發的階段。

v模型採用自頂向下逐步求精的方式把整個開發過程分成不同的階段,每個階段的工作都很明確,因此便於控制開發過程。當所有的階段都完成之後,該軟體的開發過程也隨之結束。

缺點改良

3.2.2、w模型 (雙v模型)

缺點

黑盒測試的優點

黑盒測試的缺點

黑盒測試的分類

效能測試(performance testing) - 是軟體測試的高階領域,效能測試工程師的待遇和白盒測試工程師不相上下,通常我們所說的高階軟體測試工程師一般就是指效能測試或是白盒測試工程師

白盒測試(white-box testing)

灰盒測試

靜態測試(static testing)

動態測試(dynamic testing)

冒煙測試

隨機測試(探索測試)

驗收測試

β 測試

γ 測試

軟體正式版本推出之前的幾個版本,需要有人測試一下,看看是不是有問題。在開發該軟體的公司內部的由該公司內部人員測試的稱為:alpha測試。alpha測試主要看看有沒有功能缺失或系統錯誤,alpha測試完後一般不會有大問題了,然後把軟體拿給使用者測試,稱為:beta測試,主要是看使用者對軟體外觀、使用方便等的反應。這麼多的測試版本一方面為了最終產品盡可能地滿足使用者的需要,另一方面也儘量減少了軟體中的bug,然後做過一些修改,成為正式發布的候選版本時,叫做gamma(現在叫做rc-release candidate)。

簡單來說,alpha測試主要是測試人員在開發環境下的測試,beta測試是在實際環境中的測試,或者公司內部人員在模擬真實環境中的測試。

軟體測試知識點

基本要求 1.熟悉軟體質量 軟體測試及軟體質量保證的基礎知識 2.掌握 檢查 走查與評審的基本方法和技術 3.掌握白盒測試和黑盒測試的測試用例的設計原則和方法 4.掌握單元測試和整合測試的基本策略和方法 5.了解系統測試 效能測試和可靠性測試的基本概念和方法 6.了解物件導向軟體和web應用軟體測試...

軟體測試知識點

基本要求 1.熟悉軟體質量 軟體測試及軟體質量保證的基礎知識 2.掌握 檢查 走查與評審的基本方法和技術 3.掌握白盒測試和黑盒測試的測試用例的設計原則和方法 4.掌握單元測試和整合測試的基本策略和方法 5.了解系統測試 效能測試和可靠性測試的基本概念和方法 6.了解物件導向軟體和web應用軟體測試...

軟體測試相關知識點

按測試階段劃分 測試v模型 按測試實施的組織劃分 開發方測試 使用者測試 第三方測試 按測試方法 技術劃分 白盒 黑盒 灰盒 靜態 不執行 包括會議記錄,開發文件檢查等 動態 執行 手工 自動化 效能測試 相容性測試 易用性測試等等 黑盒測試 軟體測試人員不知道軟體內部是如何實現的,只知道實現的功能...