騰訊2015春招測試工程師練習卷

搬運自牛客網,整理如下:

1、對手機軟件的壓力測試通常可以包括【ABC】

A 存儲壓力
B 響應能力壓力
C 網絡流量壓力

D 併發壓力

誤:併發壓力是針對服務器的,因爲每次併發是一個客戶端

針對手機應用軟件的系統測試,通常從如下幾個角度開展:功能模塊測試,交叉事件測試,壓力測試,容量測試,兼容性測試,易用性/用戶體驗測試等.
對手機可以施加的壓力測試類型主要有:存儲壓力、邊界壓力、 響應能力壓力、網絡流量壓力

  • 功能模塊測試:首先分析功能模塊的功能項,測試每一個功能項是否能夠實現對應功能。一般根據測試用例和軟件本身的流程就可以完成基本功能測試。
  • 交叉事件測試:又叫做事件或者衝突測試,是指一個功能正在執行過程中,同時另外一個事件或者操作對該過程進行干擾的測試。例如通話過程中接收到短信或者鬧鈴觸發,應用軟件運行過程中插拔充電器等。執行干擾的衝突事件不能導致應用軟件異常、手機死機、花屏等嚴重問題。
  • 壓力測試:又叫做邊界值容錯測試或極限負載測試。即測試過程中,已經達到某一軟件功能[存儲、網絡、響應能力]的最大容量、邊界或者最大承受極限,仍然對其進行相關操作*。例如連續接收或者發送短信,超過收信箱和SIM卡所能存儲的最大條數,仍然進行接收或者發送,依次來檢測軟件在超常態下的表現,進而進行評估用戶能否接受。
    • 存儲壓力:由於手機採用的是棧式存儲,所以當一個存儲塊滿了之後,程序員不做相應處理的話,就會導致其他存儲區被刪除。
    • 邊界壓力:邊界處理問題一直是容易被忽略的地方
    • 響應能力壓力:有時 某些操作可能處理的時間較長,如果在處理期間,繼續進行其他操作時候就會出現問題。
    • 網絡流量壓力:執行較大數據流量的功能同時,在進行其他操作,使得網絡流量始終處於很高的狀態,檢驗各個功能是否依然正常工作,是否存在因爲網絡流量瓶頸引起的某功能異常。
  • 容量測試:即存儲空間已滿時候的測試,包括用戶可用內存/SIM卡所有空間被完全使用的測試。此時在對可編輯模塊和存儲空間進行操作,如果軟件在極容狀態下處理不好,將會導致死機或者花屏等問題。
  • 兼容性測試:不同品牌、型號手機,不同網絡,不同容量大小的SIM卡之間的兼容性測試。例如:中國電信的小靈通接收到中國移動或者中國聯通GSM發來的短消息,需要驗證顯示和回覆是否正常。
  • 易用性、用戶體驗測試:在指定條件下,軟件產品被理解、學習、使用和吸引用戶的能力,是交互的適應性、功能性和有效性的集中體現

2、軟件驗收測試的合格通過準則是【ABCD】

A 軟件需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。
B 所有測試項沒有殘餘的一級二級三級的錯誤。
C 立項審批表、需求分析文檔、設計文檔和編碼實現一致。
D 驗收測試工件齊全(測試計劃,測試用例,測試日誌,測試通知單,測試分析報告)

3、黑盒測試方法與白盒測試方法

------黑盒測試用例設計方法包括:(用於軟件的確認測試)
等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法、場景法等。
------白盒測試的測試方法包括:(用於軟件的驗證)
代碼檢查法、靜態結構分析法、靜態質量度量法、邏輯覆蓋法(語句覆蓋、判斷覆蓋、條件覆蓋、判斷條件覆蓋、條件組合覆蓋、路徑覆蓋)、基本路徑測試法、域測試、符號測試、路徑覆蓋和程序變異。 

黑盒測試:黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如數據庫或文件)的完整性。

白盒測試:白盒測試也稱結構測試或邏輯驅動測試,它是知道產品內部工作過程,可通過測試來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程序內部的結構測試程序,檢驗程序中的每條通路是否都有能按預定要求正確工作,而不顧它的功能。

測試分爲個人審查、抽查和審查、黑盒測試、白盒測試

4、測試驅動開發TDD

測試驅動開發,(Test-Driven Development),是一種不同於傳統軟件開發流程的新型的開發方法。它要求在編寫某個功能的代碼之前先編寫測試代碼,然後只編寫使測試通過的功能代碼,通過測試來推動整個開發的進行。這有助於編寫簡潔可用和高質量的代碼,並加速開發過程。

  • TDD的原理是在開發功能代碼之前,先編寫單元測試用例代碼,測試代碼確定需要編寫什麼產品代碼。
  • TDD的基本思路就是通過測試來推動整個開發得進行,但測試驅動開發並不只是單純的測試工作,而是把需求分析,設計,質量控制量化的過程。
  • TDD的重要目的不僅僅是測試軟件,測試工作保證代碼質量僅僅是其中一部分,而且是在開發過程中幫助客戶和程序員去除模棱兩可的需求。
  • TDD首先考慮使用需求(對象、功能、過程、接口等),主要是編寫測試用例框架對功能的過程和接口進行設計,而測試框架可以持續進行驗證。

優點:在任意一個開發節點都可以拿出一個可以使用,含少量bug並具一定功能的產品。
缺點:增加代碼量。測試代碼是系統代碼的兩倍或更多。

5、軟件驗收測試包括哪些【ACD】

A 正式驗收測試
B 白盒測試
C alpha測試
D beta測試

軟件驗收測試分爲三類:
正式驗收測試;
非正式驗收測試。其中包括α測試(由用戶、測試人員、開發人員共同參與的內部測試。)
                                         β測試(內測後的公測,即完全交給最終用戶測試。)

6、系統測試的策略有哪些?【ABCD】

A 負載測試
B 易用性測試
C 強度測試
D 安全測試

系統測試的16個策略:
功能測試,性能測試,壓力測試,容量測試,
安全性測試GUI測試,可用性測試,安裝測試,
配置測試,異常測試,備份測試,健壯性測試,
文檔測試,在線幫助測試,網絡測試,穩定性測試

【解析】負載測試屬於性能測試,易用性測試屬於GUI測試,強度測試屬於性能測試,安全測試屬於安全性測試。

(1)性能測試、壓力測試和負載測試的關係

壓力測試是性能測試的一部分

  • 負載測試是逐步增加系統的負載,測試系統性能的變化,最終確定滿足性能指標的情況下,系統所能承受的最大負載量,其目的是找出系統的極限在哪,找出系統能承擔多少併發,承擔多少數據。是極限測試。找到極限就停。
  • 壓力測試也是逐步增加系統負載,測試系統性能的變化,最終確定在什麼條件下,系統性能屬於失效狀態,找出系統在什麼情況下會崩潰,獲得系統能提供最大服務級別的測試。是破壞性測試。找到極限後越過極限繼續測試。

(2)壓力測試與強度測試的關係(目標不同、指標類似)

  • 壓力測試:是在標準工作環境下,不斷增加系統負荷,最終測試出該系統能力達到的最大負荷(穩定和峯值)
  • 強度測試:是在非標準工作環境下,甚至不斷人爲降低系統工作環境所需要的資源,如網絡帶寬、系統內存、數據鎖等等,以測試系統在資源不足的情況下的工作狀態
  • 強度測試和壓力測試的測試指標相近,大多都是與時間相關的指標,如併發量(吞吐量),延遲(最大\最小\平均)以及順序指標等

7、設計系統測試計劃需要參考的項目文擋有哪些?【ACD】

A 軟件測試計劃
B 可行性研究報告
C 軟件需求規範
D 迭代計劃

8、下面關於軟件測試,描述正確的是【ABCD】

A 軟件測試是使用人工操作或者軟件自動運行的方式來檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別的過程。
B 軟件測試的測試目標是發現一些可以通過測試避免的開發風險。
C 軟件測試的原則之一是測試應該儘早進行,最好在需求階段就開始介入。
D 軟件測試主要工作內容是驗證(verification)和確認(validation)

【解析】D選項
單元測試:驗證針對輸入和輸出數據,檢查其內部數據結構、邏輯和邊界條件;
集成測試:驗證系統構建是否能夠按照系統和程序設計規格說明中描述的那樣共同工作的過程;
功能測試:對系統進行評估,以確定集成的系統是否確實執行需求規格說明中描述的功能。
驗收測試:開發人員確定系統是按照系統描述的理解運行的。根據客戶的需求描述對系統進行檢查

9、集成測試的過程包括有以下哪些?

系統集成測試主要包括以下過程:

  • 構建的確認過程。
  • 補丁的確認過程。
  • 系統集成測試測試組提交過程。
  • 測試用例設計過程。
  • 測試代碼編寫過程。
  • Bug的報告過程。
  • 每週/每兩週的構建過程。
  • 點對點的測試過程。
  • 組內培訓過程

10、做好文檔測試需要注意的點有哪些?【ABCD】

A 仔細閱讀,跟隨每個步驟,檢查每個圖形,嘗試每個示例
B 檢查文檔的編寫是否滿足文檔編寫的目的
C 內容是否齊全,正確,完善
D 標記是否正確

12、容量測試

容量測試:容量測試目的是通過測試預先分析出反映軟件系統應用特徵的某項指標的極限值(如最大併發用戶數、數據庫記錄數等),系統在其極限值狀態下沒有出現任何軟件故障或還能保持主要功能正常運行。
容量測試是面向數據的,並且它的目的是顯示系統可以處理目標內確定的數據容量。

13、下面描述測試工具的功能正確的有【ABCD】

A JMeter: 基於JAVA的壓力測試工具,Badboy用來進行腳本的錄製
B Junit: 白盒測試工具:針對代碼測試
C LoadRunner:負載壓力測試  (預測系統性能)
D TestLink: 用例管理工具

JMeter+Badboy:基於JAVA的壓力測試工具,Badboy用來進行腳本的錄製 
負載壓力測試:LoadRunner:預測系統行爲和性能的工業標準級負載測試工具。模擬上千萬用戶同時實施併發操作,來實時監控可能發生的問題。 
功能測試:通過自動錄製、檢測和回放用戶的應用操作。將輸出記錄同預先給定的記錄比較。 QTP(quicktest professional):自動測試工具 
白盒測試:C++ TEST(做C和C++的白盒測試)、JUnit(Java白盒測試) 

測試管理工具:對測試需求、計劃、用例、實施進行管理 
測試輔助工具:本身不執行,可以生成測試數據,爲測試提供數據準備 
缺陷管理工具:Mantis、BugFree、QC、TD 
用例管理工具:TestLink、QC 
測試輔助工具:SVN

14、下面哪些屬於網遊的測試內容?【ABCD】

A 客戶端性能
B 服務器端性能
C 從運行完 game.exe 打開遊戲界面後可進行的各種操作、玩法
D 界面

15、測試方法可以分成哪幾種?【ABCD】

A 個人複查
B 抽查和會審
C 黑盒測試
D 白盒測試

軟件測試可以是人工測試:如個人複查,抽查和會審等;也可以是機器自動測試,又有不同的分類:

按照否關軟件內部結構具體實現角度劃分:A.白盒測試、B.黑盒測試 、C.灰盒測試 
按照軟件發程按階段劃分:A.單元測試、B.集成測試、C.系統測試、D.驗收測試

16、軟件質量管理(QM)應有質量保證(QA)和質量控制(QC)組成,下面的選項屬於QC的是:【ABC】

A 測試
B 跟蹤
C 監督

D 需求審查
E 程序代碼審查


(1)概念上:
QA:Quality Assurance (質量保證)
QC:Quality Control (質量控制)
QM:Quality Manage (質量管理)

(2)定義上:
QA:爲達到質量要求所採取的作業技術和活動
QC:爲了提供足夠的信任表明實體能滿足質量要求,而實施的根據需要進行證實的全部有計劃、有系統的活動
QM:確定質量方針、目標和職責,並在通過諸如:質量策劃、質量控制.質量保證和質量改進,使其實施的全部管理職能的所有活動

(3)職責上:
QA:最重要的職責在於系統層面的完善,側重於問題的防範及對已發生問題的根源的探究及其對策的實施,從而降低不良的產生
QC:最重要的職責在於對製成品的監控
QM:最重要的職責在於從組織層面上保障質量工作環境

(4)技能要求上:
QA:具備必要資質的QA是組織中的高級人才,需要全面掌握組織的過程定義,熟悉所參與項目所用的工程技術
QC:既包括軟件測試設計員等高級人才,也包括一般的測試員等中、初級人才
QM:不僅要具備QA、QC的技能,還需具備專業管理才能

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章