最近一直在找工作,工作難找額。下週有乙個關於軟體測試開發的面試,可是筆者完全不懂任何和軟體測試有關的知識,索性現學現賣,網上下本書過來學習乙個。為了避免學習的枯燥以及低效化,僅對書中重要知識進行相關摘錄。這本書是ron patton著並且由機械工業出版社出版的《軟體測試》,個人覺得對於乙個新手是不錯的選擇,寫的還蠻簡明易懂的,雖然這本書有一定年份了,但是裡面的一些關於測試的概念並沒有過時。下面採用問答的形式來摘錄要點。q=問,a=答。
q1:軟體缺陷的定義?
a:符合下列5個規則才能叫做軟體缺陷:1.軟體未達到產品說明書的功能;2.軟體出現了產品說明書指明不會出現的錯誤;3.軟體功能超出產品說明書指明範圍;4.軟體未達到產品說明書雖未指出但應達到的目標;5.軟體測試員認為軟體難以理解、不宜使用、執行速度緩慢,或者終端使用者認為不好。
q2:軟體測試者的職責是什麼?
a:軟體測試員的目標是發現軟體缺陷。
q3:軟體開發幾種常見模式?
q4:什麼是黑盒測試和白盒測試?
a:黑盒測試當中軟體測試員只需要軟體要做什麼即可——而無法看到盒子中是如何運作的;在白盒測試(有時稱為開盒測試)中,軟體測試員可以訪問程式設計師的**,並通過檢查**來協助測試——可以看到盒子裡面。測試員根據**檢查結果判斷多大的數字可能出錯,並據此調整測試程式。
q5:靜態測試和動態測試?
a:靜態測試是指測試不執行的部分——知識檢查和審閱。動態測試是指通常意義上的測試——執行和使用軟體。
q6:什麼是行為測試(動態黑盒測試)?
a:不深入**細節的軟體測試方法稱為動態黑盒測試。測試工作就是進行輸入、接受輸出、檢查結果。動態黑盒測試常常成為行為測試,因為測試的是軟體在使用過程中的實際行為。
q7:什麼是測試案例?
a:測試案例是指進行實驗用的輸入,以及測試軟體用的程式。
q8:什麼是等價分配?
a:等價分配是指分步驟地把過多(無限)的測試案例減小到同樣有效的小範圍的過程,等價分配中根據邊界條件、次邊界條件、空值和無效資料來合理減少測試案例。
q9:什麼是重複、壓迫和重負測試?
a:重複測試是不斷執行同樣的操作,進行這種反覆測試的主要目的是看記憶體是否不足;壓迫測試是使軟體在不夠理想的條件下執行——記憶體小、磁碟空間少、cpu速度慢、調製解調速率低等等。觀察軟體對外部資源的要求和依賴的程度。壓迫測試就是將支援降低到最低限度,目的在於盡可能地限制軟體的必要條件;重負測試與壓迫測試相反,壓迫測試是盡量限制軟體,而重負測試是盡量提供條件任其發揮。
q10:什麼是結構分析(靜態白盒測試)?
a:靜態白盒測試是在不執行的條件下有條理地仔細審查軟體設計、體系結構和**,從而找出軟體缺陷的過程。有時稱為結構分析。
q11:什麼是結構測試(動態白盒測試)?
a:動態白盒測試是指利用檢視**功能和實現方式得到的資訊來確定哪些要測試,哪些不要測試,如何開展測試。動態白盒測試的另乙個常用名稱是結構測試,因為軟體測試員可以檢視並使用**的內部結構,從而設計和執行測試。
q12:什麼是單元和整合測試?
a:在底層進行的測試稱為單元測試或者模組測試。等到單元經過測試,底層軟體缺陷被找出來並修復之後,就整合在一起,對模組組進行整合測試。
q13:什麼是配置測試?
a:配置測試是指使用各種硬體來測試軟體操作的過程。
q14:什麼是軟體相容性測試?
a:相容性測試是指檢查軟體之間是否正確地互動和共享資訊。互動可以在同時執行於一台計算機上,甚至可以相隔幾千公里通過英特網的不同計算機上的兩個程式之間進行。互動還可以簡化為在軟盤上儲存資料,然後拿到其他房間的計算機上。
q15:什麼向前相容和向後相容
a:向後相容是指可以使用軟體的以前版本,向前相容是指可以使用軟體的未來版本。
q16:優秀的ui需要包含的常見要素?
a:符合標準和規範、靈活性、正確性、直觀性、舒適性、實用性和一致性。
q17:網頁需要測試的基本部分?
a:文字、圖形、鏈結以及少量表單。
q18:什麼是灰盒測試?
a:灰盒測試把黑盒測試和白盒測試的界限打亂了。仍然把軟體當做黑盒來測試,但是通過簡單檢視(不是完整檢視,像白盒測試那樣)軟體內部工作機制作為補充。
q19:測試工具和自動化測試的主要屬性?
a:速度、效率、準確度和精確度、堅持不懈。
q20:什麼是beta測試?
a:beta測試是一種讓他人驗證和證實軟體的常用方法。在該過程中,軟體分發給選定的潛在客戶群,他們在實際環境中使用軟體。beta測試一般在產品開發周期行將結束時進行,理想情況下只是準備向實際客戶發布的軟體。
q21:bug的生命週期?
修訂於2014/4/10 by野馬菌
軟體測試基礎概念
軟體測試基礎 1.1 軟體工程 軟體工程事一門研究如何用系統化 規範化 數量化等工程原則和方法去進行軟體開發和維護的學科。1.1.1 軟體工程的三要素 軟體工程包括3個要素 方法 工具和過程。1.1.2 軟體工程的基本原理 用生命週期計畫進行管理 堅持進行階段評審 嚴格管理需求變更 採用現代程式設計...
軟體測試基礎概念
軟體測試遵循的原則 1 測試證明缺陷的存在,但不能證明系統不存在缺陷 2 窮盡測試是不可能的,應設定及時設定終止的條件 3 軟體測試應該盡早進行 4 缺陷具備群集特性 5 測試的殺蟲劑悖論 測試用例和測試方法應該不定期的修改 6 測試的二八原則 重點測試 7 測試活動依賴於測試背景。軟體測試的分類 ...
軟體測試基礎概念
軟體測試基礎概念 軟體 程式 資料庫 文件 服務 定義 使用人工或自動手段來執行或測試某個系統的過程,目的在於檢驗其是否滿足規定的需要或是弄清楚預期結果與實際結果之間的差別 軟體需求說明書srs 軟體需求說明書的編制是為了使使用者和軟體開發者雙方對該軟體的初始規定有乙個共同的理解,使之成為整個開發工...