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