實施工程師面試題及參考答案(2)
實施工程師面試題及參考答案
5白盒測試有幾種方法
總體上分為靜態(tài)方法和動態(tài)方法兩大類。
靜態(tài):關(guān)鍵功能是檢查軟件的表示和描述是否一致,沒有沖突或者沒有歧義
動態(tài):語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、路徑覆蓋。
6系統(tǒng)測試計劃是否需要同行審批,為什么?
需要,系統(tǒng)測試計劃屬于項目階段性關(guān)鍵文檔,因此需要評審。
7Alpha測試與beta的區(qū)別?
Alpha測試在系統(tǒng)開發(fā)接近完成時對應(yīng)用系統(tǒng)的測試;測試后仍然會有少量的設(shè)計變更。這種測試一般由最終用戶或其它人員完成,不能由程序或測試員完成。
Beta測試當開發(fā)和測試根本完成時所做的測試,最終的錯誤和問題需要在最終發(fā)行前找到。這種測試一般由最終用戶或其它人員完成,不能由程序員或測試員完成。
8比較負載測試,容量測試和強度測試的區(qū)別?
負載測試:在一定的工作負荷下,系統(tǒng)的負荷及響應(yīng)時間。
強度測試:在一定的負荷條件下,在較長時間跨度內(nèi)的系統(tǒng)連續(xù)運行給系統(tǒng)性能所造成的影響。
容量測試:容量測試目的是通過測試預(yù)先分析出反映軟件 系統(tǒng)應(yīng)用特征的某項指標的極限值(如最大并發(fā)用戶數(shù)、數(shù)據(jù)庫記錄數(shù)等),系統(tǒng)在其極限值狀態(tài)下沒有出現(xiàn)任何軟件故障或還能保持主要功能正常運行。容量測試 還將確定測試對象在給定時間內(nèi)能夠持續(xù)處理的最大負載或工作量。容量測試的目的是使系統(tǒng)承受超額的數(shù)據(jù)容量來發(fā)現(xiàn)它是否能夠正確處理。容量測試是面向數(shù)據(jù) 的,并且它的目的是顯示系統(tǒng)可以處理目標內(nèi)確定的數(shù)據(jù)容量。
9測試結(jié)束的標準是什么?
用例全部測試。
覆蓋率達到標準。
缺陷率達到標準。
其他指標達到質(zhì)量標準
10描述軟件測試活動的生命周期?
測試周期分為計劃、設(shè)計、實現(xiàn)、執(zhí)行、總結(jié)。其中:
計劃:對整個測試周期中所有活動進行規(guī)劃,估計工作量、風險,安排人力物力資源,安排進度等;
設(shè)計:完成測試方案,從技術(shù)層面上對測試進行規(guī)劃;
實現(xiàn):進行測試用例和測試規(guī)程設(shè)計;
執(zhí)行:根據(jù)前期完成的計劃、方案、用例、規(guī)程等文檔,執(zhí)行測試用例。
總結(jié):記錄測試結(jié)果,進行測試分析,完成測試報告。
11軟件的缺陷等級應(yīng)如何劃分?
A類—嚴重錯誤,包括以下各種錯誤:
1. 由于程序所引起的死機,非法退出
2. 死循環(huán)
3. 數(shù)據(jù)庫發(fā)生死鎖
4. 因錯誤操作導(dǎo)致的程序中斷
5. 功能錯誤
6. 與數(shù)據(jù)庫連接錯誤
7. 數(shù)據(jù)通訊錯誤
B類—較嚴重錯誤,包括以下各種錯誤:
1. 程序錯誤 2. 程序接口錯誤 3. 數(shù)據(jù)庫的表、業(yè)務(wù)規(guī)則、缺省值未加完整性等約束條件
C類—一般性錯誤,包括以下各種錯誤:
1. 操作界面錯誤(包括數(shù)據(jù)窗口內(nèi)列名定義、含義是否一致) 2. 打印內(nèi)容、格式錯誤 3. 簡單的輸入限制未放在前臺進行控制 4. 刪除操作未給出提示 5. 數(shù)據(jù)庫表中有過多的空字段
D類—較小錯誤,包括以下各種錯誤:
1. 界面不規(guī)范 2. 輔助說明描述不清楚 3. 輸入輸出不規(guī)范 4. 長操作未給用戶提示 5. 提示窗口文字未采用行業(yè)術(shù)語 6. 可輸入?yún)^(qū)域和只讀區(qū)域沒有明顯的區(qū)分標志
E類—測試建議
實施工程師面試題及參考答案:用例設(shè)計
隨意選取一個簡單物品,假定是一個喝水的帶廣告圖案的花紙杯,設(shè)計出盡可能多的測試用例。
測試項目:杯子
需求測試:查看杯子使用說明書
界面測試:查看杯子外觀
功能度:用水杯裝水看漏不漏;水能不能被喝到
安全性:杯子有沒有毒或細菌
可*性:杯子從不同高度落下的損壞程度
可移植性:杯子再不同的地方、溫度等環(huán)境下是否都可以正常使用
兼容性:杯子是否能夠容納果汁、白水、酒精、汽油等
易用性:杯子是否燙手、是否有防滑措施、是否方便飲用
用戶文檔:使用手冊是否對杯子的用法、限制、使用條件等有詳細描述
疲勞測試:將杯子盛上水(案例一)放24小時檢查泄漏時間和情況;盛上汽油(案例二)放24小時檢查泄漏時間和情況等
壓力測試:用根針并在針上面不斷加重量,看壓強多大時會穿透
跌落測試: 杯子加包裝(有填充物),在多高的情況摔下不破損
震動測試: 杯子加包裝(有填充物),六面震動,檢查產(chǎn)品是否能應(yīng)對惡劣的鐵路\公路\航空運輸
測試數(shù)據(jù):
測試數(shù)據(jù)具體編寫此處略。其中應(yīng)用到:場景法、等價類劃分法、因果圖法、錯誤推測法、邊界值法等方法
期望輸出:
該期望輸出需查閱國標、行標以及使用用戶的需求
說明書測試: 檢查說明書書寫準確性
實施工程師面試題及參考答案:網(wǎng)絡(luò)、操作系統(tǒng)、語言知識
1請你分別劃劃OSI的七層網(wǎng)絡(luò)結(jié)構(gòu)圖,和TCP/IP的五層結(jié)構(gòu)圖?
答:七層結(jié)構(gòu)從上到下依次是: 7 應(yīng)用層 ;6 表示層 ;5 會話層 ;4 傳輸層 ;3 網(wǎng)絡(luò)層 ;2 數(shù)據(jù)鏈路層 ;1 物理層 五層結(jié)構(gòu)是
5 應(yīng)用層;4 運輸層;3 網(wǎng)絡(luò)層; 2 鏈路層;1 物理層。
2請你詳細的解釋一下IP協(xié)議的定義,在哪個層上面,主要有什么作用? TCP與UDP呢?
答:UDP,TCP在傳輸層,IP在網(wǎng)絡(luò)層, TCP/IP是英文Transmission Control Protocol/Internet Protocol的縮寫,意思是"傳輸
控制協(xié)議/網(wǎng)際協(xié)議"。TCP/IP協(xié)議組之所以流行,部分原因是因為它可以用在各種各樣的信道和底層協(xié)議(例如T1和X.25、以太網(wǎng)以及RS-232串行接口)之上。確切地說,TCP/IP協(xié)議是一組包括TCP協(xié)議和IP協(xié)議,UDP(User Datagram Protocol)協(xié)議、ICMP(Internet Control Message Protocol)協(xié)議和其他一些協(xié)議的協(xié)議組。TCP/IP協(xié)議并不完全符合OSI的七層參考模型。傳統(tǒng)的開放式系統(tǒng)互連參考模型,是一種通信協(xié)議的7層抽象的參考模型,其中每一層執(zhí)行某一特定任務(wù)。該模型的目的是使各種硬件在相同的層次上相互通信。這7層是:物理層、數(shù)據(jù)鏈路層、網(wǎng)路層、傳輸層、話路層、表示層和應(yīng)用層。而TCP/IP通訊協(xié)議采用了4層的層級結(jié)構(gòu),每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來完成自己的需求。這4層分別為:應(yīng)用層:應(yīng)用程序間溝通的層,如簡單電子郵件傳輸(SMTP)、文件傳輸協(xié)議(FTP)、網(wǎng)絡(luò)遠程訪問協(xié)議(Telnet)等。 傳輸層:在此層中,它提供了節(jié)點間的數(shù)據(jù)傳送服務(wù),如傳輸控制協(xié)議(TCP)、用戶數(shù)據(jù)報協(xié)議(UDP)等,TCP和UDP給數(shù)據(jù)包加入傳輸數(shù)據(jù)并把它傳輸?shù)?/p>
3請問交換機和路由器分別的實現(xiàn)原理是什么?分別在哪個層次上面實現(xiàn)的?
一般意義上說交換機是工作在數(shù)據(jù)鏈路層。但隨著科技的發(fā)展,現(xiàn)在有了三層交換機,三層交換機已經(jīng)擴展到了網(wǎng)絡(luò)層。也就是說:它等于“數(shù)據(jù)鏈路層 + 部分網(wǎng)絡(luò)層”。交換機中傳的是幀。通過存儲轉(zhuǎn)發(fā)來實現(xiàn)的。 路由器是工作在網(wǎng)絡(luò)層。路由器中傳的是IP數(shù)據(jù)報。主要是選址和路由。
4請問C++的類和C里面的STRUCT有什么區(qū)別?
答:除關(guān)鍵字不同外(class,struct)的唯一區(qū)別是, 結(jié)構(gòu)在默認情況下的成員是公共(public)的, 而類在默認情況下的成員是私有(private)的。
在C++中,結(jié)構(gòu)是特殊的類。
class是從struct發(fā)展而來的。之所以將struct和class都保留,是因為:
1、提出class是為了強調(diào)一種概念。
2、保留struct是為了照顧到大多數(shù)人的習慣。 struct和class是有區(qū)別的。 struct保證成員按照聲明順序在內(nèi)存中存儲。class不保證等等 而它們都可以繼承,實現(xiàn)多態(tài)等。但也有少許區(qū)別。比如:
struct A { }; class B : A{ }; //private繼承 struct C : B{ }; //public繼承
這是由于class默認是private,struct默認是public。
一般說來,struct和class可以換用(當然要注意一些語法問題)。 而struct更適合看成是一個數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)體, class更適合看成是一個對象的實現(xiàn)體,
對私有成員進行保護,還提供與外界的接口。
從習慣上更喜歡用class。
5請講一講析構(gòu)函數(shù)和虛函數(shù)的用法和作用?
答:置于“~”是析構(gòu)函數(shù);析構(gòu)函數(shù)因使用"~"符號(邏輯非運算符),表示它為膩構(gòu)造函數(shù),加上類名稱來定義。 ;析構(gòu)函數(shù)也是特殊的類成員函數(shù),它沒有返回類型,沒有參數(shù),不能隨意調(diào)用,也沒有重載,只有在類對象的生命期結(jié)束的時候,由系統(tǒng)自動調(diào)用。 有適放內(nèi)存空間的做用!
虛函數(shù)是C++多態(tài)的一種表現(xiàn) 例如:子類繼承了父類的一個函數(shù)(方法),而我們把父類的指針指向子類,則必須把父類的該函數(shù)(方法)設(shè)為virturl(虛函數(shù))。 使用虛函數(shù),我們可以靈活的進行動態(tài)綁定,當然是以一定的開銷為代價。
如果父類的函數(shù)(方法)根本沒有必要或者無法實現(xiàn),完全要依賴子類去實現(xiàn)的話,可以把此函數(shù)(方法)設(shè)為virturl 函數(shù)名=0 我們把這樣的函數(shù)(方法)稱為純虛函數(shù)。 如果一個類包含了純虛函數(shù),稱此類為抽象類
6全局變量和局部變量有什么區(qū)別?實怎么實現(xiàn)的?操作系統(tǒng)和編譯器是怎么知道的?
答:主要的區(qū)別是變量的作用范圍不同。全局變量在全局范圍內(nèi)都有效,而局部變量只在聲明此變量的作用域內(nèi)有效。 全局變量是屬于實例的,在初始化對象的時候初始化,生命周期與該實例相同,之所以叫全局變量是因為該實例中的所有方法或?qū)傩远伎梢砸?;局部變量是在實例方法?nèi)或static塊中,生命周期從調(diào)用該方法到該方法退出,并且只有該方法能夠引用之。 全局變量和局部變量的區(qū)別是在存儲器中位置不同,具體說,全局變量存儲在數(shù)據(jù)段中,局部變量都有可能,一般來說在堆棧段
7一些寄存器的題目,主要是尋址和內(nèi)存管理等一些知識。
答:尋址方式 表示指令中操作數(shù)所在的方法稱為尋址方式。8086/8088有七種基本的尋址方式:立即尋找,寄存器尋址,直接尋址,寄存器間接尋址,寄存器相對尋址,基址加變址尋址,相對基址加變址尋址。 直接尋址、寄存器間接尋址、寄存器相對尋址、基址加變址尋址和相對基址加變址尋址,這五種尋址方式屬于存儲器尋址,用于說明操作數(shù)所在存儲單元的地址。由于總線接口單元BIU能根據(jù)需要自動引用段寄存器得到段值,所以這五種方式也就是確定存放操作數(shù)的存儲單元有效地址EA的方法。有效地址EA是一個16位的無符號數(shù),在利用這五種方法計算有效地址時,所得的結(jié)果認為是一個無符號數(shù)。 除了這些基本的尋址方式外,還有固定尋址和I/O端口尋址等。
內(nèi)存管理 主要包括內(nèi)存的分配和回收整理等,實現(xiàn)內(nèi)存的高效利用。
Q8:8086是多少位的系統(tǒng)?在數(shù)據(jù)總線上是怎么實現(xiàn)的?
答:16位系統(tǒng),8位數(shù)據(jù)傳送,通過總線控制邏輯實現(xiàn)數(shù)據(jù)線和地址線的分時復(fù)用. 8086是Inter的16位微處理器 有16根數(shù)據(jù)線和20根地址線,它既能處理16位數(shù)據(jù),也能處理8位數(shù)據(jù) 內(nèi)部數(shù)據(jù)總線都是按16位設(shè)計的,單外部數(shù)據(jù)總線只有8條。
看過“實施工程師面試題及參考答案”的人還看了: