天天看點

軟體測試綜合筆試題目及參考答案

一、 測試的種類很多,比如:

1、 代碼、函數級測試

2、 子產品、元件級測試

3、 系統測試

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

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

三、 如果測試程式向列印機輸送列印内容,應該選用那些破壞性測試用例。

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

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

六、 有一個軟體産品,功能是輸入3個數字代表三角形的三個邊,看是否能判斷出是什麼三角形,請設計測試用例并辨別出該用例的測試目的。

七、 在SQLSERVER查詢分析器中選擇想要使用的資料庫,有哪兩種方法?

八、 請指出下列子句在SELECT語句中所起的作用。

語句 作用

SELECT

INTO

FROM

WHERE

GROUP BY

HAVING

ORDER BY

參考答案:

一、 答:

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

子產品、元件級測試主要依據是程式結構設計測試子產品間的內建和調用關系,一般由測試人員完成。

系統測試在于子產品測試與單元測試的基礎上進行測試。了解系統功能與性能,根據測試用例進行全面的測試。

二、答:

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

三、 答:

1. 列印超過允許一次列印的上限的數量;

2. 在列印過程中斷電、重新開機等破壞性操作。

3. 列印過程中墨盒為空。如果是彩色列印機,要分别測試單色墨盒為空群組合的情況。

4. 列印過程中沒有進紙。

四、 答

1. 單位元組,如A;

2. 雙位元組, AA、我我;

3. 特殊字元 /’。’;、=-等;

4. 保留字,如com;

5. 檔案格式為8.3格式的;

6. 檔案名格式為非8.3格式的;

7. /,\,*等九個特殊字元。

五、答:

1. 特殊字元,如10個*或¥;

2. 英文字母,如ABCDefghik;

3. 小于十個字元,如123;

4. 大于十個字元,如11111111111;

5. 數字和其他混合,如123AAAAAAA;

6. 空字元;

7. 保留字元

六、本題目主要考察設定邊界值:(供參考)

序号 第一邊 第二邊 第三邊 預測結果 實際結果 測試目的
6 7 8 普通 三邊不等
1 1 1 等邊 三邊等
8 9 9 等腰 兩邊等
15 7 8 不能構成 兩邊和=三
11 22 不能構成 空值
66 99 不能構成
88 100 -1 不能構成 負數
* 1 1 不能構成 特殊符号

七、 答:

1. 用指令行: use 資料庫名稱

2. 在工具欄直接選擇要連接配接資料庫

八、 答:

SELECT 選擇

INTO 插入

FROM 從某個表

WHERE 條件 在什麼時候 WHERE子句設定查詢條件,過濾掉不需要的資料行。

GROUP BY 分類分組

HAVING 在分類的基礎上定位查詢條件

ORDER BY 查詢結果排序

一、判斷題(第1、3題每題2分,其他題每題1分,12 分,正确的√,錯誤的╳)

1.軟體測試的目的是盡可能多的找出軟體的缺陷。()

這個觀點指出測試是以查找錯誤為中心,而不是為了示範軟體的正确功能。但是隻從字面意思了解可能會産生誤導,認為發現錯誤是唯一目的。軟體是否符合使用者需求是判斷軟體品質的重要标準,檢驗軟體的可靠性也是軟體測試目的之一。

    X

2.Beta 測試是項目驗收測試的一種,主要發現項目中存在的重要缺陷。()

Beat測試和驗收測試是兩種不同的測試。驗收測試的目的是為了以發現“未實作的需求“為目的,以評估“适合使用“為目标,該類測試的不是以發現缺陷為主要目的。beta測試是一模拟真實的使用環境進而發現缺陷的一種測試。是以兩者之間的是非包容關系。驗收針對的項目;Alpha, Beta針對的是産品。最好不要出這樣的題。

X

3.驗收測試是由最終使用者來實施的。()

上面說到了驗收測試的目的和目标,是以驗收測試也可是是軟體生産的企業内部人員來實施。例如産品經理。當軟體以項目的形式出現,那麼驗收測試由最終使用者來實施的情況是比較長見的。但是對于産品形式的軟體,生産企業内部的驗收測試會更多。

X

4.代碼評審是檢查源代碼是否達到子產品設計的要求。()

代碼審查是一種靜态技術,從這個意義上說代碼複查是需要和其他的一些動态測試技術配合才能檢查代碼是否符合設計的要求

X

5.自底向上內建需要測試員編寫驅動程式。()

這道題目大家看下top-down 和 down-top的內建測試示意圖就能得出明确的答案。這裡需要了解的是什麼是驅動測試程式,什麼是樁程式。如果內建元件數量衆多,多關系層次,那麼不論是什麼類型的內建測試。驅動程式和樁程式都是需要開發的。

6.負載測試是驗證要檢驗的系統的能力最高能達到什麼程度。()

關于負載測試和壓力測試在論壇中的文章中有詳細的解釋,大家可以去看一下就能得出正确的答案

X

7.測試人員要堅持原則,缺陷未修複完堅決不予通過。()

測試是否通過,不是以缺陷是否修複完畢為标準,而是以測試需求和既定的完成标準為标準。。

X

8.代碼評審員一般由測試員擔任。()

如果測試員有這個水準,那麼當然是可以參加的。不過大多數的企業不會讓普通的測試人員參與代碼的評審。

X

9.我們可以人為的使得軟體不存在配置問題。()

首先大家先搞清楚什麼是配置管理什麼是軟體配置,從這道題目中看不出出題人想問的是關鍵工程中的配置管理還是單純的軟體配置。但是可以肯定的是不論是何種情況,答案均是否定的。  

X

10.內建測試計劃在需求分析階段末送出。()

內建測試計劃在開發人員完成軟體內建計劃之後就可以開始進行了。是以在需求分析階段之後送出是不現實的事情,應該在軟體的設計階段後,編碼前。

X

二、不定項選擇題(每題2 分,10分)

1.軟體驗收測試的基本合格通過準則是:()

A.

軟體需求分析說明書中定義的所有功能已全部實作,性能名額全部達到要求。

B.

所有測試項沒有殘餘一級、二級BUG

C.

立項審批表、需求分析文檔、設計文檔和編碼實作一緻。

D.

驗收測試工件齊全。

回答這道題,你必須是這家企業的員工。前面說到了驗收測試的目的和目标,一個是需求必須實作,二是證明軟體是适合使用的。這樣能滿足這兩個通用标準就可以了。當然有些軟體企業會對驗收測試标準做一些調整。C是不對的因為立項時的需求和最終的需求很大可能是不完全一緻的。 A

2.軟體測試計劃評審會需要哪些人員參加?()

A.項目經理

B.SQA 負責人

C.配置負責人

D.測試組

上面的4種角色都需要參與   ABCD

3.下列關于alpha 測試的描述中正确的是:()

A.alpha 測試需要使用者代表參加

B.alpha 測試不需要使用者代表參加

C.alpha 測試是系統測試的一種

D.alpha 測試是驗收測試的一種

首先大家需要知道alpha測試是系統級别的測試,該測試是在一個受控的環境中進行的。使用者需要直接參與進來。是以答案應該是AD 

4.測試設計員的職責有:()

A.制定測試計劃

B.設計測試用例

C.設計測試過程、腳本

D.評估測試活動

合理的答案的是BC,同時要看軟體企業對該類人員的職責是如何定義。

5.軟體實施活動的進入準則是:()

A.需求工件已經被基線化

B.詳細設計工件已經被基線化

C.構架工件已經被基線化

D.項目階段成果已經被基線化

先要了解一下什麼是基線。這個是軟體配置管理中一個重要的概念。工作産品必須納入到一定的基線裡面。是以選擇ABC是必定的,至于是否選擇D要看這家企業自身的标準了

三、填空題(每空1分,24 分)

1.軟體驗收測試包括___、___、____三種類型。

軟體驗收測試包括正式驗收測試、alpha測試、beta測試三種測試。

2.系統測試的政策有____________________________等15 種方法。(該題

15個空) 

系統測試的政策有很多種的,有性能測試、負載測試、強度測試、易用性測試、安全測試、配置測試、安裝測試、文檔測試、故障恢複測試、使用者界面測試、恢複測試、分布測試、可用性測試。

3.設計系統測試計劃需要參考的項目文檔有___、___和____。

設計系統測試計劃需要參考的項目文檔有軟體測試計劃、軟體需求工件、和疊代計劃。

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

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

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

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

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

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

1.一個測試工程師應具備那些素質和技能?

我認為應該具備如下素質和技能:

掌握基本的測試基礎理論

本着找出軟體存在的問題的态度進行測試,即客觀吧,不要以挑刺形象出現

可熟練閱讀需求規格說明書等文檔

以使用者的觀點看待問題

有着強烈的品質意識

細心和責任心

良好的有效的溝通方式(與開發人員及客戶) 

具有以往的測試經驗

能夠及時準确地判斷出高危險區在何處.

2.內建測試通常都有那些政策?

基于分解的內建:大爆炸內建\自頂向下內建\自底向上內建\ 三明治內建\基于調用圖的內建\基于路徑的內建\分層內建\基于功能的內建\高頻內建\基于進度的內建\基于風險內建\基于事件內建\基于使用的內建\C/S內建

3.你用過的自動測試工具?

我用過功能測試工具:QTP;性能測試工具:LoadRunner;測試管理工具:TD

4.一個缺陷測試報告的組成?

一個缺陷測試報告的組成為:缺陷報告的唯一ID,總結簡明扼要的事實陳述總結軟體缺陷.事件的描述(日期和時間\測試員的姓名\使用的硬體和軟體配置\輸入\過程步驟\預期結果\實際結果\試圖再現及嘗試的描述\定位資訊)

5.軟體測試項目從什麼時候開始?為什麼?

軟體測試應該在需求分析階段就介入,因為測試的對象不僅僅是程式編碼,應該對軟體開發過程中産生的所有産品都測試,并且軟體缺陷存在放大趨勢.缺陷發現的越晚,修複它所花費的成本就越大.

6.

有兩個表

表一 AA

種類T     庫存總量S

A         997     

B         1234

表二 BB

種類T     出庫數量S

A         105

A         213

B         116

B         211

B         303

用一條SQL語句求出A,B各剩下多少?

參考答案:

select distinct AA.T kind ,AA.S-(select sum(BB.S) sumnum from BB group by T having AA.T=BB.T) stock from AA,BB where AA.T=BB.T 

結果:

kind stock 

A 679 

B 604

1. 什麼是白盒測試?什麼是黑盒測試?什麼是回歸測試?

答:白盒測試是測試人員要了解程式結構和處理過程,按照程式内部邏輯測試程式,檢查程式中的每條通路是否按照預定要求正确工作.它主要的針對被測程式的源代碼,測試着可以完全不考慮程式的功能.

白盒測試流程:詳細設計–>源程式–>分析程式内部邏輯結構–>流程圖–>制定測試用例–>被測程式–>執行路徑–>覆寫情況分析 .

黑盒測試:(Black-box Testing,又稱為功能測試或資料驅動測試)是把測試對象看作一個黑盒子。利用黑盒測試法進行動态測試時,需要測試軟體産品的功能,不需測試軟體産品的内部結構和處理過程。

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

2.單元測試、內建測試、系統測試的側重點是什麼?

單元測試針對的是軟體設計的最小單元–程式子產品(面向過程中是函數、過程;面向對象中是類。),進行正确性檢驗的測試工作,在于發現每個程式子產品内部可能存在的差錯.一般有兩個步驟:人工靜态檢查\動态執行跟蹤

內建測試針對的是通過了單元測試的各個子產品所內建起來的元件進行檢驗,其主要内容是各個單元子產品之間的接口,以及各個子產品內建後所實作的功能.

系統測試針對的是內建好的軟體系統,作為整個計算機系統的一個元素,與計算機硬體\外設\某些支援軟體\資料和人員等其他系統元素結合在一起,要在實際的運作環境中,對計算機系統進行一系列的內建測試和确認測試.

3.設計用例的方法:

在測試的不同階段運用不用的測試方法設計用例的方法依據不同:

白盒測試用例設計有如下方法:邏輯覆寫、循環覆寫和基本路徑覆寫

黑盒測試用例設計方法:等價類劃分、邊界值分析、錯誤猜測、因果圖、狀态圖、測試大綱、場景法、正交政策表。

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

1、責任心

2、溝通能力

3、團隊合作精神

4、耐心、細心、信心

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

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

5.內建測試通常都有那些政策?

基于分解的內建:大爆炸內建\自頂向下內建\自底向上內建\ 三明治內建\基于調用圖的內建\基于路徑的內建\分層內建\基于功能的內建\高頻內建\基于進度的內建\基于風險內建\基于事件內建\基于使用的內建\C/S內建 。

6.答:我用過功能測試工具:QTP;性能測試工具:LoadRunner;測試管理工具:TD;靜态分析工具:Logiscope;單元測試工具:C++Test等。

7.答:一個缺陷測試報告的組成為:缺陷報告的唯一ID,總結簡明扼要的事實陳述總結軟體缺陷.缺陷的描述(日期和時間\測試員的姓名\産品名稱\所屬子產品\工作版本\使用的硬體和軟體配置\輸入資料\重制步驟\預期結果\實際結果\附件\責任人\備注) 、缺陷狀态、修改記錄等。

8.軟體測試項目從什麼時候開始,?為什麼?

軟體測試應該在需求分析階段就介入。

1. 在軟體生命周期的各個階段都會引入缺陷。通常來說,在需求分析和産品設計階段,容易引入80%的缺陷,而剩下的20%的缺陷才是在編碼過程中引入的。

2. 缺陷的修改成本随着所處的開發階段的上升而上升。是以,及早引入測試,可以及早的修複缺陷,進而降低成本。

3. 軟體産品由程式和文檔兩個部分組成。測試的内容不僅包括軟體産品,還包括生産過程使用的各類文檔。需要對文檔進行測試和評審。

4. 制定測試計劃,規劃測試資源,設定進度,也需要配合軟體的生命周期,從一開始就進行界定。

轉載于:https://www.cnblogs.com/justdoitba/articles/8353337.html