測試工程師知識點

  測試工程師,軟體質量的把關者,工作起點高,發展空間大。那麼測試工程師考試需要掌握哪些知識點呢?下面是小編為大家整理的關於測試工程師考試需要掌握的相關知識點歸納總結,希望對你們有幫助。

  總結

  1、軟體質量保證:標準、規範、體系、實施

  2、軟體基礎測試***軟體開發過程,軟體的質量保證,理解軟體測試,測試分類***;軟體測試過程***軟體測試計劃,軟體測試設計,軟體測試執行***;軟體愛你測試工具***功能測試工具,效能測試工具***

  3、軟體的定義:略。

  4、軟體的分類:系統軟體、應用軟體、Web應用軟體、工程和科學軟體、嵌入式軟體、產品線軟體、人工智慧軟體

  5、 軟體危機的產生原因:客觀:軟體本身特點***邏輯部件,規模龐大***;主觀:不正確的

  開發方法***忽視需求分析,軟體開發=程式編寫,輕視軟體維護***

  6、軟體危機的解決途徑:組織管理***工程專案管理方法***;技術措施***軟體開發技術與方法,軟體工具***

  7、軟體工程是一彙總層次化的技術

  8、軟體工程三要素:方法、工具、過程

  9、軟體質量保證的目的***SQA***:使軟體過程對於管理人員來說是可見的

  10、全面質量管理TMQ的核心思想:全員性***全員參與質量管理***;全過程性***管理好質量形成的全過程***;全面性***管理好質量涉及到的各個要素***

  11、軟體質量保證的目標:以獨立審查的方式,從第三方的角度監控軟體開發任務的執行

  12、軟體質量保證向管理者提供對軟體過程進行全面監控的手段,使軟體過程對於管理人員來說是可見的

  13、軟體質量保證的策略:以檢測為重,以過程管理為重,以新產品開發為重

  14、軟體質量保證的主要任務:SQA審計評審,SQA報告,處理不符合問題

  15、軟體測試的定義:軟體測試是為了發現錯誤而執行程式的過程

  16、強調:測試、測試用例、測試步驟

  17、軟體的生命週期:制定計劃、需求分析定義、軟體設計、程式編碼、軟體測試、軟體執行、軟體維護、軟體停用

  18、軟體測試技術分類:是否執行***靜態測試,動態測試***;用力的設計方法***黑盒測試,白盒測試***;是否採用面向物件技術***傳統測試,面向物件測試***

  19、軟體測試模型:V、W、H、X、前置模型

  20、V模型:特點:瀑布模型的變種,反映了測試活動與分析和設計的關係,測試策略包括底層測試和高層測試;侷限性:主要針對程式進行測試尋找錯誤,而需求分析、系統設計階段隱藏的問題一直到後期的系統測試,驗收測試才被發現,把測試的過程作為在需求分析、概要設計、詳細設計及編碼之後的一個階段

  21、W模型:特點:W模型由兩個V字模型做成,分別代表測試與開發過程,W模型強調,測試伴隨著整個軟體開發週期,而且測試的物件不僅僅是程式,需求、功能和設計同樣要測試,測試與開發室同步進行的,測試與開發室同步進行的,有利於今早的發現問題;侷限性:把軟體的開發視為需求、設計、編碼等一系列的序列活動,軟體開發和測試保持一種線性的前後關係,需要有嚴格的指令表示上一個階段完全結束,才可以正式開始下一個階段,無法支援迭代開發模型

  22、H模型:特點:H模型將測試活動完全獨立出來,形成一個完全獨立的流程,貫穿於整個產品週期,與其他流程併發的進行,儘早準備,儘早執行,測試準備階段與測試執行分離,有利於資源調配、減低成本,提高效率,充分體現測試過程的複雜性。

  23、X模型:特點:X模型的左邊描述的是針對單獨程式片段所進行的相互分離的編碼和測試,此後,將進行頻繁的交換,通過整合最終合成為可執行的程式,W模型還定位了探索性測試,這是不進行是先計劃的特殊型別的測試,這一方式往往能幫助有經驗的測試人員在測試計劃之外發現更多的軟體錯誤;侷限性:提出了測試設計,卻沒有指出在軟體測試的各個階段都應該進行測試設計,過於關注低級別即程式級別的行為,而沒有抽象成一個系統的模型,可能對測試造成人力、物力和財力的浪費,對測試人員的熟練程度要求比較高。

  24、前置模型:特點:前置測試模型是將測試和開發緊密結合的模型,開發和測試相結合,對每一個交付內容進行測試,讓驗收、測試和技術測試保持相互獨立,反覆交替的開發和測試,引入新的測試理念。

  25、測試模型的比較:

  V模型:強調整個軟體專案開發需要經歷若干個測試級別,與開發階段對應,沒有指出對需求、設計進行測試

  W模型:強調測試計劃等工作的先行和對需求和設計的測試,沒有專門針對測試流程予以說明

  H模型:表現了測試是獨立的,每對一個測試細節都有一個獨立的操作流程,只要測試前提具備,就可測試

  X模型:提出了測試設計,沒有指出在軟體測試各個階段都應進行測試設計

  前置模型:前置測試模型將開發和測試的生命週期整合在一起,伴隨專案開發生命週期每個關鍵行為

  26、軟體測試策略:在一定的的軟體測試標準、測試規範的指導下,依據測試專案的特定環境約束而規定的軟體測試的原則、方式、方法的集合

  27、軟體測試規範:規範是對專案軟體的一份指導性檔案,對軟體測試過程中所涉及到的測試理論、測試型別、測試方法、測試標準、測試流程以及軟體產品開發單位所承擔的職責進行總體規範,以有效保證軟體產品的質量

  28、一般從一下的軟體測試過程進行規範:測試計劃,主要測試需求分析;測試設計,依據測試需求,分析並選擇測試用例,獲取資料、進行批判;測試執行:執行測試,進行判斷;測試總結:整理、分析護具、效果分析

  29、測試文件內容:測試計劃,測試說明,測試報告

  30、測試計劃:測試計劃描述測試活動的範圍、方法、資源和進度。它規定被測試的項、被測試的特性、應完成的測試任務、擔任各項工作的人員職責以及與本計劃有關的風險等

  31、測試說明:測試設計說明,測試用例說明,測試規程說明

  32、測試報告:測試項傳遞報告,測試日誌,測試時間報告,測試總結報告

  34、CMM軟體能力成熟度模型

  35、CMMI能力成熟度整合模型

  36、軟體測試的分類:

  是否被執行:靜態測試,動態測試

  是否關注軟體結構:白盒測試,黑盒測試

  基於測試的不同階段:單元測試,整合測試,系統測試,驗收測試,迴歸測試,Alpha測試,Beta測試

  37、靜態測試:不執行程式程式碼而尋找程式碼中可能存在的錯誤或評估程式程式碼的過程

  38、靜態測試的特點:靜態測試不必動態的執行程式,也就是不必進行測試用例設計和結果判讀等工作;靜態測試可以由人手工方式進行,充分發揮人的優勢,行之有效;靜態測試實施不需要特別的條件,容易展開

  39、靜態測試技術:人工完成***程式碼審查,程式碼走查,桌面檢查,技術評審***;由軟體工具自動進行***靜態結構分析***;程式碼質量度量

  40、程式碼審查:工作步驟***預先作一定的準備工作,然後舉行會議進行討論***,程式碼審查的內容***檢查程式碼對標準的遵循、可讀性,檢查程式碼和設計的一致性,檢查程式碼的邏輯表達的正確性,檢查程式碼結構的合理性***,程式碼審查組***通常由四人組成,其中一人為組長,根據測試的組織方式不同,程式碼審查小組組成可以調節,但組長角色不能改動***,程式碼審查的步驟***準備,程式閱讀,審查會,跟蹤及報告***

  41、程式碼走查:程式碼走查的過程***與程式碼審查過程相似,先把材料交給每個小組成員,讓他們認真研究程式,然後再召開程式碼走查會***,程式碼走查會議的內容***用測試用例沿程式邏輯走一遍,並由測試人員講述程式執行過程,在紙上或黑板上見識程式狀態***,程式碼走查組***程式碼走查組以小組方式進行,程式碼走查組包括組長、祕書、測試人員、設計人員***,測試用例在程式碼走查中的作用***程式碼走查中,測試用例並不是關鍵,測試用例是作為換衣程式邏輯錯誤與計算錯誤的啟發點***,缺點***程式碼走查使用測試用例啟發檢測錯誤,人們注意力會相對集中在隨測試用例遊歷的程式邏輯路徑上,不如程式碼審查檢查的範圍廣,錯誤覆蓋全面***

  42、桌面檢查:缺點***第一,由於心理上的原因,容易對自己的程式的偏愛,沒有發現錯誤的慾望。第二,由於人的思維定勢,有些習慣性的錯誤自己不易發現,第三,如果根本對功能理解錯了,自己不易糾正***

  43、技術評審:綜合運用走查和審查技術,逐頁、逐節地檢查軟體開發前期需求分析和設計的文件,對軟體的需求,設計結構等方面提出問題

  44、靜態結構分析:***1***檢查函式的呼叫關係是否正確***2***是否存在孤立的函式沒有被呼叫***3***明確函式被呼叫的頻繁度,對呼叫頻繁的函式可以重點檢查

  45、程式碼質量度量:Line複雜度***以程式碼的行數作為計算的基準***,Helstead複雜度***以程式中使用到的運算子與運算元數量作為技術目標***,McCabe複雜度***實質上是對程式拓撲結構的複雜性的度量***

  46、靜態測試的內容:需求定義、測試文件、原始碼的靜態測試

  47、動態測試的步驟:單元測試***對軟體中的基本組成單位進行測試,檢查基本組成單位的正確性***,整合測試***在軟體系統整合過程中所進行的測試,檢查單位之間結構是否準確***,系統測試***對已經整合好的軟體系統進行徹底的測試,以驗證軟體系統的正確性和效能等是否滿足規定***,驗收測試***軟體投入使用之前的最後測試***,迴歸測試***軟體的維護階段***

  48、黑盒測試:黑盒測試也稱功能測試或資料驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用

  49、黑盒測試測用於發現:是否有不正確或遺漏了的功能;在介面上,能否正確地接受輸入資料,能否正常的產生輸出資訊;訪問外部資訊是否有錯;效能上是否滿足要求;介面是否錯誤,是否不美觀;初始化或終止錯誤58、人工測試的優點:測試用例的設計,測試人員的經驗和對錯誤的判斷能力是自動化測試不可替代的;介面和使用者體驗測試,人類的介面稽核和心理體驗是自動化測試不可模擬的;正確定的檢查,人們對是非的判斷、邏輯推理能力是自動化測試不具備的;測試過程中的靈活變動,人工可以很據需求進行變動,調解;支援不同場景測試,測試過程在複雜的場景下進行測試;手工測試可以完成所有的測試

  59、人工測試的缺點:迴歸測試的工作量較大;壓力測試、效能測試效果比較差;人為因素比較大

  60、自動化測試:使用自動化測試工具來模擬手動測試步驟

  61、自動化測試的優點:對程式的迴歸測試更方便;可以運用更多更繁瑣的測試;可以執行一些人工測試不可能執行的測試;更好的利用資源;測試具有一致性和可重複性;增加軟體信任度

  50、黑盒測試的兩種基本方法:通過測試,失敗測試

  51、黑盒測試的優點:比較簡單,不需要了解程式內部的程式碼及實現;與軟體的內部實現無關;從使用者角度出發,能很容易的知道使用者會用到哪些功能,會遇到哪些問題;基於軟體開發文件,所以也能知道軟體實現了文件中的那些功能;在做軟體自動化測試時較為方便

  52、黑盒測試的缺點:不可能覆蓋所有程式碼,覆蓋率較低,大約30%;自動化測試的複用性較低

  53、白盒測試:基於程式碼的測試

  54、白盒測試的優點:更易於定位錯誤的原因和具體的位置

  55、白盒測試的缺點:不能檢出程式中的設計缺陷;不能檢查是否遺漏了功能;發現不了一些與資料相關的錯誤

  56、白盒測試的分類:靜態白盒測試,動態白盒測試

  57、人工測試:由人工按照事先對需求要分析文件而寫好的測試用例一個一個的輸入執行,然後觀察結果,檢測是否對應