軟體測試經典面試題(3)

TestingGDR發表於2018-11-01

引用與指標有什麼區別?


1) 引用必須被初始化,指標不必。
2) 引用初始化以後不能被改變,指標可以改變所指的物件。
3) 不存在指向空值的引用,但是存在指向空值的指標。

Internet.採用哪種網路協議?該協議的主要層次結構?Internet.實體地址和IP.地址轉換採用什麼協議?

 TCP/IP協議主要層次結構為: 應用層/傳輸層/網路層/數鏈路層。

ARP (Address Resolution Protocol)(地據址解析協議)

說說你對整合測試中自頂向下整合和自底向上整合兩個策略的理解,要談出它們各自的優缺點和主要適應於哪種型別測試

1、自頂向下整合

優點:較早地驗證了主要控制和判斷點;按深度優先可以首先實現和驗證一個完整的軟體功能;功能較早證實,帶來信心;只需一個驅動,減少驅動器開發的費用;支援故障隔離。

缺點:柱的開發量大;底層驗證被推遲;底層元件測試不充分。

適應於產品控制結構比較清晰和穩定;高層介面變化較小;底層介面未定義或經常可能被修改;產口控制元件具有較大的技術風險,需要儘早被驗證;希望儘早能看到產品的系統功能行為。

2、自底向上整合

優點:對底層元件行為較早驗證;工作最初可以並行整合,比自頂向下效率高;減少了樁的工作量;支援故障隔離。

缺點:驅動的開發工作量大;對高層的驗證被推遲,設計上的錯誤不能被及時發現。
適應於底層介面比較穩定;高層介面變化比較頻繁;底層元件較早被完成。

系統測試的策略有很多種的,有效能測試、負載測試、強度測試、易用性測試、安全測試、配置測試、安裝測試、文件測試、故障恢復測試、使用者介面測試、恢復測試、分佈測試、可用性測試。

設計系統測試計劃需要參考的專案文件有軟體測試計劃、軟體需求工件、和迭代計劃

通過畫因果圖來寫測試用例的步驟為....及把因果圖轉換為狀態圖共五個步驟。 

利用因果圖生成測試用例的基本步驟是:

§ 分析軟體規格說明描述中,哪些是原因(即輸入條件或輸入條件的等價類),哪些是結果(即輸出條件),並給每個原因和結果賦予一個識別符號。

§ 分析軟體規格說明描述中的語義,找出原因與結果之間,原因與原因之間對應的是什麼關係? 根據這些關係,畫出因果圖。

§ 由於語法或環境限制,有些原因與原因之間,原因與結果之間的組合情況不可能出現。為表明這些特殊情況,在因果圖上用一些記號標明約束或限制條件。 § 把因果圖轉換成判定表。

§ 把判定表的每一列拿出來作為依據,設計測試用例。

請說出這些測試最好由那些人員完成,測試的是什麼?

程式碼、函式級測試一般由白盒測試人員完成,他們針對每段程式碼或函式進行正確性檢驗,檢查其是否正確的實現了規定的功能。

模組、元件級測試主要依據是程式結構設計測試模組間的整合和呼叫關係,一般由測試人員完成。

系統測試在於模組測試與單元測試的基礎上進行測試。瞭解系統功能與效能,根據測試用例進行全面的測試。

設計測試用例時應該考慮哪些方面,即不同的測試用例針對那些方面進行測試?

設計測試用例時需要注意的是,除了對整體流程及功能注意外,還要注意強度測試、效能測試、壓力測試、邊界值測試、穩定性測試、安全性測試等多方面。(測試用例需要考慮的四個基本要素是輸入、輸出、操作和測試環境;另外,測試用例需要考慮的是測試型別(功能、效能、安全……),這部分可以參照TP做答。此外,還需要考慮用例的重要性和優先順序)

在windows.下儲存一個文字檔案時會彈出儲存對話方塊,如果為檔名建立測試用例,等價類應該怎樣劃分?

單位元組,如A;雙位元組, AA、我我;特殊字元 /‘。‘;、=-等;保留字,如com;檔案格式為8.3格式的;檔名格式為非8.3格式的;/,,*等九個特殊字元。

假設有一個文字框要求輸入10.個字元的郵政編碼,對於該文字框應該怎樣劃分等價類?

特殊字元,如10個*或¥;英文字母,如ABCDefghik;小於十個字元,如123;大於十個字元,如11111111111;數字和其他混合,如123AAAAAAA;空字元;保留字元

軟體測試專案從什麼時候開始,?為什麼? 軟體測試應該在需求分析階段就介入,因為測試的物件不僅僅是程式編碼,應該對軟體開發過程中產生的所有產品都測試,並且軟體缺陷存在放大趨勢.缺陷發現的越晚,修復它所花費的成本就越大.

什麼是迴歸測試?

迴歸測試: (regression testing): 迴歸測試有兩類:用例迴歸和錯誤迴歸;用例迴歸是過一段時間以後再回頭對以前使用過的用例在重新進行測試,看看會重新發現問題。錯誤迴歸,就是在新版本中,對以前版本中出現並修復的缺陷進行再次驗證,並以缺陷為核心,對相關修改的部分進行測試的方法。

單元測試、整合測試、系統測試的側重點是什麼? 
單元測試針對的是軟體設計的最小單元--程式模組(程式導向中是函式、過程;物件導向中是類。),進行正確性檢驗的測試工作,在於發現每個程式模組內部可能存在的差錯.一般有兩個步驟:人工靜態檢查\動態執行跟蹤
整合測試針對的是通過了單元測試的各個模組所整合起來的元件進行檢驗,其主要內容是各個單元模組之間的介面,以及各個模組整合後所實現的功能.
系統測試針對的是整合好的軟體系統,作為整個計算機系統的一個元素,與計算機硬體\外設\某些支援軟體\資料和人員等其他系統元素結合在一起,要在實際的執行環境中,對計算機系統進行一系列的整合測試和確認測試.

一個測試工程師應具備那些素質?

1、責任心

2、溝通能力

3、團隊合作精神

4、耐心、細心、信心

5、時時保持懷疑態度,並且有缺陷預防的意識

6、具備一定的程式設計經驗

你所瞭解的的軟體測試型別都有哪些,簡單介紹一下。

按測試策略分類:

1、靜態與動態測試

2、黑盒與白盒測試

3、手工和自動測試

4、冒煙測試

5、迴歸測試;

按測試階段分類:單元測試、整合測試、系統測試;

其他常見測試方法:

1、功能測試

2、效能測試

3、壓力測試

4、負載測試

5、易用性測試

6、安裝測試

7、介面測試

8、配置測試

9、文件測試

10、相容性測試

11、安全性測試

12、恢復測試

你認為做好測試計劃工作的關鍵是什麼?

明確測試的目標,增強測試計劃的實用性

編寫軟體測試計劃得重要目的就是使測試過程能夠發現更多的軟體缺陷,因此軟體測試計劃的價值取決於它對幫助管理測試專案,並且找出軟體潛在的缺陷。因此,軟體測試計劃中的測試範圍必須高度覆蓋功能需求,測試方法必須切實可行,測試工具並且具有較高的實用性,便於使用,生成的測試結果直觀、準確

堅持“5W”規則,明確內容與過程

“5W”規則指的是“What(做什麼)”、“Why(為什麼做)”、“When(何時做)”、“Where(在哪裡)”、“How(如何做)”。利用“5W”規則建立軟體測試計劃,可以幫助測試團隊理解測試的目的(Why),明確測試的範圍和內容(What),確定測試的開始和結束日期(When),指出測試的方法和工具(How),給出測試文件和軟體的存放位置(Where)。

採用評審和更新機制,保證測試計劃滿足實際需求

測試計劃寫作完成後,如果沒有經過評審,直接傳送給測試團隊,測試計劃內容的可能不準確或遺漏測試內容,或者軟體需求變更引起測試範圍的增減,而測試計劃的內容沒有及時更新,誤導測試執行人員。

分別建立測試計劃與測試詳細規格、測試用例

應把詳細的測試技術指標包含到獨立建立的測試詳細規格文件,把用於指導測試小組執行測試過程的測試用例放到獨立建立的測試用例文件或測試用例管理資料庫中。測試計劃和測試詳細規格、測試用例之間是戰略和戰術的關係,測試計劃主要從巨集觀上規劃測試活動的範圍、方法和資源配置,而測試詳細規格、測試用例是完成測試任務的具體戰術。

您認為做好測試用例設計工作的關鍵是什麼?

   白盒測試用例設計的關鍵是以較少的用例覆蓋儘可能多的內部程式邏輯結果。

  黑盒法用例設計的關鍵同樣也是以較少的用例覆蓋模組輸出和輸入介面。不可能做到完全測試,以最少的用例在合理的時間內發現最多的問題。

你的測試職業發展目標是什麼?

   測試經驗越多,測試能力越高。所以我的職業發展是需要時間累積的,一步步向著高階測試工程師奔去。而且我也有初步的職業規劃,前3年累積測試經驗,不斷的更新自己改正自己,做好測試任務。

測試結束的標準是什麼?

   從微觀上來說,在測試計劃中定義,比如系統在一定效能下平穩執行72小時,目前Bug Tracking System中,本版本中沒有一般嚴重的BUG,普通BUG的數量在3以下,BUG修復率90%以上等等引數,然後由開發經理,測試經理,專案經理共同簽字認同版本Release。

如果說巨集觀的,則是當這個軟體徹底的消失以後,測試就結束了。

一套完整的測試應該由哪些階段組成?
可行性分析、需求分析、概要設計、詳細設計、編碼、單元測試、整合測試、系統測試、驗收測試

  最後跟大家推薦一個學習資料分享群:175317069,裡面大牛已經為我們整理好了許多的學習資料,有自動化,介面,效能等等的學習資料!

人生是一個逆水行舟的過程,不進則退,我們們一起加油吧!

相關文章