金山的軟件測(cè)試方向的筆試,考的都是很專業(yè)的測(cè)試方面的問題。
第一題是如何測(cè)試一個(gè)安裝程序,選用什么工具,什么方法; 用虛擬機(jī)測(cè)試安裝程序,在虛擬機(jī)上運(yùn)行安裝程序。 主要測(cè)試安裝時(shí)的安裝目錄、環(huán)境變量、硬件環(huán)境以及卸載過程等。 第二題是軟件測(cè)試前需要做哪些準(zhǔn)備工作;
①明確測(cè)試對(duì)象,了解測(cè)試內(nèi)容; ②根據(jù)相關(guān)文檔(需求文檔和設(shè)計(jì)文檔)編寫軟件測(cè)試計(jì)劃,如測(cè)試策略、測(cè)試方法; ③設(shè)計(jì)測(cè)試用例; ④搭建測(cè)試環(huán)境; 最后是執(zhí)行測(cè)試。 (提交測(cè)試報(bào)告) 第三題是軟件開發(fā)的階段,軟件測(cè)試的階段,以及每個(gè)階段的任務(wù);
{RAD(rap application development),就是軟件開發(fā)過程中的一個(gè)重要模型,稱為快速應(yīng)用開發(fā)模型。其模型構(gòu)圖形似字母V,所以又稱V模型。他通過開發(fā)和測(cè)試同時(shí)進(jìn)行的方式來縮短開發(fā)周期,提高開發(fā)效率。 V模型大體可以劃分為下面幾個(gè)不同的階段步驟,既需求分析、概要設(shè)計(jì)、祥細(xì)設(shè)計(jì)、編碼、單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試。} ⑴需求分析:明確客戶需要,按需求寫出規(guī)格文檔說明書; ⑵概要設(shè)計(jì):構(gòu)建框架,描述模塊功能及接口; ⑶祥細(xì)設(shè)計(jì):設(shè)計(jì)模塊的具體實(shí)現(xiàn)方式及模塊的組合方式(把程序的具體實(shí)現(xiàn)的功能,現(xiàn)象等描述出來); ⑷編碼:按照祥細(xì)設(shè)計(jì)好的模塊功能表,編寫出實(shí)際的代碼; ①單元測(cè)試(模塊測(cè)試):按照設(shè)定好的最小測(cè)試單元進(jìn)行按單元測(cè)試,主要是測(cè)試程序代碼; ②集成測(cè)試(也叫組裝測(cè)試,聯(lián)合測(cè)試):集成測(cè)試是在軟件系統(tǒng)集成過程中所進(jìn)行的測(cè)試,其主要目的是檢查軟件單位之間的接口是否正確; ③系統(tǒng)測(cè)試:是對(duì)已經(jīng)集成好的軟件系統(tǒng)進(jìn)行徹底的測(cè)試,以驗(yàn)證軟件系統(tǒng)的正確性和性能等滿足其指定的要求; ④驗(yàn)收測(cè)試:驗(yàn)收測(cè)試的目的是確保軟件準(zhǔn)備就緒,并且可以讓最終用戶將其用于執(zhí)行軟件的既定功能和任務(wù)。 第四題應(yīng)該是個(gè)智力題,每3個(gè)空啤酒瓶可以換1瓶啤酒,10個(gè)空瓶最多可以換多少瓶啤酒! 4瓶 后面是關(guān)于測(cè)試用例的題: 第五題是一個(gè)正交表法設(shè)計(jì)測(cè)試用例; 第六題是設(shè)計(jì)對(duì)于一個(gè)鍵盤的測(cè)試;
第七題是對(duì)于一三個(gè)整數(shù)組,判定其是不等邊三角形、等腰三角形,還是等邊三角形。
三邊長(zhǎng)大于0;兩邊之和大于第三邊;有兩邊等長(zhǎng);三邊等長(zhǎng)。 最后一題是程序題,沒有規(guī)定用什么語(yǔ)言:
n個(gè)選項(xiàng),每個(gè)選項(xiàng)里面又有若干個(gè)子選項(xiàng),從每個(gè)選項(xiàng)中選一個(gè)子選項(xiàng),一共有多少個(gè)組合。 #include <stdio.h> #define N 3 //選項(xiàng)數(shù)
#define Alen 3 //第一個(gè)選項(xiàng)的子選項(xiàng)數(shù) #define Blen 3 //第二個(gè)選項(xiàng)的子選項(xiàng)數(shù) #define Clen 3 //第三個(gè)選項(xiàng)的子選項(xiàng)數(shù) int num = 0; //總的組合數(shù) char A[N][Alen] = {{'A', 'B', 'C'}, {'D', 'E', 'F'}, {'H', 'I', 'J'}};//3個(gè)選項(xiàng),每個(gè)選項(xiàng)有3個(gè)子選項(xiàng)
int Len[N] = {Alen, Blen, Clen};//每個(gè)選項(xiàng)的子選項(xiàng)數(shù) int Path[N];//保存一個(gè)組合 void Recrusive(int i)
{ //超過N層輸出結(jié)果并且退出循環(huán) if (i >= N) { int k; num++; printf("%d: ",num); for (k = 0; k < N; k++) { printf("%c ", Path[k]); } printf("\n"); return; } int j ;
for (j = 0; j < Len[i]; j++) { //保存遍歷字符 Path[i] = A[i][j]; //調(diào)用下層循環(huán)
Recrusive(i + 1); } } void main()
{ Recrusive(0); } |
|