更新時(shí)間:2019年04月22日09時(shí)49分 來(lái)源:軟件測(cè)試培訓(xùn) 瀏覽次數(shù):
面試給公司和應(yīng)聘者提供了進(jìn)行雙向交流的機(jī)會(huì),能使公司和應(yīng)聘者之間相互了解,從而雙方都可更準(zhǔn)確做出聘用與否、受聘與否的決定。而近些年來(lái)的軟件測(cè)試面試題著實(shí)讓不少面試的同學(xué)犯了難。那么今天傳智播客整理了一些關(guān)于軟件測(cè)試常見(jiàn)的面試題以及答案,希望能幫助到大家。
1、您認(rèn)為做好測(cè)試用例設(shè)計(jì)工作的關(guān)鍵是什么?
白盒測(cè)試用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果 黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測(cè)試,以最少的用例在合理的時(shí)間內(nèi)發(fā)現(xiàn)最多的問(wèn)題
2、問(wèn):一臺(tái)客戶端有三百個(gè)客戶與三百個(gè)客戶端有三百個(gè)客戶對(duì)服務(wù)器施壓,有什么區(qū)別?
300個(gè)用戶在一個(gè)客戶端上,會(huì)占用客戶機(jī)更多的資源,而影響測(cè)試的結(jié)果。線程之間可能發(fā)生干擾,而產(chǎn)生一些異常。
300個(gè)用戶在一個(gè)客戶端上,需要更大的帶寬。
IP地址的問(wèn)題,可能需要使用IP Spoof來(lái)繞過(guò)服務(wù)器對(duì)于單一IP地址最大連接數(shù)的限制。
所有用戶在一個(gè)客戶端上,不必考慮分布式管理的問(wèn)題;而用戶分布在不同的客戶端上,需要考慮使用控制器來(lái)整體調(diào)配不同客戶機(jī)上的用戶。同時(shí),還需要給予相應(yīng)的權(quán)限配置和防火墻設(shè)置。
3、軟件配置管理的作用?軟件配置包括什么?
軟件配置管理(Software Configuration Management,SCM)是一種標(biāo)識(shí)、組織和控制修改的技術(shù)。軟件配置管理應(yīng)用于整個(gè)軟件工程過(guò)程。在軟件建立時(shí)變更是不可避免的,而變更加劇了項(xiàng)目中軟件開發(fā)者之間的混亂。SCM活動(dòng)的目標(biāo)就是為了標(biāo)識(shí)變更、控制變更、確保變更正確實(shí)現(xiàn)并向其他有關(guān)人員報(bào)告變更。從某種角度講,SCM是一種標(biāo)識(shí)、組織和控制修改的技術(shù),目的是使錯(cuò)誤降為最小并最有效地提高生產(chǎn)效率。
軟件配置包括如下內(nèi)容:配置項(xiàng)識(shí)別、工作空間管理、版本控制、變更控制、狀態(tài)報(bào)告、配置審計(jì)
4、目前主要的測(cè)試用例設(shè)計(jì)方法是什么?
白盒測(cè)試:邏輯覆蓋、循環(huán)覆蓋、基本路徑覆蓋
黑盒測(cè)試:邊界值分析法、等價(jià)類劃分、錯(cuò)誤猜測(cè)法、因果圖法、狀態(tài)圖法、測(cè)試大綱法、隨機(jī)測(cè)試、場(chǎng)景法
5、什么是測(cè)試用例 什么是測(cè)試腳本 兩者的關(guān)系是什么?
為實(shí)施測(cè)試而向被測(cè)試系統(tǒng)提供的輸入數(shù)據(jù)、操作或各種環(huán)境設(shè)置以及期望結(jié)果的一個(gè)特定的集合。
測(cè)試腳本是為了進(jìn)行自動(dòng)化測(cè)試而編寫的腳本。
測(cè)試腳本的編寫必須對(duì)應(yīng)相應(yīng)的測(cè)試用例
6、簡(jiǎn)述什么是靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試、黑盒測(cè)試、白盒測(cè)試、α測(cè)試 β測(cè)試
靜態(tài)測(cè)試是不運(yùn)行程序本身而尋找程序代碼中可能存在的錯(cuò)誤或評(píng)估程序代碼的過(guò)程。
動(dòng)態(tài)測(cè)試是實(shí)際運(yùn)行被測(cè)程序,輸入相應(yīng)的測(cè)試實(shí)例,檢查運(yùn)行結(jié)果與預(yù)期結(jié)果的差異,判定執(zhí)行結(jié)果是否符合要求,從而檢驗(yàn)程序的正確性、可靠性和有效性,并分析系統(tǒng)運(yùn)行效率和健壯性等性能。
黑盒測(cè)試一般用來(lái)確認(rèn)軟件功能的正確性和可操作性,目的是檢測(cè)軟件的各個(gè)功能是否能得以實(shí)現(xiàn),把被測(cè)試的程序當(dāng)作一個(gè)黑盒,不考慮其內(nèi)部結(jié)構(gòu),在知道該程序的輸入和輸出之間的關(guān)系或程序功能的情況下,依靠軟件規(guī)格說(shuō)明書來(lái)確定測(cè)試用例和推斷測(cè)試結(jié)果的正確性。
白盒測(cè)試根據(jù)軟件內(nèi)部的邏輯結(jié)構(gòu)分析來(lái)進(jìn)行測(cè)試,是基于代碼的測(cè)試,測(cè)試人員通過(guò)閱讀程序代碼或者通過(guò)使用開發(fā)工具中的單步調(diào)試來(lái)判斷軟件的質(zhì)量,一般黑盒測(cè)試由項(xiàng)目經(jīng)理在程序員開發(fā)中來(lái)實(shí)現(xiàn)。
α測(cè)試是由一個(gè)用戶在開發(fā)環(huán)境下進(jìn)行的測(cè)試,也可以是公司內(nèi)部的用戶在模擬實(shí)際操作環(huán)境下進(jìn)行的受控測(cè)試,Alpha測(cè)試不能由程序員或測(cè)試員完成。
β測(cè)試是軟件的多個(gè)用戶在一個(gè)或多個(gè)用戶的實(shí)際使用環(huán)境下進(jìn)行的測(cè)試。開發(fā)者通常不在測(cè)試現(xiàn)場(chǎng),Beta測(cè)試不能由程序員或測(cè)試員完成。
7、軟件測(cè)試分為幾個(gè)階段 各階段的測(cè)試策略和要求是什么?
和開發(fā)過(guò)程相對(duì)應(yīng),軟件測(cè)試過(guò)程會(huì)依次經(jīng)歷單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試四個(gè)主要階段:
單元測(cè)試:?jiǎn)卧獪y(cè)試是針對(duì)軟件設(shè)計(jì)的最小單位––程序模塊甚至代碼段進(jìn)行正確性檢驗(yàn)的測(cè)試工作,通常由開發(fā)人員進(jìn)行。
集成測(cè)試:集成測(cè)試是將模塊按照設(shè)計(jì)要求組裝起來(lái)進(jìn)行測(cè)試,主要目的是發(fā)現(xiàn)與接口有關(guān)的問(wèn)題。由于在產(chǎn)品提交到測(cè)試部門前,產(chǎn)品開發(fā)小組都要進(jìn)行聯(lián)合調(diào)試,因此在大部分企業(yè)中集成測(cè)試是由開發(fā)人員來(lái)完成的。
系統(tǒng)測(cè)試:系統(tǒng)測(cè)試是在集成測(cè)試通過(guò)后進(jìn)行的,目的是充分運(yùn)行系統(tǒng),驗(yàn)證各子系統(tǒng)是否都能正常工作并完成設(shè)計(jì)的要求。它主要由測(cè)試部門進(jìn)行,是測(cè)試部門最大最重要的一個(gè)測(cè)試,對(duì)產(chǎn)品的質(zhì)量有重大的影響。
驗(yàn)收測(cè)試:驗(yàn)收測(cè)試以需求階段的《需求規(guī)格說(shuō)明書》為驗(yàn)收標(biāo)準(zhǔn),測(cè)試時(shí)要求模擬實(shí)際用戶的運(yùn)行環(huán)境。對(duì)于實(shí)際項(xiàng)目可以和客戶共同進(jìn)行,對(duì)于產(chǎn)品來(lái)說(shuō)就是最后一次的系統(tǒng)測(cè)試。測(cè)試內(nèi)容為對(duì)功能模塊的全面測(cè)試,尤其要進(jìn)行文檔測(cè)試。
單元測(cè)試測(cè)試策略:
自頂向下的單元測(cè)試策略:比孤立單元測(cè)試的成本高很多,不是單元測(cè)試的一個(gè)好的選擇。
自底向上的單元測(cè)試策略:比較合理的單元測(cè)試策略,但測(cè)試周期較長(zhǎng)。
孤立單元測(cè)試策略:最好的單元測(cè)試策略。
集成測(cè)試的測(cè)試策略:
大爆炸集成:適應(yīng)于一個(gè)維護(hù)型項(xiàng)目或被測(cè)試系統(tǒng)較小
自頂向下集成:適應(yīng)于產(chǎn)品控制結(jié)構(gòu)比較清晰和穩(wěn)定;高層接口變化較小;底層接口未定義或經(jīng)??赡鼙恍薷?產(chǎn)口控制組件具有較大的技術(shù)風(fēng)險(xiǎn),需要盡早被驗(yàn)證;希望盡早能看到產(chǎn)品的系統(tǒng)功能行為。
自底向上集成:適應(yīng)于底層接口比較穩(wěn)定;高層接口變化比較頻繁;底層組件較早被完成。
基于進(jìn)度的集成
優(yōu)點(diǎn):具有較高的并行度;能夠有效縮短項(xiàng)目的開發(fā)進(jìn)度。
缺點(diǎn):樁和驅(qū)動(dòng)工作量較大;有些接口測(cè)試不充分;有些測(cè)試重復(fù)和浪費(fèi)。
系統(tǒng)測(cè)試的測(cè)試策略:
數(shù)據(jù)和數(shù)據(jù)庫(kù)完整性測(cè)試;功能測(cè)試;用戶界面測(cè)試;性能評(píng)測(cè);負(fù)載測(cè)試;強(qiáng)度測(cè)試;容量測(cè)試;安全性和訪問(wèn)控制測(cè)試;故障轉(zhuǎn)移和恢復(fù)測(cè)試;配置測(cè)試;安裝測(cè)試;加密測(cè)試;可用性測(cè)試;版本驗(yàn)證測(cè)試;文檔測(cè)試
8、軟件測(cè)試各個(gè)階段通常完成什么工作?各個(gè)階段的結(jié)果文件是什么?包括什么內(nèi)容?
單元測(cè)試階段:各獨(dú)立單元模塊在與系統(tǒng)地其他部分相隔離的情況下進(jìn)行測(cè)試,單元測(cè)試針對(duì)每一個(gè)程序模塊進(jìn)行正確性校驗(yàn),檢查各個(gè)程序模塊是否正確地實(shí)現(xiàn)了規(guī)定的功能。生成單元測(cè)試報(bào)告,提交缺陷報(bào)告。
集成測(cè)試階段:集成測(cè)試是在單元測(cè)試的基礎(chǔ)上,測(cè)試在將所有的軟件單元按照概要設(shè)計(jì)規(guī)格說(shuō)明的要求組裝成模塊、子系統(tǒng)或系統(tǒng)的過(guò)程中各部分工作是否達(dá)到或?qū)崿F(xiàn)相應(yīng)技術(shù)指標(biāo)及要求的活動(dòng)。該階段生成集成測(cè)試報(bào)告,提交缺陷報(bào)告。
系統(tǒng)測(cè)試階段:將通過(guò)確認(rèn)測(cè)試的軟件,作為整個(gè)給予計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素結(jié)合在一起,在實(shí)際運(yùn)行環(huán)境下,對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行全面的功能覆蓋。該階段需要提交測(cè)試總結(jié)和缺陷報(bào)告。
9、黑盒測(cè)試和白盒測(cè)試是軟件測(cè)試的兩種基本方法,請(qǐng)分別說(shuō)明各自的優(yōu)點(diǎn)和缺點(diǎn)!
黑盒測(cè)試的優(yōu)點(diǎn)有:比較簡(jiǎn)單,不需要了解程序內(nèi)部的代碼及實(shí)現(xiàn);與軟件的內(nèi)部實(shí)現(xiàn)無(wú)關(guān); 從用戶角度出發(fā),能很容易的知道用戶會(huì)用到哪些功能,會(huì)遇到哪些問(wèn)題;基于軟件開發(fā)文檔,所以也能知道軟件實(shí)現(xiàn)了文檔中的哪些功能;在做軟件自動(dòng)化測(cè)試時(shí)較為方便。
黑盒測(cè)試的缺點(diǎn)有:不可能覆蓋所有的代碼,覆蓋率較低,大概只能達(dá)到總代碼量的30%;自動(dòng)化測(cè)試的復(fù)用性較低。
白盒測(cè)試的優(yōu)點(diǎn)有:幫助軟件測(cè)試人員增大代碼的覆蓋率,提高代碼的質(zhì)量,發(fā)現(xiàn)代碼中隱 藏的問(wèn)題。
白盒測(cè)試的缺點(diǎn)有:程序運(yùn)行會(huì)有很多不同的路徑,不可能測(cè)試所有的運(yùn)行路徑;測(cè)試基于代碼,只能測(cè)試開發(fā)人員做的對(duì)不對(duì),而不能知道設(shè)計(jì)的正確與否,可能會(huì)漏掉一些功能需求;系統(tǒng)龐大時(shí),測(cè)試開銷會(huì)非常大。
10、如何測(cè)試一個(gè)紙杯?
功能度:用水杯裝水看漏不漏;水能不能被喝到
安全性:杯子有沒(méi)有毒或細(xì)菌
可靠性:杯子從不同高度落下的損壞程度
可移植性:杯子在不同的地方、溫度等環(huán)境下是否都可以正常使用
兼容性:杯子是否能夠容納果汁、白水、酒精、汽油等
易用性:杯子是否燙手、是否有防滑措施、是否方便飲用
用戶文檔:使用手冊(cè)是否對(duì)杯子的用法、限制、使用條件等有詳細(xì)描述
疲勞測(cè)試:將杯子盛上水(案例一)放24小時(shí)檢查泄漏時(shí)間和情況;盛上汽油(案例二)放24小時(shí)檢查泄漏時(shí)間和情況等
壓力測(cè)試:用根針并在針上面不斷加重量,看壓強(qiáng)多大時(shí)會(huì)穿透
11、你自認(rèn)為測(cè)試的優(yōu)勢(shì)在哪里?
該面試也沒(méi)有固定不變的答案,但可參考以下幾點(diǎn),并結(jié)合自身特點(diǎn):
有韌性、有耐心、做事有條理性、喜歡面對(duì)挑戰(zhàn)、有信心做好每一件事情、較強(qiáng)的溝通能力、從以前的經(jīng)理處都得到了很好的評(píng)價(jià)表明我做的很好
傳智播客軟件測(cè)試課程全面覆蓋中高端技能清晰的學(xué)習(xí)路線,可以幫助學(xué)員開啟軟件測(cè)試學(xué)習(xí)之旅。
軟件測(cè)試課程:基礎(chǔ)部分包括前置基礎(chǔ)(DOS命令、HTML、CSS等)、Linux和數(shù)據(jù)庫(kù)(操作系統(tǒng)、MySQL高級(jí)、Redis數(shù)據(jù)庫(kù)等)、功能測(cè)試(測(cè)試用例設(shè)計(jì)、Web項(xiàng)目、APP項(xiàng)目測(cè)試等);中級(jí)部分包括Python編程(Python開發(fā)環(huán)境、面向?qū)ο?、異常處理?、Web自動(dòng)化(Web自動(dòng)化入門/基礎(chǔ)/高級(jí)、Unittest框架等)、移動(dòng)自動(dòng)化(Appium、常用API、Pytest等);高級(jí)部分包括接口自動(dòng)化(JMeter、requests、mock等)、性能測(cè)試(測(cè)試方案、Vugen、Analysis等)、單元測(cè)試和shell編程(測(cè)試流程、測(cè)試報(bào)告、shell等)。更多的關(guān)于傳智播客軟件測(cè)試培訓(xùn)課程歡迎隨時(shí)咨詢網(wǎng)頁(yè)右下角咨詢窗口。
北京校區(qū)