第一篇:軟件測試面試題一部分
軟件測試工程師筆試試題
14.您在從事性能測試工作時(shí),是否使用過一些測試工具?如果有,請?jiān)囀鲈摴ぞ叩墓ぷ髟?,并以一個(gè)具體的工作中的例子描述該工具是如何在實(shí)際工作中應(yīng)用的。
15.您認(rèn)為性能測試工作的目的是什么?做好性能測試工作的關(guān)鍵是什么?
16.在您以往的工作中,一條軟件缺陷(或者叫Bug)記錄都包含了哪些內(nèi)容?如何提交高質(zhì)量的軟件缺陷(Bug)記錄?
17.您以往所從事的軟件測試工作中,是否使用了一些工具來進(jìn)行軟件缺陷(Bug)的管理?如果有,請結(jié)合該工具描述軟件缺陷(Bug)跟蹤管理的流程。
18.您以往是否曾經(jīng)從事過單元測試和集成測試?如果有,請談一下這些工作的實(shí)際開展情況。
19.您如何看待軟件過程改進(jìn)?在您曾經(jīng)工作過的企業(yè)中,是否有一些需要改進(jìn)的東西呢?您期望的理想的測試人員的工作環(huán)境是怎樣的?
20.您以往工作過的企業(yè)中,是否開展了軟件配臵管理工作?您能否描述一下這項(xiàng)工作的開展情況和您對這項(xiàng)工作的認(rèn)識?
21.您是否熟悉一些主流的軟件工程方法論和思想,如RUP、CMM、CMMI、XP、PSP、TSP。如果熟悉,您是否可以談一下對這些方法論和思想的認(rèn)識?
22.您認(rèn)為在測試人員同開發(fā)人員的溝通過程中,如何提高溝通的效率和改善溝通的效果?維持測試人員同開發(fā)團(tuán)隊(duì)中其他成員良好的人際關(guān)系的關(guān)鍵是什么?
23.在您以往的測試工作中,最讓您感到不滿意或者不堪回首的事情是什么?您是如何來對待這些事情的?
24.在即將完成這次筆試前,您是否愿意談一些自己在以往的學(xué)習(xí)和工作中獲得的工作經(jīng)驗(yàn)和心得體會?(可以包括軟件測試、過程改進(jìn)、軟件開發(fā)或者與此無關(guān)的其他方面)
五、設(shè)計(jì)題(共15分)
對下面給出的程序控制圖,分別以各種不同的測試方法寫出最少的測試用例。
測試人員_考試試卷(考試時(shí)間100分鐘,滿分100分)
姓名:__________部門:__________員工號:__________
一、填空題:(每一空格2分,共60分)
1、軟件實(shí)施活動的輸出工件有、、、。
2、代碼評審主要做 工作。
3、軟件實(shí)施活動中集成員的職責(zé)是。
4、驗(yàn)證與確認(rèn)軟件實(shí)施活動主要有、代碼評審、、、、SQA 驗(yàn)證。
5、表明測試已經(jīng)結(jié)束。
6、軟件測試的目的是。
7、軟件測試主要分為、、、四類測試。
8、軟件測試活動有制定測試計(jì)劃、、、、、、測
試評估、測試結(jié)束八個(gè)步驟。
9、軟件測試活動的輸出工件有_、、、、。
10、軟件測試角色有、、、。
二、不定項(xiàng)選擇題:(每題3 分,共15分)
1、軟件實(shí)施活動的進(jìn)入準(zhǔn)則是()
A、需求工件已經(jīng)被基線化
B、詳細(xì)設(shè)計(jì)工件已經(jīng)被基線化
C、構(gòu)架工件已經(jīng)被基線化 D、項(xiàng)目階段成果已經(jīng)被基線化
2、下面角色不屬于集成計(jì)劃評審的是()
A、配臵經(jīng)理
B、項(xiàng)目經(jīng)理
C、測試員
D、編碼員
3、軟件測試設(shè)計(jì)活動主要有()
A、工作量分析
B、確定并說明測試用例
C、確立并結(jié)構(gòu)化測試過程
D、復(fù)審并評估測試覆蓋
4、不屬于集成測試步驟的是()
A、制定集成計(jì)劃
B、執(zhí)行集成測試
C、記錄集成測試結(jié)果
D、回歸測試
5、屬于軟件測試活動的輸入工件的是()
A、軟件工作版本
B、可測試性報(bào)告
C、軟件需求工件
D、軟件項(xiàng)目計(jì)劃
三、問答題:(共25 分)
1、項(xiàng)目的集中管理在軟件公司的哪一個(gè)層面?(2 分)
2、請描述軟件測試活動的生命周期。(8 分)
3、什么是測試評估,測試評估的范圍是什么?(5 分)
4、闡述工作版本的定義。(2 分)、請畫出軟件測試活動的流程圖。(8 分)
測試人員考試試卷(考試時(shí)間90分鐘,滿分100分)
姓名:__________部門:__________員工號:__________
一、判斷題(每題2分,正確的“√”,錯(cuò)誤的“╳”)、好的測試員不懈追求完美。()
2、測試程序僅僅按預(yù)期方式運(yùn)行就行了。()
3、不存在質(zhì)量很高但可靠性很差的產(chǎn)品。()
4、軟件測試員可以對產(chǎn)品說明書進(jìn)行白盒測試。()
5、靜態(tài)白盒測試可以找出遺漏之處和問題。()
6、總是首先設(shè)計(jì)白盒測試用例。()
7、可以發(fā)布具有配臵缺陷的軟件產(chǎn)品。()
8、所有軟件必須進(jìn)行某種程度的兼容性測試。()
9、所有軟件都有一個(gè)用戶界面,因此必須測試易用性。()
10、測試組負(fù)責(zé)軟件質(zhì)量。()
二、簡答題
1、軟件的缺陷等級應(yīng)如何劃分?(3 分)
2、如果能夠執(zhí)行完美的黑盒測試,還需要進(jìn)行白盒測試嗎?為什么?(3、你認(rèn)為一個(gè)優(yōu)秀的測試工程師應(yīng)該具備哪些素質(zhì)?(3 分)分)
4、產(chǎn)品測試到什么時(shí)候就算是足夠了?(2 分)
5、測試計(jì)劃的目的是什么?(2 分)
6、為什么要進(jìn)行軟件測試?軟件測試的目的是什么?(5 分)
7、軟件測試應(yīng)該劃分幾個(gè)階段?簡述各個(gè)階段應(yīng)重點(diǎn)測試的點(diǎn)?各個(gè)階段的含義?(5 分)
8、如何做一名合格的測試人員?(3 分)
9、針對缺陷采取怎樣的管理措施?(5 分)
三、專業(yè)詞語解釋(每題2 分)
α測試: β測試: 驅(qū)動模塊: 樁模塊: 白盒測試:
靜態(tài)測試:
四、選擇題(每題2分)
1.下面哪些屬于動態(tài)分析()A. 代碼覆蓋率
B. 模塊功能檢查
C. 系統(tǒng)壓力測試
D. 程序數(shù)據(jù)流分析
2.下面哪些屬于靜態(tài)分析()A、代碼規(guī)則檢查
B、序結(jié)構(gòu)分析
C、序復(fù)雜度分析
D、內(nèi)存泄漏
五、設(shè)計(jì)題(10分)
在三角形計(jì)算中,要求三角型的三個(gè)邊長:A、B 和C。當(dāng)三邊不可能構(gòu)成三角形時(shí)提示錯(cuò)誤,可構(gòu)成三角
形時(shí)計(jì)算三角形周長。若是等腰三角形打印“等腰三角形”,若是等邊三角形,則提示“等邊三角形”。畫出程
序流程圖、控制流程圖、找出基本測試路徑 ,對此設(shè)計(jì)一個(gè)測試用例。
六、論述題
1、試敘述對一個(gè)軟件項(xiàng)目測試的全過程。(10 分)
2、簡述你對測試工作的認(rèn)識過程、在以后的工作的一些建議。(6 分)、述靜態(tài)測試和動態(tài)測試的區(qū)別?(5 分)
測試人員_考試試卷(考試時(shí)間100分鐘,每題10 分,滿分100分)
姓名:__________部門:__________員工號:__________ 1. 什么是軟件測試,以及軟件測試的意義?
2. 什么是軟件測試靜態(tài)分析,軟件測試動態(tài)分析,3. 下面那些屬于靜態(tài)分析()
A、編碼規(guī)則檢查
B、程序結(jié)構(gòu)分析
C、程序復(fù)雜度分析
D、內(nèi)存泄漏
4. 下面那些屬于動態(tài)分析()A、代碼覆蓋率
B、模塊功能檢查
C、系統(tǒng)壓力測試
D、程序數(shù)據(jù)流分析
5. 從測試技術(shù)角度,正確的選擇是(),給出各自的含義?
A、靜態(tài)測試
B、黑盒測試
C、動態(tài)測試
D、白盒測試
6. 從測試階段角度,測試正確的順序是(),同時(shí)給出所選擇的正確策略含義和被測對象是什么?
A、單元測試
B、集成測試
C、系統(tǒng)測試
D、確認(rèn)測試
7. 針對缺陷采取怎樣的管理措施?
8. 在測試生命周期,測試過程分為幾個(gè)階段,以及各個(gè)階段的含義?
9. 簡要寫出自己在理解的基礎(chǔ)質(zhì)上所認(rèn)為引入測試管理的意義
10. 在三角形計(jì)算中,要求三角型的三個(gè)邊長:A、B 和C。當(dāng)三邊不可能構(gòu)成三角形時(shí)提示錯(cuò)誤,可構(gòu)成三角形時(shí)計(jì)算三角形周長。若是等腰三角形打印“等腰三角形”,若是等邊三角形,則提示“等
邊三角形”。畫出程序流程圖、控制流程圖、計(jì)算圈復(fù)雜度V(g),找出基本測試路徑。1.軟件測試的目的是盡可能多的找出軟件的缺陷。(Y)
2.Beta 測試是驗(yàn)收測試的一種。(Y)
3.驗(yàn)收測試是由最終用戶來實(shí)施的。(N)
4.項(xiàng)目立項(xiàng)前測試人員不需要提交任何工件。(Y)
5.單元測試能發(fā)現(xiàn)約80%的軟件缺陷。(Y)
6.代碼評審是檢查源代碼是否達(dá)到模塊設(shè)計(jì)的要求。(N)
7.自底向上集成需要測試員編寫驅(qū)動程序。(Y)
8.負(fù)載測試是驗(yàn)證要檢驗(yàn)的系統(tǒng)的能力最高能達(dá)到什么程度。(N)
9.測試人員要堅(jiān)持原則,缺陷未修復(fù)完堅(jiān)決不予通過。(N)
10.代碼評審員一般由測試員擔(dān)任。(N)
11.我們可以人為的使得軟件不存在配臵問題。(N)
12.集成測試計(jì)劃在需求分析階段末提交。(N)
二、選折
1.軟件驗(yàn)收測試的合格通過準(zhǔn)則是:(ABCD)
A. 軟件需求分析說明書中定義的所有功能已全部實(shí)現(xiàn),性能指標(biāo)全部達(dá)到要求。
B. 所有測試項(xiàng)沒有殘余一級、二級和三級錯(cuò)誤。
C. 立項(xiàng)審批表、需求分析文檔、設(shè)計(jì)文檔和編碼實(shí)現(xiàn)一致。
D. 驗(yàn)收測試工件齊全。
2.軟件測試計(jì)劃評審會需要哪些人員參加?(ABCD)
A.項(xiàng)目經(jīng)理
B.SQA 負(fù)責(zé)人 C.配臵負(fù)責(zé)人
D.測試組
3.下列關(guān)于alpha 測試的描述中正確的是:(AD)
A.a(chǎn)lpha 測試需要用戶代表參加
B.a(chǎn)lpha 測試不需要用戶代表參加
C.a(chǎn)lpha 測試是系統(tǒng)測試的一種
D.a(chǎn)lpha 測試是驗(yàn)收測試的一種
4.測試設(shè)計(jì)員的職責(zé)有:(BC)
A.制定測試計(jì)劃
B.設(shè)計(jì)測試用例
C.設(shè)計(jì)測試過程、腳本
D.評估測試活動
5.軟件實(shí)施活動的進(jìn)入準(zhǔn)則是:(ABC)
A.需求工件已經(jīng)被基線化
B.詳細(xì)設(shè)計(jì)工件已經(jīng)被基線化
C.構(gòu)架工件已經(jīng)被基線化
D.項(xiàng)目階段成果已經(jīng)被基線化
三、添空
1.軟件驗(yàn)收測試包括:正式驗(yàn)收測試,alpha測試,beta測試。
2.系統(tǒng)測試的策略有:功能測試,性能測試,可靠性測試,負(fù)載測試,易用性測試,強(qiáng)度測試,安全測試,配臵測試,安裝測試,卸載測試,文擋測試,故障恢復(fù)測試,界面測試,容量測試,兼容性測試,分布測試,可用性測試,(有的可以合在一起,分開寫只要寫出15就滿分哦)
3.設(shè)計(jì)系統(tǒng)測試計(jì)劃需要參考的項(xiàng)目文擋有:軟件測試計(jì)劃,軟件需求工件和迭代計(jì)劃。
4.對面向過程的系統(tǒng)采用的集成策略有:自頂向下,自底向上兩種。
5.(這題出的有問題哦,詳細(xì)的5步驟為~~)通過畫因果圖來寫測試用例的步驟為:
(1)分析軟件規(guī)格說明描述中,哪些是原因(即輸入條件或輸入條件的等價(jià)類),哪些是結(jié)果(即輸出條件),并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識符。
(2)分析軟件規(guī)格說明描述中的語義,找出原因與結(jié)果之間,原因與原因之間對應(yīng)的是什么關(guān)系? 根據(jù)這些關(guān)系,畫出因果圖。
(3)由于語法或環(huán)境限制,有些原因與原因之間,原因與結(jié)果之間的組合情況不可能出現(xiàn)。為表明這些特殊情況,在因果圖上用一些記號標(biāo)明約束或限制條件。(4)把因果圖轉(zhuǎn)換成判定表。
(5)把判定表的每一列拿出來作為依據(jù),設(shè)計(jì)測試用例。
四、簡答(資料是搜集整理的,感謝前輩的解題)無
1.區(qū)別階段評審的與同行評審
同行評審目的:發(fā)現(xiàn)小規(guī)模工作產(chǎn)品的錯(cuò)誤,只要是找錯(cuò)誤;階段評審目的:評審模塊 階段作品的正確性 可行性 及完整性
同行評審人數(shù):3-7人 人員必須經(jīng)過同行評審會議的培訓(xùn),由SQA指導(dǎo)
階段評審人數(shù):5人左右 評審人必須是專家 具有系統(tǒng)評審資格
同行評審內(nèi)容:內(nèi)容小 一般文檔 < 40頁, 代碼 < 500行 階段評審內(nèi)容: 內(nèi)容多,主要看重點(diǎn)
同行評審時(shí)間:一小部分工作產(chǎn)品完成
階段評審時(shí)間: 通常是設(shè)臵在關(guān)鍵路徑的時(shí)間點(diǎn)上!2.什么是軟件測試
為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程
3簡述集成測試的過程
系統(tǒng)集成測試主要包括以下過程:
1.構(gòu)建的確認(rèn)過程。
2.補(bǔ)丁的確認(rèn)過程。
3.系統(tǒng)集成測試測試組提交過程。
4.測試用例設(shè)計(jì)過程。
5.測試代碼編寫過程。
6.Bug的報(bào)告過程。
7.每周/每兩周的構(gòu)建過程。
8.點(diǎn)對點(diǎn)的測試過程。
9.組內(nèi)培訓(xùn)過程。怎么做好文檔測試
仔細(xì)閱讀,跟隨每個(gè)步驟,檢查每個(gè)圖形,嘗試每個(gè)示例。P142 檢查文檔的編寫是否滿足文檔編寫的目的內(nèi)容是否齊全,正確
內(nèi)容是否完善
標(biāo)記是否正確 白盒測試有幾種方法
總體上分為靜態(tài)方法和動態(tài)方法兩大類。
靜態(tài):關(guān)鍵功能是檢查軟件的表示和描述是否一致,沒有沖突或者沒有歧義
動態(tài):語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、路徑覆蓋。
6系統(tǒng)測試計(jì)劃是否需要同行審批,為什么
需要,系統(tǒng)測試計(jì)劃屬于項(xiàng)目階段性關(guān)鍵文檔,因此需要評審。
7Alpha測試與beta的區(qū)別
Alpha測試 在系統(tǒng)開發(fā)接近完成時(shí)對應(yīng)用系統(tǒng)的測試;測試后仍然會有少量的設(shè)計(jì)變更。這種測試一般由最終用戶或其它人員完成,不能由程序或測試員完成。
Beta測試 當(dāng)開發(fā)和測試根本完成時(shí)所做的測試,最終的錯(cuò)誤和問題需要在最終發(fā)行前找到。這種測試一般由最終用戶或其它人員完成,不能由程序員或測試員完成。
8比較負(fù)載測試,容量測試和強(qiáng)度測試的區(qū)別
負(fù)載測試:在一定的工作負(fù)荷下,系統(tǒng)的負(fù)荷及響應(yīng)時(shí)間。
強(qiáng)度測試:在一定的負(fù)荷條件下,在較長時(shí)間跨度內(nèi)的系統(tǒng)連續(xù)運(yùn)行給系統(tǒng)性能所造成的影響。
容量測試:容量測試目的是通過測試預(yù)先分 析出反映軟件系統(tǒng)應(yīng)用特征的某項(xiàng)指標(biāo)的極限值(如最大并發(fā)用戶數(shù)、數(shù)據(jù)庫記錄數(shù)等),系統(tǒng)在其極限值狀態(tài)下沒有出現(xiàn)任何軟件故障或還能保持主要功能正常運(yùn)行。容量測試還將確定測試對象在給定時(shí)間內(nèi)能夠持續(xù)處理的最大負(fù)載或工作量。容量測試的目的是使系統(tǒng)承受超額的數(shù)據(jù)容量來發(fā)現(xiàn)它是否能夠正確處理。容量測試是面向數(shù)據(jù)的,并且它的目的是顯示系統(tǒng)可以處理目標(biāo)內(nèi)確定的數(shù)據(jù)容量。
9測試結(jié)束的標(biāo)準(zhǔn)是什么?
用例全部測試。
覆蓋率達(dá)到標(biāo)準(zhǔn)。
缺陷率達(dá)到標(biāo)準(zhǔn)。
其他指標(biāo)達(dá)到質(zhì)量標(biāo)準(zhǔn) 10描述軟件測試活動的生命周期?
測試周期分為計(jì)劃、設(shè)計(jì)、實(shí)現(xiàn)、執(zhí)行、總結(jié)。其中:
計(jì)劃:對整個(gè)測試周期中所有活動進(jìn)行規(guī)劃,估計(jì)工作量、風(fēng)險(xiǎn),安排人力物力資源,安排進(jìn)度等;
設(shè)計(jì):完成測試方案,從技術(shù)層面上對測試進(jìn)行規(guī)劃;
實(shí)現(xiàn):進(jìn)行測試用例和測試規(guī)程設(shè)計(jì);
執(zhí)行:根據(jù)前期完成的計(jì)劃、方案、用例、規(guī)程等文檔,執(zhí)行測試用例。
總結(jié):記錄測試結(jié)果,進(jìn)行測試分析,完成測試報(bào)告。
11軟件的缺陷等級應(yīng)如何劃分?
A類—嚴(yán)重錯(cuò)誤,包括以下各種錯(cuò)誤: 1. 由于程序所引起的死機(jī),非法退出 2. 死循環(huán) 3. 數(shù)據(jù)庫發(fā)生死鎖 4. 因錯(cuò)誤操作導(dǎo)致的程序中斷 5. 功能錯(cuò)誤 6. 與數(shù)據(jù)庫連接錯(cuò)誤 7. 數(shù)據(jù)通訊錯(cuò)誤
B類—較嚴(yán)重錯(cuò)誤,包括以下各種錯(cuò)誤: 1. 程序錯(cuò)誤 2. 程序接口錯(cuò)誤 3. 數(shù)據(jù)庫的表、業(yè)務(wù)規(guī)則、缺省值未加完整性等約束條件
C類—一般性錯(cuò)誤,包括以下各種錯(cuò)誤: 1. 操作界面錯(cuò)誤(包括數(shù)據(jù)窗口內(nèi)列名定義、含義是否一致)2. 打印內(nèi)容、格式錯(cuò)誤 3. 簡單的輸入限制未放在前臺進(jìn)行控制 4. 刪除操作未給出提示 5. 數(shù)據(jù)庫表中有過多的空字段
D類—較小錯(cuò)誤,包括以下各種錯(cuò)誤: 1. 界面不規(guī)范 2. 輔助說明描述不清楚 3. 輸入輸出不規(guī)范 4. 長操作未給用戶提示 5. 提示窗口文字未采用行業(yè)術(shù)語 6. 可輸入?yún)^(qū)域和只讀區(qū)域沒有明顯的區(qū)分標(biāo)志
E類—測試建議
大體是這樣,還會有一些變動,同時(shí)最后一道題出的是畫流程圖和控制圖的題,等腰三角形那個(gè)
01.為什么要在一個(gè)團(tuán)隊(duì)中開展軟件測試工作?
因?yàn)闆]有經(jīng)過測試的軟件很難在發(fā)布之前知道該軟件的質(zhì)量,就好比 ISO 質(zhì)量認(rèn)證一 樣,測試同樣也需要質(zhì)量的保證,這個(gè)時(shí)候就需要在團(tuán)隊(duì)中開展軟件測試的工作。在測試的 過程發(fā)現(xiàn)軟件中存在的問題,及時(shí)讓開發(fā)人員得知并修改問題,在即將發(fā)布時(shí),從測試報(bào)告 04.的測試類型的區(qū)別與聯(lián)系(如功能測試、性能測試……)測試類型有:功能測試,性能測試,界面測試。
功能測試在測試工作中占的比例最大,功能測試也叫黑盒測試。是把測試對象看作一個(gè) 黑盒子。利用黑盒測試法進(jìn)行動態(tài)測試時(shí),需要測試軟件產(chǎn)品的功能,不需測試軟件產(chǎn)品的 內(nèi)部結(jié)構(gòu)和處理過程。采用黑盒技術(shù)設(shè)計(jì)測試用例的方法有:等價(jià)類劃分、邊界值分析、錯(cuò) 誤推測、因果圖和綜合策略。
性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各 項(xiàng)性能指標(biāo)進(jìn)行測試。負(fù)載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進(jìn)行。通過負(fù)載 測試,確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負(fù)載逐漸增加時(shí),系統(tǒng)各項(xiàng)性能指 標(biāo)的變化情況。壓力測試是通過確定一個(gè)系統(tǒng)的瓶頸或者不能接收的性能點(diǎn),來獲得系統(tǒng)能 提供的最大服務(wù)級別的測試。
界面測試,界面是軟件與用戶交互的最直接的層,界面的好壞決定用戶對軟件的第一印 象。而且設(shè)計(jì)良好的界面能夠引導(dǎo)用戶自己完成相應(yīng)的操作,起到向?qū)У淖饔?。同時(shí)界面如 同人的面孔,具有吸引用戶的直接優(yōu)勢。設(shè)計(jì)合理的界面能給用戶帶來輕松愉悅的感受和成 功的感覺,相反由于界面設(shè)計(jì)的失敗,讓用戶有挫敗感,再實(shí)用強(qiáng)大的功能都可能在用戶的 畏懼與放棄中付諸東流。
區(qū)別在于,功能測試關(guān)注產(chǎn)品的所有功能上,要考慮到每個(gè)細(xì)節(jié)功能,每個(gè)可能存在的 功能問題。性能測試主要關(guān)注于產(chǎn)品整體的多用戶并發(fā)下的穩(wěn)定性和健壯性。界面測試更關(guān) 注于用戶體驗(yàn)上,用戶使用該產(chǎn)品的時(shí)候是否易用,是否易懂,是否規(guī)范(快捷鍵之類的),是否美觀(能否吸引用戶的注意力),是否安全(盡量在前臺避免用戶無意輸入無效的數(shù)據(jù),當(dāng)然考慮到體驗(yàn)性,不能太粗魯?shù)膹棾鼍妫??做某個(gè)性能測試的時(shí)候,首先它可能是個(gè)功 能點(diǎn),首先要保證它的功能是沒問題的,然后再考慮該功能點(diǎn)的性能測試
04.您認(rèn)為做好測試用例設(shè)計(jì)工作的關(guān)鍵是什么?
白盒測試用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果 黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測 試,以最少的用例在合理的時(shí)間內(nèi)發(fā)現(xiàn)最多的問題
05.請?jiān)囍容^一下黑盒測試、白盒測試、單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試的區(qū) 別與聯(lián)系。
黑盒測試:已知產(chǎn)品的功能設(shè)計(jì)規(guī)格,可以進(jìn)行測試證明每個(gè)實(shí)現(xiàn)了的功能是否符合要 求。
白盒測試:已知產(chǎn)品的內(nèi)部工作過程,可以通過測試證明每種內(nèi)部操作是否符合設(shè)計(jì)規(guī) 格要求,所有內(nèi)部成分是否以經(jīng)過檢查。
軟件的黑盒測試意味著測試要在軟件的接口處進(jìn)行。這種方法是把測試對象看做一個(gè)黑 盒子,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或數(shù)據(jù)驅(qū)動測試。黑盒 測試主要是為了發(fā)現(xiàn)以下幾類錯(cuò)誤:
1、是否有不正確或遺漏的功能?
2、在接口上,輸入是否能正確的接受?能否輸出正確的結(jié)果?
3、是否有數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息(例如數(shù)據(jù)文件)訪問錯(cuò)誤?
4、性能上是否能夠滿足要求?
5、是否有初始化或終止性錯(cuò)誤?
軟件的白盒測試是對軟件的過程性細(xì)節(jié)做細(xì)致的檢查。這種方法是把測試對象看做一個(gè) 打開的盒子,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計(jì)或選擇測試用例,對程序所有邏輯路徑進(jìn)行測試。通過在不同點(diǎn)檢查程序狀態(tài),確定實(shí)際狀態(tài)是否與預(yù)期的狀 態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試。白盒測試主要是想對程序模塊進(jìn)行 如下檢查:
1、對程序模塊的所有獨(dú)立的執(zhí)行路徑至少測試一遍。
2、對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。
3、在循環(huán)的邊界和運(yùn)行的界限內(nèi)執(zhí)行循環(huán)體。
4、測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性,等等。
單元測試(模塊測試)是開發(fā)者編寫的一小段代碼,用于檢驗(yàn)被測代碼的一個(gè)很小的、很明確的功能是否正確。通常而言,一個(gè)單元測試是用于判斷某個(gè)特定條件(或者場景)下 某個(gè)特定函數(shù)的行為。
單元測試是由程序員自己來完成,最終受益的也是程序員自己??梢赃@么說,程序員有 責(zé)任編寫功能代碼,同時(shí)也就有責(zé)任為自己的代碼編寫單元測試。執(zhí)行單元測試,就是為了 證明這段代碼的行為和我們期望的一致。
集成測試(也叫組裝測試,聯(lián)合測試)是單元測試的邏輯擴(kuò)展。它的最簡單的形式是: 兩個(gè)已經(jīng)測試過的單元組合成一個(gè)組件,并且測試它們之間的接口。從這一層意義上講,組 件是指多個(gè)單元的集成聚合。在現(xiàn)實(shí)方案中,許多單元組合成組件,而這些組件又聚合成程 序的更大部分。方法是測試片段的組合,并最終擴(kuò)展進(jìn)程,將您的模塊與其他組的模塊一起 測試。最后,將構(gòu)成進(jìn)程的所有模塊一起測試。系統(tǒng)測試是將經(jīng)過測試的子系統(tǒng)裝配成一個(gè)完整系統(tǒng)來測試。它是檢驗(yàn)系統(tǒng)是否確實(shí)能 提供系統(tǒng)方案說明書中指定功能的有效方法。(常見的聯(lián)調(diào)測試)
系統(tǒng)測試的目的是對最終軟件系統(tǒng)進(jìn)行全面的測試,確保最終軟件系統(tǒng)滿足產(chǎn)品需求并
且遵循系統(tǒng)設(shè)計(jì)。
驗(yàn)收測試是部署軟件之前的最后一個(gè)測試操作。驗(yàn)收測試的目的是確保軟件準(zhǔn)備就緒,并且可以讓最終用戶將其用于執(zhí)行軟件的既定功能和任務(wù)。驗(yàn)收測試是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設(shè)計(jì) 把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步 驗(yàn)證軟件的有效性,這就是驗(yàn)收測試的任務(wù),即軟件的功能和性能如同用戶所合理期待的那 樣。
06.測試計(jì)劃工作的目的是什么?測試計(jì)劃工作的內(nèi)容都包括什么?其中哪些是最重要 的?
軟件測試計(jì)劃是指導(dǎo)測試過程的綱領(lǐng)性文件,包含了產(chǎn)品概述、測試策略、測試方法、測試區(qū)域、測試配臵、測試周期、測試資源、測試交流、風(fēng)險(xiǎn)分析等內(nèi)容。借助軟件測試計(jì) 劃,參與測試的項(xiàng)目成員,尤其是測試管理人員,可以明確測試任務(wù)和測試方法,保持測試 實(shí)施過程的順暢溝通,跟蹤和控制測試進(jìn)度,應(yīng)對測試過程中的各種變更。測試計(jì)劃和測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測試計(jì)劃主要從宏觀上規(guī)劃 測試活動的范圍、方法和資源配臵,而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。所以其中最重要的是測試測試策略和測試方法(最好是能先評審)
07.您認(rèn)為做好測試計(jì)劃工作的關(guān)鍵是什么? 1.明確測試的目標(biāo),增強(qiáng)測試計(jì)劃的實(shí)用性
編寫軟件測試計(jì)劃得重要目的就是使測試過程能夠發(fā)現(xiàn)更多的軟件缺陷,因此軟件測試 計(jì)劃的價(jià)值取決于它對幫助管理測試項(xiàng)目,并且找出軟件潛在的缺陷。因此,軟件測試計(jì)劃 中的測試范圍必須高度覆蓋功能需求,測試方法必須切實(shí)可行,測試工具并且具有較高的實(shí) 用性,便于使用,生成的測試結(jié)果直觀、準(zhǔn)確 2.堅(jiān)持“5W”規(guī)則,明確內(nèi)容與過程 “5W”規(guī)則指的是“What(做什么)”、“Why(為什么做)”、“When(何時(shí)做)”、“Where
(在哪里)”、“How(如何做)”。利用“5W”規(guī)則創(chuàng)建軟件測試計(jì)劃,可以幫助測試團(tuán)隊(duì)理
解測試的目的(Why),明確測試的范圍和內(nèi)容(What),確定測試的開始和結(jié)束日期(When),指出測試的方法和工具(How),給出測試文檔和軟件的存放位臵(Where)。3.采用評審和更新機(jī)制,保證測試計(jì)劃滿足實(shí)際需求
測試計(jì)劃寫作完成后,如果沒有經(jīng)過評審,直接發(fā)送給測試團(tuán)隊(duì),測試計(jì)劃內(nèi)容的可能不準(zhǔn) 確或遺漏測試內(nèi)容,或者軟件需求變更引起測試范圍的增減,而測試計(jì)劃的內(nèi)容沒有及時(shí)更 新,誤導(dǎo)測試執(zhí)行人員。
4.分別創(chuàng)建測試計(jì)劃與測試詳細(xì)規(guī)格、測試用例
應(yīng)把詳細(xì)的測試技術(shù)指標(biāo)包含到獨(dú)立創(chuàng)建的測試詳細(xì)規(guī)格文檔,把用于指導(dǎo)測試小組執(zhí) 行測試過程的測試用例放到獨(dú)立創(chuàng)建的測試用例文檔或測試用例管理數(shù)據(jù)庫中。測試計(jì)劃和 測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測試計(jì)劃主要從宏觀上規(guī)劃測試活動的 范圍、方法和資源配臵,而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。
08.您所熟悉的測試用例設(shè)計(jì)方法都有哪些?請分別以具體的例子來說明這些方法在測試 用例設(shè)計(jì)工作中的應(yīng)用。1.等價(jià)類劃分
劃分等價(jià)類: 等價(jià)類是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數(shù)據(jù)對于揭露程 序中的錯(cuò)誤都是等效的.并合理地假定:測試某等價(jià)類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價(jià)類,在每一個(gè)等價(jià)類中取一個(gè)數(shù)據(jù)作為測試的
輸入條件,就可以用少量代表性的測試數(shù)據(jù).取得較好的測試結(jié)果.等價(jià)類劃分可有兩種不同 的情況:有效等價(jià)類和無效等價(jià)類.2.邊界值分析法
邊界值分析方法是對等價(jià)類劃分方法的補(bǔ)充。測試工作經(jīng)驗(yàn)告訴我,大量的錯(cuò)誤是發(fā)生
在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部.因此針對各種邊界情況設(shè)計(jì)
測試用例,可以查出更多的錯(cuò)誤.使用邊界值分析方法設(shè)計(jì)測試用例,首先應(yīng)確定邊界情況.通常輸入和輸出等價(jià)類的邊界, 就是應(yīng)著重測試的邊界情況.應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù), 而不是選取等價(jià)類中的典型值或任意值作為測試數(shù)據(jù).3.錯(cuò)誤推測法
基于經(jīng)驗(yàn)和直覺推測程序中所有可能存在的各種錯(cuò)誤, 從而有針對性的設(shè)計(jì)測試用例 的方法.錯(cuò)誤推測方法的基本思想: 列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情
況,根據(jù)他們選擇測試用例.例如, 在單元測試時(shí)曾列出的許多在模塊中常見的錯(cuò)誤.以前產(chǎn)
品測試中曾經(jīng)發(fā)現(xiàn)的錯(cuò)誤等, 這些就是經(jīng)驗(yàn)的總結(jié).還有, 輸入數(shù)據(jù)和輸出數(shù)據(jù)為 0 的情況.輸入表格為空格或輸入表格只有一行.這些都是容易發(fā)生錯(cuò)誤的情況.可選擇這些情況下的
例子作為測試用例.4.因果圖方法
前面介紹的等價(jià)類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條 件之間的聯(lián)系, 相互組合等.考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況.但要
檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價(jià)類,他們之間的 組合情況也相當(dāng)多.因此必須考慮采用一種適合于描述對于多種條件的組合,相應(yīng)產(chǎn)生多個(gè) 動作的形式來考慮設(shè)計(jì)測試用例.這就需要利用因果圖(邏輯模型).因果圖方法最終生成 的就是判定表.它適合于檢查程序輸入條件的各種組合情況.09.請以您以往的實(shí)際工作為例,10.詳細(xì)的描述一次測試用例設(shè)計(jì)的完整的過程。就說最近的這次網(wǎng)站功能的測試吧
首先:得到相關(guān)文檔(需求文檔和設(shè)計(jì)文檔),理解需求和設(shè)計(jì)設(shè)計(jì)思想后,想好測試 策略(測試計(jì)劃簡單點(diǎn)就OK 了),考慮到測試環(huán)境,測試用例,測試時(shí)間等問題。第二步:設(shè)計(jì)測試用例,測試策略是:把網(wǎng)站部分的功能點(diǎn)測試完,然后在進(jìn)行系統(tǒng)測 試(另外個(gè)模塊呢有另一個(gè)測試人員負(fù)責(zé),可以進(jìn)行聯(lián)調(diào)測試),網(wǎng)站模塊的測試基本是功 能測試和界面測試(用戶并發(fā)的可能性很小,所以不考慮):這次的網(wǎng)站的輸入數(shù)據(jù)呢是使 用數(shù)據(jù)庫中的某張表記錄,如果表中某一數(shù)據(jù)記錄中新加進(jìn)來的(還沒有被處理的,有個(gè)標(biāo) 志位),網(wǎng)站啟動后會立刻去刷那張表,得到多條數(shù)據(jù),然后在進(jìn)行處理。處理過程中,會 經(jīng)歷3 個(gè)步驟,網(wǎng)站才算完成了它的任務(wù)。有 3 個(gè)步驟呢,就可以分別對 這 3 個(gè)步驟進(jìn) 行測試用例的設(shè)計(jì),盡量覆蓋到各種輸入情況(包括數(shù)據(jù)庫中的數(shù)據(jù),用戶的輸入等),得出 了差不多50 個(gè)用例。界面測試,也就是用戶看的到的地方,包括發(fā)送的郵件和用戶填寫資 料的頁面展示。
第三步:搭建測試環(huán)境(為什么這個(gè)時(shí)候考慮測試環(huán)境呢?因?yàn)槲覍W(wǎng)站環(huán)境已經(jīng)很熟 了,只有有機(jī)器能空于下來做該功能測試就可以做了),因?yàn)榫W(wǎng)站本身的環(huán)境搭建和其他的 系統(tǒng)有點(diǎn)不同,它需要的測試環(huán)境比較麻煩,需要web 服務(wù)器(Apache,tomcat),不過這次
需求呢,網(wǎng)站部分只用到了tomcat,所以只要有tomcat 即可 第四步:執(zhí)行測試
11.您以往是否曾經(jīng)從事過性能測試工作?如果有,12.請盡可能的詳細(xì)描述您以往的性能 測試工作的完整過程。
是的,曾經(jīng)做過網(wǎng)站方面的性能測試,雖然做的時(shí)間并不久(2 個(gè)月吧),當(dāng)時(shí)呢,是 有位網(wǎng)站性能測試經(jīng)驗(yàn)非常豐富的前輩帶著我一起做。性能測試類型包括負(fù)載測試,強(qiáng)度測試,容量測試等
負(fù)載測試:負(fù)載測試是一種性能測試指數(shù)據(jù)在超負(fù)荷環(huán)境中運(yùn)行,程序是否能夠承擔(dān)。強(qiáng)度測試: 強(qiáng)度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運(yùn)行情 況
容量測試:確定系統(tǒng)可處理同時(shí)在線的最大用戶數(shù)
在網(wǎng)站流量逐漸加大的情況下,開始考慮做性能測試了,首先要寫好性能測試計(jì)劃,根 據(jù)運(yùn)營數(shù)據(jù)得出流量最大的頁面(如果是第一次的話,一般是首頁,下載頁,個(gè)人帳戶頁流 量最大,而且以某種百分比),Web 服務(wù)器指標(biāo)指標(biāo):
* Avg Rps:平均每秒鐘響應(yīng)次數(shù)=總請求時(shí)間 / 秒數(shù); * Successful Rounds:成功的請求; * Failed Rounds :失敗的請求;
* Successful Hits :成功的點(diǎn)擊次數(shù); * Failed Hits :失敗的點(diǎn)擊次數(shù); * Hits Per Second :每秒點(diǎn)擊次數(shù);
* Successful Hits Per Second :每秒成功的點(diǎn)擊次數(shù); * Failed Hits Per Second :每秒失敗的點(diǎn)擊次數(shù); * Attempted Connections :嘗試鏈接數(shù);
第二篇:軟件測試面試題整理20111019
軟件測試面試題整理
01.為什么要在一個(gè)團(tuán)隊(duì)中開展軟件測試工作?
因?yàn)闆]有經(jīng)過測試的軟件很難在發(fā)布之前知道該軟件的質(zhì)量,就好比ISO質(zhì)量認(rèn)證一樣,測試同樣也需要質(zhì)量的保證,這個(gè)時(shí)候就需要在團(tuán)隊(duì)中開展軟件測試的工作。在測試的過程發(fā)現(xiàn)軟件中存在的問題,及時(shí)讓開發(fā)人員得知并修改問題,在即將發(fā)布時(shí),從測試報(bào)告中得出軟件的質(zhì)量情況。
02.您在以往的測試工作中都曾經(jīng)具體從事過哪些工作?其中最擅長哪部分工作?
我曾經(jīng)做過web測試,后臺測試,客戶端軟件,其中包括功能測試,性能測試,用戶體驗(yàn)測試。最擅長的是功能測試
03.您所熟悉的軟件測試類型都有哪些?請?jiān)囍謩e比較這些不同04.的測試類型的區(qū)別與聯(lián)系(如功能測試、性能測試……)
測試類型有:功能測試,性能測試,界面測試。
功能測試在測試工作中占的比例最大,功能測試也叫黑盒測試。是把測試對象看作一個(gè)黑盒子。利用黑盒測試法進(jìn)行動態(tài)測試時(shí),需要測試軟件產(chǎn)品的功能,不需測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。采用黑盒技術(shù)設(shè)計(jì)測試用例的方法有:等價(jià)類劃分、邊界值分析、錯(cuò)誤推測、因果圖和綜合策略。
性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測試。負(fù)載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進(jìn)行。通過負(fù)載測試,確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負(fù)載逐漸增加時(shí),系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。壓力測試是通過確定一個(gè)系統(tǒng)的瓶頸或者不能接收的性能點(diǎn),來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。
界面測試,界面是軟件與用戶交互的最直接的層,界面的好壞決定用戶對軟件的第一印象。而且設(shè)計(jì)良好的界面能夠引導(dǎo)用戶自己完成相應(yīng)的操作,起到向?qū)У淖饔谩M瑫r(shí)界面如同人的面孔,具有吸引用戶的直接優(yōu)勢。設(shè)計(jì)合理的界面能給用戶帶來輕松愉悅的感受和成功的感覺,相反由于界面設(shè)計(jì)的失敗,讓用戶有挫敗感,再實(shí)用強(qiáng)大的功能都可能在用戶的畏懼與放棄中付諸東流。區(qū)別在于,功能測試關(guān)注產(chǎn)品的所有功能上,要考慮到每個(gè)細(xì)節(jié)功能,每個(gè)可能存在的功能問題。性能測試主要關(guān)注于產(chǎn)品整體的多用戶并發(fā)下的穩(wěn)定性和健壯性。界面測試更關(guān)注于用戶體驗(yàn)上,用戶使用該產(chǎn)品的時(shí)候是否易用,是否易懂,是否規(guī)范(快捷鍵之類的),是否美觀(能否吸引用戶的注意力),是否安全(盡量在前臺避免用戶無意輸入無效的數(shù)據(jù),當(dāng)然考慮到體驗(yàn)性,不能太粗魯?shù)膹棾鼍妫??做某個(gè)性能測試的時(shí)候,首先它可能是個(gè)功能點(diǎn),首先要保證它的功能是沒問題的,然后再考慮該功能點(diǎn)的性能測試
04.您認(rèn)為做好測試用例設(shè)計(jì)工作的關(guān)鍵是什么?
白盒測試用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果 黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測試,以最少的用例在合理的時(shí)間內(nèi)發(fā)現(xiàn)最多的問題
05.請?jiān)囍容^一下黑盒測試、白盒測試、單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試的區(qū)別與聯(lián)系。
黑盒測試:已知產(chǎn)品的功能設(shè)計(jì)規(guī)格,可以進(jìn)行測試證明每個(gè)實(shí)現(xiàn)了的功能是否符合要求。
白盒測試:已知產(chǎn)品的內(nèi)部工作過程,可以通過測試證明每種內(nèi)部操作是否符合設(shè)計(jì)規(guī)格要求,所有內(nèi)部成分是否以經(jīng)過檢查。
軟件的黑盒測試意味著測試要在軟件的接口處進(jìn)行。這種方法是把測試對象看做一個(gè)黑盒子,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或數(shù)據(jù)驅(qū)動測試。黑盒測試主要是為了發(fā)現(xiàn)以下幾類錯(cuò)誤:
1、是否有不正確或遺漏的功能?
2、在接口上,輸入是否能正確的接受?能否輸出正確的結(jié)果?
3、是否有數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息(例如數(shù)據(jù)文件)訪問錯(cuò)誤?
4、性能上是否能夠滿足要求?
5、是否有初始化或終止性錯(cuò)誤?
軟件的白盒測試是對軟件的過程性細(xì)節(jié)做細(xì)致的檢查。這種方法是把測試對象看做一個(gè)打開的盒子,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計(jì)或選擇測試用例,對程序所有邏輯路徑進(jìn)行測試。通過在不同點(diǎn)檢查程序狀態(tài),確定實(shí)際狀態(tài)是否與預(yù)期的狀態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試。白盒測試主要是想對程序模塊進(jìn)行如下檢查:
1、對程序模塊的所有獨(dú)立的執(zhí)行路徑至少測試一遍。
2、對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。
3、在循環(huán)的邊界和運(yùn)行的界限內(nèi)執(zhí)行循環(huán)體。
4、測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性,等等。
單元測試(模塊測試)是開發(fā)者編寫的一小段代碼,用于檢驗(yàn)被測代碼的一個(gè)很小的、很明確的功能是否正確。通常而言,一個(gè)單元測試是用于判斷某個(gè)特定條件(或者場景)下某個(gè)特定函數(shù)的行為。
單元測試是由程序員自己來完成,最終受益的也是程序員自己??梢赃@么說,程序員有責(zé)任編寫功能代碼,同時(shí)也就有責(zé)任為自己的代碼編寫單元測試。執(zhí)行單元測試,就是為了證明這段代碼的行為和我們期望的一致。
集成測試(也叫組裝測試,聯(lián)合測試)是單元測試的邏輯擴(kuò)展。它的最簡單的形式是:兩個(gè)已經(jīng)測試過的單元組合成一個(gè)組件,并且測試它們之間的接口。從這一層意義上講,組件是指多個(gè)單元的集成聚合。在現(xiàn)實(shí)方案中,許多單元組合成組件,而這些組件又聚合成程序的更大部分。方法是測試片段的組合,并最終擴(kuò)展進(jìn)程,將您的模塊與其他組的模塊一起測試。最后,將構(gòu)成進(jìn)程的所有模塊一起測試。
系統(tǒng)測試是將經(jīng)過測試的子系統(tǒng)裝配成一個(gè)完整系統(tǒng)來測試。它是檢驗(yàn)系統(tǒng)是否確實(shí)能提供系統(tǒng)方案說明書中指定功能的有效方法。(常見的聯(lián)調(diào)測試)系統(tǒng)測試的目的是對最終軟件系統(tǒng)進(jìn)行全面的測試,確保最終軟件系統(tǒng)滿足產(chǎn)品需求并且遵循系統(tǒng)設(shè)計(jì)。
驗(yàn)收測試是部署軟件之前的最后一個(gè)測試操作。驗(yàn)收測試的目的是確保軟件準(zhǔn)備就緒,并且可以讓最終用戶將其用于執(zhí)行軟件的既定功能和任務(wù)。
驗(yàn)收測試是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是驗(yàn)收測試的任務(wù),即軟件的功能和性能如同用戶所合理期待的那樣。
06.測試計(jì)劃工作的目的是什么?測試計(jì)劃工作的內(nèi)容都包括什么?其中哪些是最重要的?
軟件測試計(jì)劃是指導(dǎo)測試過程的綱領(lǐng)性文件,包含了產(chǎn)品概述、測試策略、測試方法、測試區(qū)域、測試配置、測試周期、測試資源、測試交流、風(fēng)險(xiǎn)分析等內(nèi)容。借助軟件測試計(jì)劃,參與測試的項(xiàng)目成員,尤其是測試管理人員,可以明確測試任務(wù)和測試方法,保持測試實(shí)施過程的順暢溝通,跟蹤和控制測試進(jìn)度,應(yīng)對測試過程中的各種變更。
測試計(jì)劃和測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測試計(jì)劃主要從宏觀上規(guī)劃測試活動的范圍、方法和資源配置,而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。所以其中最重要的是測試測試策略和測試方法(最好是能先評審)
07.您認(rèn)為做好測試計(jì)劃工作的關(guān)鍵是什么?
1.明確測試的目標(biāo),增強(qiáng)測試計(jì)劃的實(shí)用性
編寫軟件測試計(jì)劃得重要目的就是使測試過程能夠發(fā)現(xiàn)更多的軟件缺陷,因此軟件測試計(jì)劃的價(jià)值取決于它對幫助管理測試項(xiàng)目,并且找出軟件潛在的缺陷。因此,軟件測試計(jì)劃中的測試范圍必須高度覆蓋功能需求,測試方法必須切實(shí)可行,測試工具并且具有較高的實(shí)用性,便于使用,生成的測試結(jié)果直觀、準(zhǔn)確
2.堅(jiān)持“5W”規(guī)則,明確內(nèi)容與過程
“5W”規(guī)則指的是“What(做什么)”、“Why(為什么做)”、“When(何時(shí)做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”規(guī)則創(chuàng)建軟件測試計(jì)劃,可以幫助測試團(tuán)隊(duì)理解測試的目的(Why),明確測試的范圍和內(nèi)容(What),確定測試的開始和結(jié)束日期(When),指出測試的方法和工具(How),給出測試文檔和軟件的存放位置(Where)。
3.采用評審和更新機(jī)制,保證測試計(jì)劃滿足實(shí)際需求
測試計(jì)劃寫作完成后,如果沒有經(jīng)過評審,直接發(fā)送給測試團(tuán)隊(duì),測試計(jì)劃內(nèi)容的可能不準(zhǔn)確或遺漏測試內(nèi)容,或者軟件需求變更引起測試范圍的增減,而測試計(jì)劃的內(nèi)容沒有及時(shí)更新,誤導(dǎo)測試執(zhí)行人員。
4.分別創(chuàng)建測試計(jì)劃與測試詳細(xì)規(guī)格、測試用例
應(yīng)把詳細(xì)的測試技術(shù)指標(biāo)包含到獨(dú)立創(chuàng)建的測試詳細(xì)規(guī)格文檔,把用于指導(dǎo)測試小組執(zhí)行測試過程的測試用例放到獨(dú)立創(chuàng)建的測試用例文檔或測試用例管理數(shù)據(jù)庫中。測試計(jì)劃和測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測試計(jì)劃主要從宏觀上規(guī)劃測試活動的范圍、方法和資源配置,而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。
08.您所熟悉的測試用例設(shè)計(jì)方法都有哪些?請分別以具體的例子來說明這些方法在測試用例設(shè)計(jì)工作中的應(yīng)用。
1.等價(jià)類劃分
劃分等價(jià)類: 等價(jià)類是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數(shù)據(jù)對于揭露程序中的錯(cuò)誤都是等效的.并合理地假定:測試某等價(jià)類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價(jià)類,在每一個(gè)等價(jià)類中取一個(gè)數(shù)據(jù)作為測試的輸入條件,就可以用少量代表性的測試數(shù)據(jù).取得較好的測試結(jié)果.等價(jià)類劃分可有兩種不同的情況:有效等價(jià)類和無效等價(jià)類.2.邊界值分析法
邊界值分析方法是對等價(jià)類劃分方法的補(bǔ)充。測試工作經(jīng)驗(yàn)告訴我,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部.因此針對各種邊界情況設(shè)計(jì)測試用例,可以查出更多的錯(cuò)誤.使用邊界值分析方法設(shè)計(jì)測試用例,首先應(yīng)確定邊界情況.通常輸入和輸出等價(jià)類的邊界,就是應(yīng)著重測試的邊界情況.應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值作為測試數(shù)據(jù).3.錯(cuò)誤推測法
基于經(jīng)驗(yàn)和直覺推測程序中所有可能存在的各種錯(cuò)誤, 從而有針對性的設(shè)計(jì)測試用例的方法.錯(cuò)誤推測方法的基本思想: 列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情況,根據(jù)他們選擇測試用例.例如, 在單元測試時(shí)曾列出的許多在模塊中常見的錯(cuò)誤.以前產(chǎn)品測試中曾經(jīng)發(fā)現(xiàn)的錯(cuò)誤等, 這些就是經(jīng)驗(yàn)的總結(jié).還有, 輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況.輸入表格為空格或輸入表格只有一行.這些都是容易發(fā)生錯(cuò)誤的情況.可選擇這些情況下的例子作為測試用例.4.因果圖方法
前面介紹的等價(jià)類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系, 相互組合等.考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況.但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價(jià)類,他們之間的組合情況也相當(dāng)多.因此必須考慮采用一種適合于描述對于多種條件的組合,相應(yīng)產(chǎn)生多個(gè)動作的形式來考慮設(shè)計(jì)測試用例.這就需要利用因果圖(邏輯模型).因果圖方法最終生成的就是判定表.它適合于檢查程序輸入條件的各種組合情況.09.請以您以往的實(shí)際工作為例,10.詳細(xì)的描述一次測試用例設(shè)計(jì)的完整的過程。
就說最近的這次網(wǎng)站功能的測試吧
首先:得到相關(guān)文檔(需求文檔和設(shè)計(jì)文檔),理解需求和設(shè)計(jì)設(shè)計(jì)思想后,想好測試策略(測試計(jì)劃簡單點(diǎn)就OK了),考慮到測試環(huán)境,測試用例,測試時(shí)間等問題。
第二步:設(shè)計(jì)測試用例,測試策略是:把網(wǎng)站部分的功能點(diǎn)測試完,然后在進(jìn)行系統(tǒng)測試(另外個(gè)模塊呢有另一個(gè)測試人員負(fù)責(zé),可以進(jìn)行聯(lián)調(diào)測試),網(wǎng)站模塊的測試基本是功能測試和界面測試(用戶并發(fā)的可能性很小,所以不考慮):這次的網(wǎng)站的輸入數(shù)據(jù)呢是使用數(shù)據(jù)庫中的某張表記錄,如果表中某一數(shù)據(jù)記錄中新加進(jìn)來的(還沒有被處理的,有個(gè)標(biāo)志位),網(wǎng)站啟動后會立刻去刷那張表,得到多條數(shù)據(jù),然后在進(jìn)行處理。處理過程中,會經(jīng)歷3個(gè)步驟,網(wǎng)站才算完成了它的任務(wù)。有3個(gè)步驟呢,就可以分別對這3個(gè)步驟進(jìn)行測試用例的設(shè)計(jì),盡量覆蓋到各種輸入情況(包括數(shù)據(jù)庫中的數(shù)據(jù),用戶的輸入等),得出了差不多50個(gè)用例。界面測試,也就是用戶看的到的地方,包括發(fā)送的郵件和用戶填寫資料的頁面展示。
第三步:搭建測試環(huán)境(為什么這個(gè)時(shí)候考慮測試環(huán)境呢?因?yàn)槲覍W(wǎng)站環(huán)境已經(jīng)很熟了,只有有機(jī)器能空于下來做該功能測試就可以做了),因?yàn)榫W(wǎng)站本身的環(huán)境搭建和其他的系統(tǒng)有點(diǎn)不同,它需要的測試環(huán)境比較麻煩,需要web服務(wù)器(Apache,tomcat),不過這次需求呢,網(wǎng)站部分只用到了tomcat,所以只要有tomcat即可
第四步:執(zhí)行測試
11.您以往是否曾經(jīng)從事過性能測試工作?如果有,12.請盡可能的詳細(xì)描述您以往的性能測試工作的完整過程。
是的,曾經(jīng)做過網(wǎng)站方面的性能測試,雖然做的時(shí)間并不久(2個(gè)月吧),當(dāng)時(shí)呢,是有位網(wǎng)站性能測試經(jīng)驗(yàn)非常豐富的前輩帶著我一起做。
性能測試類型包括負(fù)載測試,強(qiáng)度測試,容量測試等
負(fù)載測試:負(fù)載測試是一種性能測試指數(shù)據(jù)在超負(fù)荷環(huán)境中運(yùn)行,程序是否能夠承擔(dān)。
強(qiáng)度測試: 強(qiáng)度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運(yùn)行情況
容量測試:確定系統(tǒng)可處理同時(shí)在線的最大用戶數(shù)
在網(wǎng)站流量逐漸加大的情況下,開始考慮做性能測試了,首先要寫好性能測試計(jì)劃,根據(jù)運(yùn)營數(shù)據(jù)得出流量最大的頁面(如果是第一次的話,一般是首頁,下載頁,個(gè)人帳戶頁流量最大,而且以某種百分比),Web服務(wù)器指標(biāo)指標(biāo):
* Avg Rps:平均每秒鐘響應(yīng)次數(shù)=總請求時(shí)間 / 秒數(shù);
* Successful Rounds:成功的請求;
* Failed Rounds :失敗的請求;
* Successful Hits :成功的點(diǎn)擊次數(shù);
* Failed Hits :失敗的點(diǎn)擊次數(shù);
* Hits Per Second :每秒點(diǎn)擊次數(shù);
* Successful Hits Per Second :每秒成功的點(diǎn)擊次數(shù);
* Failed Hits Per Second :每秒失敗的點(diǎn)擊次數(shù);
* Attempted Connections :嘗試鏈接數(shù);
13.您在從事性能測試工作時(shí),14.是否使用過一些測試工具?如果有,15.請?jiān)囀鲈摴ぞ叩墓ぷ髟恚?6.并以一個(gè)具體的工作中的例子描述該工具是如何在實(shí)際工作中應(yīng)用的。
17.您認(rèn)為性能測試工作的目的是什么?做好性能測試工作的關(guān)鍵是什么?
18.在您以往的工作中,19.一條軟件缺陷(或者叫Bug)記錄都包含了哪些內(nèi)容?如何提交高質(zhì)量的軟件缺陷(Bug)記錄?
20.您以往所從事的軟件測試工作中,21.是否使用了一些工具來進(jìn)行軟件缺陷(Bug)的管理?如果有,22.請結(jié)合該工具描述軟件缺陷(Bug)跟蹤管理的流程。
23.您認(rèn)為在測試人員同24.開發(fā)人員的溝通過程中,25.如何提高溝通的效率和改善溝通的效果?維持測試人員同26.開發(fā)團(tuán)隊(duì)中其他成員良好的人際關(guān)系的關(guān)鍵是什么?
27.在您以往的測試工作中,28.最讓您感到不29.滿意或者不30.堪回首的事情是什么?您是如何來對待這些事情的?
31.在即將完成這次筆試前,32.您是否愿意談一些自己在以往的學(xué)習(xí)和工作中獲得的工作經(jīng)驗(yàn)和心得體會?(可以包括軟件測試、過程改進(jìn)、軟件開發(fā)或者與此無關(guān)的其他方面)
33.你對測試最大的興趣在哪里?為什么?
最大的興趣就是測試有難度,有挑戰(zhàn)性!做測試越久越能感覺到做好測試有多難。曾經(jīng)在無憂測試網(wǎng)上看到一篇文章,是關(guān)于如何做好一名測試工程師。
一共羅列了11,12點(diǎn),有部分是和人的性格有關(guān),有部分需要后天的努力。但除了性格有關(guān)的1,2點(diǎn)我沒有把握,其他點(diǎn)我都很有信心做好它。
剛開始進(jìn)入測試行業(yè)時(shí),對測試的認(rèn)識是從無憂測試網(wǎng)上了解到的一些資料,當(dāng)時(shí)是沖著做測試需要很多技能才能做的好,雖然入門容易,但做好很難,比開發(fā)更難,雖然當(dāng)時(shí)我很想做開發(fā)(學(xué)校專業(yè)課我基本上不缺席,因?yàn)槲蚁矚g我的專業(yè)),但看到測試比開發(fā)更難更有挑戰(zhàn)性,想做好測試的意志就更堅(jiān)定了。
不到一年半的測試工作中,當(dāng)時(shí)的感動和熱情沒有減退一點(diǎn)(即使環(huán)境問題以及自身經(jīng)驗(yàn),技術(shù)的不足,做測試的你一定也能理解)。
我覺得做測試整個(gè)過程中有2點(diǎn)讓我覺得很有難度(對我來說,有難度的東西我就非常感興趣),第一是測試用例的設(shè)計(jì),因?yàn)闇y試的精華就在測試用例的設(shè)計(jì)上了,要在版本出來之前,把用例寫好,用什么測試方法寫?(也就是測試計(jì)劃或測試策略),如果你剛測試一個(gè)新任務(wù)時(shí),你得花一定的時(shí)間去消化業(yè)務(wù)需求和技術(shù)基礎(chǔ),業(yè)務(wù)需求很好理解(多和產(chǎn)品經(jīng)理和開發(fā)人員溝通就能達(dá)到目的),而技術(shù)基礎(chǔ)可就沒那么簡單了,這需要你自覺的學(xué)習(xí)能力,比如說網(wǎng)站吧,最基本的技術(shù)知識你要知道網(wǎng)站內(nèi)部是怎么運(yùn)作的的,后臺是怎么響應(yīng)用戶請求的?測試環(huán)境如何搭建?這些都需要最早的學(xué)好。至少在開始測試之前能做好基本的準(zhǔn)備,可能會遇到什么難題?需求細(xì)節(jié)是不是沒有確定好?這些問題都能在設(shè)計(jì)用例的時(shí)候發(fā)現(xiàn)。
第二是發(fā)現(xiàn)BUG的時(shí)候了,這應(yīng)該是測試人員最基本的任務(wù)了,一般按測試用例開始測試就能發(fā)現(xiàn)大部分的bug,還有一部分bug需要測試的過程中更了解所測版本的情況獲得更多信息,補(bǔ)充測試用例,測試出bug。還有如何發(fā)現(xiàn)bug?這就需要在測試用例有效的情況下,通過細(xì)心和耐心去發(fā)現(xiàn)bug了,每個(gè)用例都有可能發(fā)現(xiàn)bug,每個(gè)地方都有可能出錯(cuò),所以測試過程中思維要清晰(測試過程數(shù)據(jù)流及結(jié)果都得看仔細(xì)了,bug都在里面發(fā)現(xiàn)的)。如何描述bug也很有講究,bug在什么情況下會產(chǎn)生,如果條件變化一點(diǎn)點(diǎn),就不會有這個(gè)bug,以哪些最少的操作步驟就能重現(xiàn)這個(gè)bug,這個(gè)bug產(chǎn)生的規(guī)律是什么?如果你夠厲害的話,可以幫開發(fā)人員初步定位問題。
第三篇:軟件測試常見面試題
軟件測試面試過程中常見的問題歸類
1.先做一下自我介紹吧
技術(shù)方面:
2.你以前做過什么樣的項(xiàng)目,描述一下
3.說一下你們的測試流程
4.你在項(xiàng)目組中做過什么樣的工作
5.你平時(shí)會寫測試用例嗎 一般這種情況下面試官會給你個(gè)實(shí)體 什么電話啊,計(jì)算器啊,登陸頁面啊 都可能被問到
6.你平時(shí)寫測試用例會涉及到的一些測試用例設(shè)計(jì)方法 這個(gè)要充分準(zhǔn)備 最好能舉出例
子
7.說一下bug管理流程 bug的生命周期 缺陷報(bào)告包括哪幾部分 每一個(gè)部分的主要作用
你認(rèn)為哪些部分對于描述這個(gè)bug和有助于開發(fā)人員解bug最重要 為什么
8.在測試人員和開發(fā)人員的溝通中,有這樣一種情況,你站在測試人員的角度上覺得它是
個(gè)bug,而開發(fā)人員給reject了,你該如何處理。
9.你平時(shí)依照什么依據(jù)來判定一個(gè)問題就是bug
10.你日常工作中會用到自動化測試工具嗎 如果用過 簡單描述一下 盡量不要太深入的說
因?yàn)楹芏喙静粫玫街髁鞴ぞ?比如Loadrunner 和 QTP。QC最好熟悉一下。
11.你日常工作中會不會涉及到數(shù)據(jù)庫 這個(gè)時(shí)候面試官會出一個(gè)常用的問題來考你。
12.你對我們公司還有什么問題嗎 這個(gè)時(shí)候是我的話會問公司測試部門的規(guī)模,有幸進(jìn)公
司之后會接觸到哪方面的項(xiàng)目
其他方面:
1.你的學(xué)歷是大專,別人都是三年,為何你只有兩年時(shí)間,是正規(guī)學(xué)校嗎
2.你對測試這份工作有什么看法
3.你覺得測試人員應(yīng)該具備哪些素質(zhì)
4.你對未來五年有什么規(guī)劃嗎 是什么
備注:這都是我長期面試得出來的面經(jīng),如果有其他的歡迎評價(jià)里邊添加進(jìn)來。
第四篇:軟件測試面試題集合
你在你所在的公司是怎么開展測試工作的?是如何組織的?
你認(rèn)為理想的測試流程是什么樣子?
你是怎樣工作的?
軟件測試活動的生命周期是什么?
請畫出軟件測試活動的流程圖?
針對缺陷采取怎樣管理措施?
什么是測試評估?測試評估的范圍是什么?
如果能夠執(zhí)行完美的黑盒測試,還需要進(jìn)行白盒測試嗎?為什么?
測試結(jié)束的標(biāo)準(zhǔn)是什么?
軟件驗(yàn)收測試除了alpha,beta測試以外,還有哪一種?
做測試多久了?
以前做過哪些項(xiàng)目?
你們以前測試的流程是怎樣的?
<答:測試計(jì)劃-測試用例設(shè)計(jì)-測試執(zhí)行-測試分析報(bào)告>
用過哪些測試工具?
為什么選擇測試這行?
<答:它是一個(gè)新興的行業(yè),有發(fā)展?jié)摿?,而且很鍛煉人,需要掌握更多的技能,比做開發(fā)要更難>
為什么值得他們公司雇用?
幫助公司提高軟件質(zhì)量和測試部門的技術(shù)水平
如果我雇用你,你能給部門帶來什么貢獻(xiàn)?
分享我的測試經(jīng)驗(yàn)和測試技能,提高測試部門技術(shù)水平
如何從工作中看出你是個(gè)自動自覺的人
1.工作成果2.工作質(zhì)量
你的工作通常能在時(shí)限內(nèi)完成嗎.(我想問一下就是她問這個(gè)問題的動機(jī)是什么)
在有足夠的資源和合理的工作量的情況下,完全可以按時(shí)完成,并能比一般人做的更好
通常你對于別人批評你會有什么樣的反應(yīng)
有錯(cuò)即改,無措勉之
如果明知這樣做不對,你還會依主管的指過去做嗎
在公司內(nèi)部下級是否有申訴渠道?
如果你接到一個(gè)客戶抱怨的電話,你確知無法解決他的問題,你會怎么處理
為什么抱怨?是怎么樣的問題?
如果是客服問題,提交客服部門解決
如果是質(zhì)量問題,分析原因,下一版本改進(jìn)
什么叫單元測試?
請就軟件測試人員應(yīng)該具備什么樣的基本素質(zhì)說說你的看法。
請就如何在開發(fā)中進(jìn)行軟件質(zhì)量控制說說你的看法
簡述軟件測試的意義,以及軟件測試的分類
1、功能測試,性能測試,界面測試,安全測試(可以簡單點(diǎn),比如只涉及到COOKIES里的內(nèi)容),壓力測試(商業(yè)性質(zhì)的網(wǎng)站)等等,B/S軟件也要根據(jù)其具體功能采用不同的測試策略。
2,軟件工程師要具有那些素質(zhì)?
態(tài)度、責(zé)任心、自信、敏銳的觀察力、良好的發(fā)散思維
3、一般公司里實(shí)際的軟件測試流程是什么樣的?你們公司又是怎樣的?
先設(shè)計(jì)后開發(fā)模式,加強(qiáng)單元測試,加強(qiáng)代碼走查,有一套完整的白盒測試方法。關(guān)鍵是加強(qiáng)開發(fā)人員的質(zhì)量意識,增進(jìn)程序員向工程師水平發(fā)展。
4、意義嘛,就自己想吧。軟件測試的分類,這個(gè)很多人都按各種方法去分。無明確答案給你。
對測試的理解——基本的測試知識,對測試是否認(rèn)可?
測試設(shè)計(jì)的方法并舉例說明——測試技術(shù)的使用
測試工具——熟悉程度,能否與當(dāng)前工作匹配?
如何做計(jì)劃?如何跟蹤計(jì)劃?——日常工作能力
如果開發(fā)人員提供的版本不滿足測試的條件,如何做?——與開發(fā)人員協(xié)作的能力熟悉unix系統(tǒng)、oracle數(shù)據(jù)庫嗎?——是否具備系統(tǒng)知識
做過開發(fā)嗎?寫過哪些代碼?——開發(fā)技能
閱讀英語文章,給出理解說明?——部分英語能力
文檔的意義——是否善于思考?(最簡單的概念,不同層次的理解)
假如進(jìn)入我們公司,對我們哪些方面會有幫助?——講講自己的特長
隨便找一件物品,讓其測試——測試的實(shí)際操作能力
軟件測試的方法有?
軟件測試的過程?
有一個(gè)新的軟件,假如你是測試工程師,該如何做?
軟件測試分哪兩種方法?分別適合什么情況?
2。一套完整的測試應(yīng)該由哪些階段組成?分別闡述一下各個(gè)階段。
3。軟件測試的類型有那些?分別比較這些不同的測試類型的區(qū)別與聯(lián)系。
4。測試用例通常包括那些內(nèi)容?著重闡述編制測試用例的具體做法
5。在分別測試winform的C/S結(jié)構(gòu)與測試WEB結(jié)構(gòu)的軟件是,應(yīng)該采取什么樣的方法分別測試?他們存在什么樣的區(qū)別與聯(lián)系?
6。在測試winform的C/S結(jié)構(gòu)軟件時(shí),發(fā)現(xiàn)這個(gè)軟件的運(yùn)行速度很慢,您會認(rèn)為是什么原因?您會采取哪些方法去檢查這個(gè)原因?
7。描述使用bugzilla缺陷管理工具對軟件缺陷(BUG)跟蹤的管理的流程
你在五年內(nèi)的個(gè)人目標(biāo)和職業(yè)目標(biāo)分別是什么?
正確回答從現(xiàn)在起的五年之內(nèi),我希望能夠在一個(gè)很好的職位上待幾年,而且最好有一次晉升,然后就期待著下一步。不管是向上提升,還是在企業(yè)內(nèi)橫向調(diào)動,對我個(gè)人來說,我希望找到一家企業(yè)——一家愿意做相互投入的企業(yè)——待上一段時(shí)間。
評論這個(gè)問題沒有回答得過分具體(那樣可能會產(chǎn)生漏洞),而且它表明你有雄心,并且思考過在企業(yè)中的成長方式。通過表達(dá)橫向調(diào)動和向上提升的愿望,表明你是一個(gè)有靈活性的人。
你怎樣做出自己的職業(yè)選擇?
正確回答 在上大學(xué)四年級前的那個(gè)夏天,我決定集中精力在某一領(lǐng)域謀求發(fā)展。盡管我是學(xué)商業(yè)的,但是我不知道自己最終會從事哪一行業(yè)的工作。我花了一定的時(shí)間考慮自 己的目標(biāo),想清楚了自己擅長做的事情以及想從工作中得到的東西,最后我得出了一個(gè)堅(jiān)定的結(jié)論,那就是這個(gè)行業(yè)是最適合我的。
評論 這種回答表明,求職者認(rèn)真地做過一些計(jì)劃,縮小了自己的關(guān)注點(diǎn),而且也認(rèn)準(zhǔn)了前進(jìn)的方向。這種回答還表明,求職者理解個(gè)人職業(yè)規(guī)劃的重要性,并且有能力做出認(rèn)真的個(gè)人決策。
1.你都用什么測試方法
針對不同的產(chǎn)品或者系統(tǒng)或者模塊,有不同的測試方法??傮w而言有白盒測試和黑盒測試。
2.怎么編寫案例
案例的編寫與測試階段的定義有很大的關(guān)系。系統(tǒng)測試和unit測試的案例可能不同??傮w而言測試案例根據(jù)系統(tǒng)的需求而定。
3.怎么才能夠全面的測試到每一個(gè)點(diǎn)
測試的全面性主要需要在設(shè)計(jì)測試計(jì)劃的時(shí)候考慮,從測試策略,產(chǎn)品需求等等多個(gè)角度考慮從而定義全部的測試點(diǎn)。
1、談?wù)勡浖y試技術(shù),以及如何提高
2、談?wù)勡浖y試職業(yè)發(fā)展,以及個(gè)人的打算
3、談?wù)勡浖y試在企業(yè)的地位,也可以結(jié)合軟件生命周期來談
有可能清晰的思路比確切的答案更重要
1,一般公司里實(shí)際的軟件測試流程是什么樣的?你們公司又是怎樣的?
2,軟件工程師要具有那些素質(zhì)?
3,你會哪些測試工具?怎么操作?
4,你能不能說下你的3到5年的職業(yè)計(jì)劃(規(guī)劃)
5,你覺得你來應(yīng)聘有那些優(yōu)勢?
第一關(guān):首先要自我介紹,自己的性格怎么樣,目前的工作經(jīng)歷積累了一些什么經(jīng)驗(yàn)取得了些什么值得一說的成果。然后要說說對軟件測試怎么看?還有對于軟件測試有什么自己的想法。為什么會想到要做這行(因?yàn)槲业暮啔v上的工作經(jīng)歷沒有關(guān)于測試方面的)。哦,還有期望薪資。
第二關(guān):認(rèn)為軟件測試人員所要具備的基本素質(zhì),如果遇到問題會怎樣處理,如果得不到研發(fā)人員的配合(就是研發(fā)說這個(gè)不是問題)你又會怎么處理?然后就是一些基本概念,比如軟件測試的流程有哪些?如果我上任了,首先會怎么開始自己的工作計(jì)劃。(前兩關(guān)通過了后面這個(gè)就好過多了)
第三關(guān):像我介紹了一下公司的情況,告訴我主要針對什么內(nèi)容的測試,會不會使用數(shù)據(jù)庫。告訴我大概要做哪些內(nèi)容,詳細(xì)的可以上崗以后慢慢熟悉。
面試官最后會問你有什么問題要問嗎。作為應(yīng)聘者的你一般不要說沒問題問,這會給面試官留下你不太重視這份工作的壞印象。所以如果你想得到這份工作的話應(yīng)該抓住這最后的表現(xiàn)自己的機(jī)會:
你可以問:
1.貴公司近期和遠(yuǎn)期的發(fā)展目標(biāo)是什么?
2.貴公司的主要競爭對手有哪些?
3.貴公司有多少開發(fā)人員有多少測試人員?
4.貴公司又進(jìn)一步擴(kuò)充測試人員的計(jì)劃嗎?
5.如果我有幸能進(jìn)入貴公司的話,我有怎么樣的發(fā)展?
6.測試人員的溝通能力很重要,貴公司有規(guī)范的溝通渠道嗎?
7.請介紹一下貴公司的福利情況。
8.請問我什么時(shí)候能知道結(jié)果?
01.為什么要在一個(gè)團(tuán)隊(duì)中開展軟件測試工作?
保證軟件質(zhì)量的最后一道關(guān)口。
02.您是否了解以往所工作的企業(yè)的軟件測試過程?如果了解,請?jiān)囀鲈谶@個(gè)過程中都有哪些工作要做?分別由哪些不同的角色來完成這些工作?
測試計(jì)劃->測試設(shè)計(jì)(測試用例,測試數(shù)據(jù))->測試執(zhí)行(單元測試,集成測試,系統(tǒng)測試,回歸測試)
05.您所熟悉的軟件測試類型都有哪些?請?jiān)囍謩e比較這些不同的測試類型的區(qū)別與聯(lián)系(如功能測試、性能測試……)
易用性測試-界面的友好性,操作方便性等。
功能測試-系統(tǒng)中功能性需求的滿足
安全性測試-系統(tǒng)是否存在安全隱患和漏洞
性能測試-系統(tǒng)在大并發(fā)下的響應(yīng)速度和健壯性
06.請?jiān)囍容^一下黑盒測試、白盒測試、單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試的區(qū)別與聯(lián)系。
黑盒/白盒:主要區(qū)別在是否了解系統(tǒng)或程序的內(nèi)部結(jié)構(gòu)和代碼
單元測試:關(guān)注某一個(gè)單元,函數(shù),模塊的正確性,一般需要編寫相關(guān)測試代碼。集成測試:模塊或模塊直接的集成接口測試,單個(gè)模塊測試
系統(tǒng)測試:一個(gè)完整功能的完全測試。
07.測試計(jì)劃工作的目的是什么?測試計(jì)劃工作的內(nèi)容都包括什么?其中哪些是最重要的?
提前安排出測試工具選擇,測試類型選擇,人員需求,保證和項(xiàng)目開發(fā)協(xié)調(diào)一致,保證測試工作順利進(jìn)行。
08.您認(rèn)為做好測試計(jì)劃工作的關(guān)鍵是什么?
了解項(xiàng)目或系統(tǒng)的業(yè)務(wù)需求
和項(xiàng)目經(jīng)理協(xié)調(diào)好,了解項(xiàng)目的進(jìn)度計(jì)劃安排情況
09.您所熟悉的測試用例設(shè)計(jì)方法都有哪些?請分別以具體的例子來說明這些方法在測試用例設(shè)計(jì)工作中的應(yīng)用。
邊界值/等價(jià)類/業(yè)務(wù)流程圖分析和狀態(tài)轉(zhuǎn)換分析/業(yè)務(wù)邏輯分析
10.您認(rèn)為做好測試用例設(shè)計(jì)工作的關(guān)鍵是什么?
對業(yè)務(wù)和軟件需求非常清楚,可以根據(jù)需求不同選擇不同的測試用例設(shè)計(jì)
12.您以往的工作中是否曾開展過測試用例的評審工作?如果有,請描述測試用例評審的過程和評審的內(nèi)容。
評審計(jì)劃->預(yù)審->評審;
評審內(nèi)容主要是測試用例對軟件需求的覆蓋程度,對于相關(guān)邊界是否考慮,是否針對復(fù)雜流程準(zhǔn)備多套測試數(shù)據(jù),是否有專門針對非功能性需求的測試。
13.您以往是否曾經(jīng)從事過性能測試工作?如果有,請盡可能的詳細(xì)描述您以往的性能測試工作的完整過程。
制訂計(jì)劃->選擇測試功能->選擇測試工具->錄制腳本->運(yùn)行測試->分析結(jié)果
14.您在從事性能測試工作時(shí),是否使用過一些測試工具?如果有,請?jiān)囀鲈摴ぞ叩墓ぷ髟?,并以一個(gè)具體的工作中的例子描述該工具是如何在實(shí)際工作中應(yīng)用的。
微軟WAS,LoadRunner
15.您認(rèn)為性能測試工作的目的是什么?做好性能測試工作的關(guān)鍵是什么?
關(guān)鍵是測試腳本的錄制,測試時(shí)候測試環(huán)境的干凈。
16.在您以往的工作中,一條軟件缺陷(或者叫Bug)記錄都包含了哪些內(nèi)容?如何提交高質(zhì)量的軟件缺陷(Bug)記錄?
缺陷名詞/描述/缺陷等級/嚴(yán)重程度/發(fā)現(xiàn)模塊/發(fā)現(xiàn)步驟和過程/是否可以重現(xiàn)
17.您以往所從事的軟件測試工作中,是否使用了一些工具來進(jìn)行軟件缺陷(Bug)的管理?如果有,請結(jié)合該工具描述軟件缺陷(Bug)跟蹤管理的流程。
CQ,也可以使用BugFree等免費(fèi)工具。
19.您如何看待軟件過程改進(jìn)?在您曾經(jīng)工作過的企業(yè)中,是否有一些需要改進(jìn)的東西呢?您期望的理想的測試人員的工作環(huán)境是怎樣的?
將先進(jìn)的經(jīng)驗(yàn)或思想固化到過程中,通過過程改進(jìn)和能力提高來改進(jìn)軟件質(zhì)量。
第五篇:軟件測試經(jīng)典面試題(三)
軟件測試經(jīng)典面試題(三)
第1題:堅(jiān)持在軟件開發(fā)的各個(gè)階段實(shí)施下列哪種質(zhì)量保證措施,才能在開發(fā)工程中盡早發(fā)現(xiàn)和預(yù)防錯(cuò)誤,將出現(xiàn)的錯(cuò)誤克服在早期(正確A)
A.技術(shù)評審B.程序測試C.文檔審查D.管理評審
第2題:經(jīng)驗(yàn)表明,在程序設(shè)計(jì)中,某模塊與其他模塊相比,若該模塊已發(fā)現(xiàn)并改正的錯(cuò)誤數(shù)目較多,則該模塊中殘留的錯(cuò)誤與其他模塊相比,通常應(yīng)該(正確B)
A.較少B.較多C.相似D.不確定
第3題:下面有關(guān)測試原則的說法正確的是(正確A)
A.測試用例應(yīng)由測試的輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果兩部分組成 B.測試用例自詡選取合理的輸入數(shù)據(jù) C.程序最好由編寫該程序的程序員自己來測試 D.使用測試用例進(jìn)行測試是為了檢查程序員是否做錯(cuò)了他該做的事
第4題:為了提高測試的效率,爭取的做法是(正確A)
A.選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測試用例 B.在完成程序的編碼之后在指定軟件的測試計(jì)劃 C.隨機(jī)選取測試用例 D.取一切可能的輸入數(shù)據(jù)作為測試用例
第5題:以下哪一種選項(xiàng)不屬于軟件缺陷(正確D)
A.軟件沒有實(shí)現(xiàn)產(chǎn)品規(guī)格說明所要求的功能 B.軟件中出現(xiàn)了產(chǎn)品貴規(guī)格說明不應(yīng)該出現(xiàn)的功能 C.軟件實(shí)現(xiàn)了產(chǎn)品規(guī)格說明沒有提到的功能 D.軟件實(shí)現(xiàn)了產(chǎn)品規(guī)格說明所要求等功能但因受性能限制而未考慮可移植性問題
第6題:軟件生存周期過程中,修改錯(cuò)誤代價(jià)最大的階段是(正確D)
A.需求階段 B.設(shè)計(jì)階段 C.編程階段 D.發(fā)布運(yùn)行階段
第7題:以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測試用例設(shè)計(jì)技術(shù)屬于(正確D)
A.灰盒測試 B.數(shù)據(jù)測試 C.黑盒測試 D.白盒測試
第8題:下列能表達(dá)程序未按照預(yù)期運(yùn)行,但不會導(dǎo)致整體失效的是(正確B)
A.故障 B.異常 C.缺點(diǎn) D.失效
第9題:下列關(guān)于缺陷產(chǎn)生原因的敘述中,不屬于技術(shù)問題的是(正確A)
A.文檔錯(cuò)誤,內(nèi)容不正確或拼寫錯(cuò)誤 B.系統(tǒng)結(jié)構(gòu)不合理 C.語法錯(cuò)誤 D.接口傳遞不匹配,導(dǎo)致模塊集成出現(xiàn)問題
第10題:下面有關(guān)軟件缺陷的說法中錯(cuò)誤的是(正確C)
A.缺陷就是軟件產(chǎn)品在開發(fā)中存在的問題 B.缺陷就是軟件維護(hù)過程中存在的錯(cuò)誤、毛病等各種問題 C.缺陷就是導(dǎo)致系統(tǒng)程序崩潰的錯(cuò)誤 D.缺陷就是系統(tǒng)所需實(shí)現(xiàn)的某種功能的時(shí)效和違背
第11題:功能或特性沒有實(shí)現(xiàn),主要功能部分喪失,次要功能完全喪失,或致命的錯(cuò)誤聲明,這屬于軟件缺陷級別中的(正確B)
A.致命缺陷 B.嚴(yán)重缺陷 C.一般缺陷 D.微小缺陷
第12題:黑盒測試是一種重要的測試策略,又稱為數(shù)據(jù)驅(qū)動的測試,其測試數(shù)據(jù)來源于(正確A)
A.軟件規(guī)格說明 B.軟件設(shè)計(jì)說明 C.概要設(shè)計(jì)說明D.詳細(xì)設(shè)計(jì)說明
第13題:即使對程序的所有路徑都進(jìn)行了測試,程序也可能存在沒能檢查出來的缺陷,其原因可能是(正確D)
A.程序可能會因?yàn)槿鄙倌承┞窂蕉嬖趩栴} B.即使是窮舉路徑測試也決不能保證程序符合其設(shè)計(jì)規(guī)格說明 C.窮舉路徑測試也可能不會暴露數(shù)據(jù)敏感錯(cuò)誤 D.以上全部
第14題:軟件質(zhì)量是軟件產(chǎn)品能否得到市場認(rèn)可的最基本的問題,而軟件測試是保證軟件質(zhì)量的重要手段,下面關(guān)于軟件測試任務(wù)正確的是(正確D)
l)預(yù)防軟件發(fā)生錯(cuò)誤2)發(fā)現(xiàn)改正程序錯(cuò)誤
A.僅1)B.僅1)和2)C.僅1)和3)D.都是
第15題:下面說法正確的是(正確A)
A.我們無法測試一個(gè)程序確認(rèn)它沒有錯(cuò)誤 B.黑盒測試是邏輯驅(qū)動的測試 C.窮舉測試一定可以暴露數(shù)據(jù)敏感錯(cuò)誤 D.白盒測試是一種輸入輸出驅(qū)動的測試
第16題:軟件測試的目的是(正確B)
A.評價(jià)軟件的質(zhì)量 B.發(fā)現(xiàn)軟件的錯(cuò)誤 C.找出軟件中所有的錯(cuò)誤 D.證明軟件的正確的第17題:以下選項(xiàng)中不屬于軟件缺陷狀態(tài)的是(正確C)
A.激活狀態(tài) B.非激活狀態(tài) C.一致狀態(tài) D.已修正狀態(tài)
第18題:為了提高測試的效率,應(yīng)該(正確D)
A.隨機(jī)地選取測試數(shù)據(jù) B.取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù) C.在完成編碼以后制定軟件的測試計(jì)劃 D.選擇發(fā)現(xiàn)錯(cuò)誤的可能性大的數(shù)據(jù)作為測試數(shù)據(jù)
第19題:軟件的集成測試工作最好由()承擔(dān),以提高集成測試的效果。(正確B)
A.該軟件的設(shè)計(jì)人員 B.不屬于該軟件開發(fā)組的軟件設(shè)計(jì)人員 C.該軟件開發(fā)組的負(fù)責(zé)人 D.該軟件的編程人員
第20題:軟件測試計(jì)劃的內(nèi)容應(yīng)包括(正確D)
A.測試目的、背景 B.被測軟件的功能、輸入和輸出 C.測試內(nèi)容和評價(jià)標(biāo)準(zhǔn) D.以上全部
第21題:計(jì)算機(jī)軟件或程序中存在的某種破壞正常運(yùn)行能力的問題、錯(cuò)誤,或者隱藏的功能缺陷是屬于(正確A)
A.缺陷 B.故障 C.失效 D.缺點(diǎn)
第22題:問題還沒有解決,測試人員新報(bào)告的缺陷,或驗(yàn)證后缺陷仍然存在,這些缺陷所處的狀態(tài)是(正確A)
A.激活狀態(tài) B.非激活狀態(tài) C.已修正狀態(tài) D.關(guān)閉狀態(tài)
第23題:下列不屬于軟件本身的原因產(chǎn)生的缺陷的是(正確C)
A.算法錯(cuò)誤 B.語法錯(cuò)誤 C.文檔錯(cuò)誤 D.系統(tǒng)結(jié)構(gòu)不合理
第24題:從軟件測試觀點(diǎn)出發(fā),軟件缺陷由系統(tǒng)缺陷、加工缺陷、數(shù)據(jù)缺陷、代碼缺陷和()構(gòu)成。(正確B)
A.設(shè)計(jì)缺陷 B.功能缺陷 C.性能缺陷 D.接口缺陷
第25題:下列缺陷中,不屬于加工缺陷的是(正確B)
A.算術(shù)與操作缺陷 B.接口缺陷 C.初始化缺陷 D.靜態(tài)邏輯缺陷