- 相關(guān)推薦
全國計算機等級考試四級軟件測試工程師筆試真題
導(dǎo)語:全國計算機等級考試四級軟件測試工程師即將開始,你復(fù)習(xí)好了嗎?下面就由小編為大家?guī)砣珖嬎銠C等級考試四級軟件測試工程師筆試真題,希望能給大家?guī)韼椭?/p>
單項選擇題
1. 下列有關(guān)軟件質(zhì)量的敘述中,錯誤的是
A) 軟件質(zhì)量不僅包括軟件產(chǎn)品的質(zhì)量,還包括軟件過程的質(zhì)量
B) 明確的軟件質(zhì)量屬性是指在合同或行業(yè)標準中規(guī)定必須實現(xiàn)的質(zhì)量要求
C) 隱含的軟件質(zhì)量屬性在合同或行業(yè)標準中沒有規(guī)定,因此在產(chǎn)品開發(fā)時不必專門考慮
D) 軟件的功能和性能必須結(jié)合在一起考慮
2. 下列有關(guān)軟件測試的敘述中,正確的是
A) 測試是軟件開發(fā)中一個單獨的階段,其目的是對已實現(xiàn)的程序編碼進行正確性檢驗
B) 一個成功的測試能夠驗證程序的確做了它應(yīng)該做的事情
C) 根據(jù)80/20的原則,優(yōu)秀的軟件開發(fā)人員所編寫的程序錯誤少,因此時于他們的程序,重點不應(yīng)放在缺陷測試上
D) 在軟件過程的早期尋找盡可能多的錯誤符合軟件測試的原則
3. 下列有關(guān)白盒測試的敘述中,錯誤的是
A)白盒測試是在同時擁有源代碼和可執(zhí)行代碼的情形下才可以進行的一種軟件測試方法
B)白盒測試應(yīng)該由開發(fā)人員實施,因為只有他們才能夠訪問測試執(zhí)行所涉及的代碼
C)即使對所有的源代碼都進行了100%的邏輯覆蓋測試,也不能**程序中沒有錯誤
D)軟件測試人員制定測試計劃的目的是想盡可能多地對源代碼進行測試
4. 下列有關(guān)黑盒測試的敘述中,錯誤的是
A) 黑盒測試是在不考慮源代碼的情形下進行的一種軟件測試方法
B) 最好由測試人員、最終用戶和開發(fā)人員組成的團隊來實施黑盒測試
C) 黑盒測試主要是**對比和分析實測結(jié)果和預(yù)期結(jié)果來發(fā)現(xiàn)它們之間的差異,所以黑盒測試又稱為“數(shù)據(jù)驅(qū)動”測試
D) 數(shù)據(jù)流測試是一種黑盒測試方法
5. 走查是一種重要的審查方法,下列所述的審查活動中,不屬于走查的是
A) 審查小組的組織者事先把相關(guān)的設(shè)計文檔、源程序和其他材料發(fā)給每一個小組成員,要求他們預(yù)先了解審查的內(nèi)容
B) 測試員事先根據(jù)審查的源代碼準備一批測試用例
C) 程序員在小組審查會上向全體審查人員逐條講解自己編寫的程序
D) 所有參與審查的人員集體扮演“計算機”的角色,使用事先準備的測試用例按照源程序規(guī)定的順序逐條執(zhí)行,討論可能出現(xiàn)的問題
6. 下面有關(guān)軟件測試的敘述中,不屬于H模型核心思想的是
A) 軟件測試不僅僅指測試的執(zhí)行,還包括很多其他的活動
B) 軟件測試是一個獨立的流程,貫穿產(chǎn)品整個開發(fā)周期,與其他流程并發(fā)地進行
C) 軟件測試要盡早準備,盡早執(zhí)行
D) 軟件測試不同層次的測試活動嚴格按照某種線性次序執(zhí)行
7. 下面有關(guān)路徑測試的敘述中,錯誤的是
A) 路徑覆蓋是最強的覆蓋測試,它不但能發(fā)現(xiàn)其他覆蓋測試能發(fā)現(xiàn)的問題,還能發(fā)現(xiàn)其他覆蓋測試不能發(fā)現(xiàn)的問題
B) 測試員不可能對任何一個程序都完成100%的路徑測試
C) 不提倡用不同的數(shù)據(jù)重復(fù)測試同一條路徑
D) 即使每條路徑都執(zhí)行了一次,程序還是可能存在缺陷
8. 同行評審主要包括管理評審、技術(shù)評審、過程評審和
A) 需求評審 B) 文檔評審 C) 質(zhì)量評審 D) 風(fēng)險評審
9. 對于如下給出的程序段:
if(A>B)and(C=5)
thendoP1;
若考慮滿足條件/判定覆蓋原則以及內(nèi)部邊界條件,需要設(shè)計的最小測試輸入數(shù)據(jù)集可能是
A)(A=2,B=1,C=5),(A=2,B=1,C=4),(A=1,B=2,C=5),(A=1,B=1,C=5)
B)(A=2,B=1,C=5),(A=2,B=1,C=4),(A=1,B=2,C=5),(A=1,B=2,C=4)
C)(A=2,B=1,C=5),(A=2,B=1,C=4),(A=1,B=2,C=5)
D)(A=2,B=1,C=5),(A=1,B=2,C=4)
10. 下列關(guān)于邏輯覆蓋的說法中,錯誤的是
A) 滿足條件覆蓋的測試不一定滿足判定覆蓋
B) 滿足條件組合覆蓋的測試一定滿足判定覆蓋、條件覆蓋和判定/條件覆蓋
C) 滿足路徑覆蓋的測試也一定滿足條件組合覆蓋
D) 滿足判定/條件覆蓋的測試也一定滿足判定覆蓋和條件覆蓋
11. 以下關(guān)于軟件性能測試的說法中,正確的是
A) 對于沒有并發(fā)的應(yīng)用系統(tǒng)而言,響應(yīng)時間與吞吐量成反比關(guān)系
B) 應(yīng)用系統(tǒng)的資源利用率越高,性能也就越好
C) 軟件性能測試是從用戶視角考察軟件性能
D) 并發(fā)進程數(shù)是軟件性能測試中一種常用的性能指標
12. 以下哪一種技術(shù)屬于基于性能計數(shù)器的分析技術(shù)
A) 數(shù)據(jù)流分析 B) 指針分析 C) 時間序列分析 D) 進程分析
13. 以下哪種軟件測試屬于軟件性能測試的范疇
A) 路徑覆蓋測試 B) 并發(fā)測試 C) 安全性測試 D) 健壯性測試
14. 以下關(guān)于軟件可靠性測試的說法中,正確的是
A) 軟件可靠性測試是一種比白盒測試更嚴格的軟件測試
B) 軟件可靠性測試的代價通常比較高
C) 軟件可靠性測試本質(zhì)上是一種黑盒單元測試
D) 軟件可靠性測試不適用于面向?qū)ο筌浖䴗y試
15. 以下關(guān)于面向?qū)ο筌浖䴗y試的說法中,正確的是
A)單個成員方法的測試不屬于面向?qū)ο髥卧獪y試考慮的范疇
B)等價類劃分測試只適用于傳統(tǒng)軟件的測試,不適用于面向?qū)ο筌浖臏y試
C)基于判定表的測試適用于面向?qū)ο筌浖臏y試
D)抽象類無法進行單元測試
16. 以下關(guān)于面向?qū)ο筌浖䴗y試的說法中,正確的是
A) 大突擊集成是最有效的面向?qū)ο筌浖蓽y試策略
B) 在面向?qū)ο筌浖膯卧獪y試中,一棵繼承樹上的每個類都需要進行測試
C) 針對一個類的多個實例間協(xié)作的測試屬于面向?qū)ο筌浖蓽y試考慮的范疇
D) 在面向?qū)ο筌浖膯卧獪y試中,基于判定表的測試是類層次測試的常用方法
17. 以下關(guān)于Web應(yīng)用軟件測試的說法中,正確的是
A) 排版結(jié)構(gòu)測試是數(shù)據(jù)層測試關(guān)注的內(nèi)容
B) 鏈接測試是Web應(yīng)用軟件內(nèi)容測試的重要內(nèi)容
C) 在對Web應(yīng)用軟件進行系統(tǒng)測試時,通常需要考慮性能測試
D) 測試Web應(yīng)用軟件在多用戶的情況下是否會出現(xiàn)系統(tǒng)崩潰,屬于Web應(yīng)用軟件可靠性測試考慮的范疇
18. 以下關(guān)于Web應(yīng)用軟件測試的說法中,正確的是
A) 應(yīng)用服務(wù)器兼容性測試是Web應(yīng)用軟件業(yè)務(wù)層測試的一項內(nèi)容
B) 瀏覽器兼容性測試是Web應(yīng)用軟件安全性測試的一項內(nèi)容
C) Web應(yīng)用軟件壓力測試的主要內(nèi)容是并發(fā)測試
D) 表單測試是Web應(yīng)用軟件易用性測試的一項內(nèi)容
19. 以下哪一項屬于軟件易用性測試關(guān)注的內(nèi)容
A) Web應(yīng)用軟件是否支持不同廠商開發(fā)的瀏覽器
B) 軟件是否提供圖形用戶界面
C) 軟件提供的功能是否豐富
D) 在處理復(fù)雜任務(wù)時,軟件的響應(yīng)時間是否符合需求
20. 以下哪一項屬于數(shù)據(jù)兼容性測試關(guān)注的范疇
A) 一個軟件是否支持不同的操作系統(tǒng)
B) 一個殺毒軟件是否會誤刪其他軟件保存的文件
C) 一個文字處理軟件的操作方式是否與同類軟件的操作方式一致
D) 一個電子郵件收發(fā)軟件是否可以導(dǎo)入以前版本保存的郵件
21. 下列有關(guān)測試過程抽象模型的描述中,正確的是
A) V模型中,單元測試驗證的是程序編碼
B) W模型強調(diào),測試伴隨著整個軟件開發(fā)周期同步進行,測試的對象是程序和設(shè)計
C) H模型的提出源自軟件開發(fā)中的活動常常是交叉進行的,存在反復(fù)觸發(fā)、迭代的關(guān)系
D) X模型提出針對完整的程序進行集成的編碼和測試
22. 下列有關(guān)測試執(zhí)行管理的描述中,錯誤的是
A) 測試用例執(zhí)行要求**測試結(jié)果準確完整
B) 對測試結(jié)果的追蹤應(yīng)該可追溯到具體責(zé)任人
C) 測試執(zhí)行完成后,并不意味著測試項目的結(jié)束
D) 檢查完所有測試用例的執(zhí)行結(jié)果是否完整即可結(jié)束測試執(zhí)行
23. 以下有關(guān)自動化測試腳本的說法中,錯誤的是
A)數(shù)據(jù)驅(qū)動腳本將測試輸入存儲在腳本中
B)線性腳本容易受軟件變化的影響,且無共享和重用的腳本
C)結(jié)構(gòu)化腳本的優(yōu)點是健壯性更好,可以對一些容易導(dǎo)致測試失敗的特殊情況進行處理
D)共享腳本的維護開銷低于線性腳本
24. 以下哪一項不屬于測試策劃的內(nèi)容
A) 確定測試的充分性要求 B) 建立測試環(huán)境
C) 提出測試的基本方法 D) 制定測試計劃
25. 單元測試的測試用例設(shè)計主要依據(jù)是
A)需求規(guī)格說明B)概要設(shè)計說明
C)接口規(guī)格說明D)詳細設(shè)計說明
論述題
1. 論述題1: 設(shè)計黑盒測試的測試用例
某圖書出租商店欲開發(fā)一個租書信息管理系統(tǒng),管理圖書的租借業(yè)務(wù)。
該系統(tǒng)的數(shù)據(jù)流圖如下:
根據(jù)系統(tǒng)的數(shù)據(jù)流圖,畫出對應(yīng)的程序功能圖。
(提示;在程序功能圖中不考慮文件和與文件交互的數(shù)據(jù)流,并可用狀態(tài)和遷移來描述。)
2. 計算該程序功能圖的McCabe復(fù)雜性度量。
3. 給出該程序功能圖的基本測試路徑集合。
4. QESuite Web Version 1.0中,已知某安全文檔管理系統(tǒng)測試項目的部分信息如下:
●在測試過程中先后產(chǎn)生4個測試版本。按日期排序分別為SEDM 1.0_101009,SEDM 1.0_101025,SEDM1.0_101103,SEDM1.0_101106。
●功能分類視圖中部分待測區(qū)域及人員分配定義如下表所示:
已知張明在功能區(qū)域“我的安全區(qū)/導(dǎo)入和導(dǎo)出”下發(fā)現(xiàn)一個軟件問題,下表中是該軟件問題的操作歷史信息,請依據(jù)QESuite Web Version 1.0的軟件問題生命周期定義和題中提供的相關(guān)人員分配和測試版本信息,假設(shè)下表中“執(zhí)行操作”的信息均正確,請找出表中的錯誤并說明理由。
5. 論述題3:
已知C源程序如下:
/**************************************************/
/* 功能:檢查輸入的標識符是否符合C語言規(guī)則 */
/**************************************************/
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#include<conio.h>
#include<malloc.h>
char*IsLegal(char*CheckWorD) ;
const int MaxWordLen=32;
char*ErrorMessages[]={ /*錯誤信息列表*/
"合法!",
"首字符只能是字母或下劃線!",
"常、變量只能由字母、下劃線和數(shù)字構(gòu)成!",
"常、變量標識不能用C語言關(guān)鍵字!"。
"常、變量標識不能用C語言預(yù)定義函數(shù)名!",
"內(nèi)存不夠!"
};
int main()
{
char*Prompt="C語言標識符的命名要遵守以下原則:";
char*TestWord;
int i;
TestWord=(char*)malloc(sizeof(char)*MaxWordLen);
/*TestWord存放用戶輸入*/
if(!TestWorD)
return 1;
/*顯示部分提示信息*/
puts(Prompt);
for(i=1;i<=4;i++){
puts(ErrorMessages[i]);
}
while(1){
printf(" 請輸入一個標識符(大寫的Q退出):");/*提示*/
scanf("%s",TestWorD) ; /*得到用戶輸入*/
if(toupper)(TestWord[0]))=='0')
break; /*循環(huán)出口*/
prind(" %s %s",TestWord,IsLegal(TestWorD) );/*判定標識符的合法性*/
}
free(TesfWorD) ;
return 0;
}
/*此函數(shù)檢驗標識符命名的合法性*/
char*IsLegal(ehar*CheckWorD)
{
char*KeyWords[]={"auto","break","case","char","continue","const","default",
"do","double","else","enum",extern","float","for","goto",
"if","int","long","noalias","register","return","short",
"signed","sizeof","static","struct","switch","typedef",
"union","unsigned","void","volatile","while","defined",
"define","undef","include","ifdef","ifndef","endif","line",
"error","elif","pragma"}; /*C關(guān)鍵字列表*/
char*Functions[]={"close","crest","eof","fclose","fcloseall","feof","fopen",
"ferror","fgetchar","fgets","fprintf","fputc","fputchar",
"fseek","get","putch","putc","printf","open","putchar",
"puts","read","scanf","abs","acos","asin","math","atan",
"atan2","atof","atoi","atol","ceil","dos","cosh",ecvt",
"exp","fabs","floor","fmod","frexp","itoa","labs","ldexp",
"log","log10","modf","pow","rand","sin","sqrt","srand",
"strtod","strlol","tan","tanh","ultoa","memset","strcpy",
"strcat","strchr","strcrap","calloc","isalnum","isalpha",
"toascii","tolower","tollpper","exit"); /*C主要預(yù)定義函數(shù)列表*/
char*Others="_"; /*'_'也可以用于關(guān)鍵字,但我們不推薦您使用!*/
int WordLength,i;
char*WordTemp;
WordLength=strlen(CheckWorD) ;
/*檢查標識符命名原則1*/
if((isalpha(CheckWord[0])==0)&&(CheckWord[0]!=Others[0]))
return ErrorMessages[1];
/*檢查標識符命名原則2*/
for(i=0;i<WordLength;i++)
if((isalnum(CheekWord[i]==0)&&(CheckWord[i]!=Others[0]))
return ErrorMessages[2];
/*檢查標識符命名原則3*/
for(i=0;i<44;i++)
{
if(!strcmp(CheckWord,KeyWords[i]))
return ErrorMessages[3];
}
/*檢查標識符命名原則4 */
for(i=0;i<69;i++)
{
if(!stremp(CheckWord,Functions[i]))
return ErrorMessages[4];
}
return ErrorMessages[0];
}
參照QESAT/C軟件分析與測試工具的規(guī)定,畫出程序中所有函數(shù)的控制流程圖;
6. 設(shè)計一組測試用例,使該程序所有函數(shù)的語句覆蓋率和分支覆蓋率盡量達到最大。如果認為該程序的語句覆蓋率或分支覆蓋率無法達到100%,需說明為什么。
【全國計算機等級考試四級軟件測試工程師筆試真題】相關(guān)文章:
全國計算機等級考試四級軟件測試工程師筆試訓(xùn)練10-06
計算機等級考試四級網(wǎng)絡(luò)工程師筆試真題10-09
全國計算機等級考試二級C++筆試真題10-11
計算機等級考試四級上機真題10-09
全國計算機等級考試四級筆試習(xí)題10-28
2017計算機等級考試四級筆試樣題08-27
全國英語等級考試四級口試真題卷精選05-21