2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題_第1頁
2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題_第2頁
2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題_第3頁
2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題_第4頁
2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

2021年下半年軟件評測師考試軟件測試應(yīng)用技術(shù)下午真題(總分:97.48,做題時間:150分鐘)一、案例分析(總題數(shù):7,分?jǐn)?shù):70.00)1.閱讀下列C程序,回答下面問題。

【C程序】

longlongyaj1_parse_integer(constunsignedchar*number,size_tlength){

//1

longlongret=0;

longsign=1;

constunsignedchar*pos=number;

if(*pos=='-')

{

//2

pos++;sign=-1;

//3

}

if(*pos=='+')

{

//4

pos++;

//5

}

while(pos<number+length)

{

//6

if(ret>MAX_VALUE_TO_MULTIPLY)

{

//7

errno=ERANGE;

returnsign==1?LLONG_MAX:LLONG_MIN;

//8

}

ret*=10;

if(LLONG_MAX-ret<(*pos-'0'))

{

//9

errno=ERANGE;

returnsign==1?LLONG_MAX:LLONG_MIN;

//10

}

if(*pos<'0'||*pos>'9')

{

//11,12

errno==ERANGE;

returnsign==1?LLONG_MAX:LLONG_MIN;

//13

}

ret+=(*pos++-'0');

//14

}

returnsign*ret;

//15

}

//16(分?jǐn)?shù):16.66)(1).

【問題1】

請針對上述C程序給出滿足100%判定覆蓋所需的邏輯條件。(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:(編號條件1*pos=='-'2*pos!='-'3*pos=='+'4*pos!='+'5pos<number+length6pos>=number+length7ret>MAX_VALUE_TO_MULTIPLY8ret<=MAX_VALUE_TO_MULTIPLY9LLONG_MAX-ret<*pos-'θ')10LLONG_MAX-ret>=(*pos-'θ')11*pos<'θ'||*pos>'9'12*pos>='θ'&&*pos<='9')解析:本題考查基于結(jié)構(gòu)的測試及其測試用例設(shè)計方法。此類題目要求考生認(rèn)真閱讀題目中給出的實際代碼,采用判定覆蓋法設(shè)計測試用例,按照基本路徑法的步驟求解控制流圖、環(huán)路復(fù)雜度以及線性無關(guān)路徑。判定覆蓋指設(shè)計足夠的測試用例,使得被測程序中每個判定表達式至少獲得一次“真”值和“假”值,從而使程序的每一個分支至少都通過一次。本題中程序有6個判定,所以滿足判定覆蓋一共需要12個邏輯條件。(2).

【問題2】

請畫出上述C程序的控制流圖,并計算其控制流圖的環(huán)路復(fù)雜度(圈復(fù)雜度)V(G)。(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:(環(huán)路復(fù)雜度V(G)=8)解析:[考點]本題考查基于結(jié)構(gòu)的測試及其測試用例設(shè)計方法??刂屏鲌D是描述程序控制流的一種圖示方式,它由節(jié)點和定向邊構(gòu)成??刂屏鲌D的節(jié)點代表一個基本塊,定向邊代表控制流的方向。程序的環(huán)路復(fù)雜度等于控制流圖中判定節(jié)點的個數(shù)加1,本題控制流圖中判定節(jié)點個數(shù)為7,所以V(G)=8。(3).

【問題3】

請給出問題2中控制流圖的線性無關(guān)路徑。(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:(線性無關(guān)路徑:1.1-2-4-6-15-162.1-2-4-6-7-8-163.1-2-4-6-7-9-10-164.1-2-4-6-7-9-11-13-165.1-2-4-6-7-9-11-12-13-166.1-2-4-6-7-9-11-12-14-6...7.1-2-4-5-6...8.1-2-3-4-6...)解析:[考點]本題考查基于結(jié)構(gòu)的測試及其測試用例設(shè)計方法。線性無關(guān)路徑是指包含一組以前沒有處理的語句或條件的路徑。從控制流圖上來看,一條線性無關(guān)路徑是至少包含一條在其他線性無關(guān)路徑中從未有過的邊的路徑。程序的環(huán)路復(fù)雜度等于線性無關(guān)路徑的條數(shù),所以本題中應(yīng)該有8條線性無關(guān)路徑。2.閱讀下列說明,回答下面問題。

【說明】

某商場進行促銷活動,消費滿5000元后贈送總值10000元的代金券,可以在后續(xù)消費中使用。代金券包括300元20張、100元20張以及50元40張。其中300元和100元代金券只可用于線下消費抵扣,50元代金券只可用于線上商城消費抵扣。代金券使用規(guī)則為:線下購買品類1每滿1200元可使用300元代金券1張,每滿400可使用100元代金券1張;線下購買品類2每滿600元可使用300元代金券1張,每滿200元可使用100元代金券1張;線上購買品類1每滿300元可使用50元代金券1張,品類2每滿150元可使用50元代金券1張?;顒右?guī)則詳見表1。表1活動規(guī)則購買品類品類1品類2購買渠道線下線上線下線上購買金額每滿1200每滿400每滿300每滿600每滿200每滿150代金券300元1張100元1張50元1張300元1張100元1張50元1張

商場開發(fā)了一個小程序來自動抵扣顧客代金券并計算最終所需實際支付金額,程序的輸入包括300元代金券數(shù)量A,100元代金券數(shù)量B,50元代金券數(shù)量C,品類1消費金額D,品類2消費金額E,購買渠道F。程序的輸出包括300元代金券剩余數(shù)量G,100元代金券剩余數(shù)量H,50元代金券剩余數(shù)量I,所需實際支付金額J。其中,A、B、G、H為整數(shù)且取值在0到20之間,C和I為整數(shù)且取值在0到40之間,D、E、J為非負(fù)整數(shù),F(xiàn)為0或者1(0表示線下,1表示線上)。(分?jǐn)?shù):16.66)(1).

【問題1】

采用等價類劃分法對該程序進行測試,等價類表如表2所示,請補充表中空(1)~(6)。表2等價類輸入有效等價類編號無效等價類編號300元代金券數(shù)量A(1)1非整數(shù)8負(fù)整數(shù)9大于20的整數(shù)10100元代金券數(shù)量B大于等于0小于

等于20的整數(shù)2非整數(shù)11負(fù)整數(shù)12大于20的整數(shù)1350元代金券數(shù)量C(2)3非整數(shù)14負(fù)整數(shù)15(5)16品類1消費金額D(3)4非整數(shù)17負(fù)整數(shù)18品類2消費金額E非負(fù)整數(shù)5非整數(shù)19負(fù)整數(shù)20購買渠道F06非整數(shù)21(4)7(6)22(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:((1)大于等于0小于等于20的整數(shù)(2)大于等于0小于等于40的整數(shù)(3)非負(fù)整數(shù)(4)1(5)大于40的整數(shù)(6)除0和1以外其他整數(shù))解析:本題考查基于規(guī)格說明的測試及其測試用例設(shè)計方法。此類題目要求考生認(rèn)真閱讀題目對現(xiàn)實問題的描述,采用等價類劃分法,先給出等價類,然后給出測試用例。在輸入條件規(guī)定的取值范圍或值的個數(shù)的情況下,可以確定一個有效等價類和兩個無效等價類。在規(guī)定了輸入數(shù)據(jù)的一組值中(假定有n個值),并且程序要對每個輸入值分別處理的情況下,可以確定n個有效等價類和一個無效等價類。在規(guī)定輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可以確定一個有效等價類和若干個無效等價類。在輸入條件規(guī)定了輸入值的集合或規(guī)定了“必須如何”的條件下,可以確定一個有效等價類和一個無效等價類。在確定已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應(yīng)將該等價類進一步地劃分為更小的等價類。本問題中,300元代金券數(shù)量A的有效等價類為大于等于0且小于等于20的整數(shù),無效等價類為非整數(shù)、不滿足大于等于0且小于等于20的整數(shù)(進一步分為負(fù)整數(shù)和大于20的整數(shù));100元代金券數(shù)量B的有效等價類為大于等于0且小于等于20的整數(shù),無效等價類為非整數(shù)、不滿足大于等于0且小于等于20的整數(shù)(進一步分為負(fù)整數(shù)和大于20的整數(shù));50元代金券數(shù)量C的有效等價類為大于等于0且小于等于40的整數(shù),無效等價類為非整數(shù)、不滿足大于等于0小于等于40的整數(shù)(進一步分為負(fù)整數(shù)和大于40的整數(shù));品類1消費金額D的有效等價類為非負(fù)整數(shù),無效等價類為非整數(shù)、負(fù)整數(shù);品類2消費金額E的有效等價類為非負(fù)整數(shù),無效等價類為非整數(shù)、負(fù)整數(shù);購買渠道F的有效等價類為0、1,無效等價類為非整數(shù)、除0和1以外其他整數(shù)。(2).

【問題2】

根據(jù)以上等價類表設(shè)計的測試用例如表3所示,請補充表3中空(1)~(7)。表3測試用例編

號輸入覆蓋等價類

(編號)預(yù)期輸出ABCDEFGHIJ1000000(1)0(2)0(3)20000O(4)1,2,3,4,5,7000(5)3(6)000008,2,3,4,5,6////4-1000009,2,3,4,5,6////5210000010,2,3,4,5,6////60A00001,11,3,4,5,6////70-100001,12,3,4,5,6////802100001,13,3,4,5,6////900A0001,2,14,4,5,6////1000-10001,2,15,4,5,6////1100(7)0001,2,16,4,5,6////12000A001,2,3,17,5,6////130001001,2,3,18,5,6////140000A01,2,3,4,19,6////150000-101,2,3,4,20,6////1600000A1,2,3,4,5,21////170000021,2,3,4,5,22////(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:((1)1,2,3,4,5,6(2)0(3)0(4)1(5)0(6)任意非整數(shù),如A(7)任意大于40的整數(shù),如41)解析:[考點]本題考查基于規(guī)格說明的測試及其測試用例設(shè)計方法。本問題在問題1的基礎(chǔ)上,進一步根據(jù)等價類給出測試用例。在編寫等價類劃分法的測試用例時,如果輸入全部都來自有效等價類,則從每個有效等價類選取一個代表元素作為輸入;如果要考慮無效等價類,則每次只選取一個無效等價類,其余輸入都從有效等價類中選取。(3).

【問題3】

對于本案例采用的基于規(guī)格說明的測試來說,以上測試方法有哪些不足?(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:(1.沒有考慮邊界值;2.沒有考慮輸入數(shù)據(jù)之間的關(guān)系,如D和E不能同時為0。注:其他合理的解答亦可)解析:[考點]本題考查基于規(guī)格說明的測試及其測試用例設(shè)計方法。本問題進一步考查等價類劃分法的不足。首先,沒有考慮最容易出錯的邊界值,應(yīng)該是首選邊界值測試,然后把等價類劃分法作為補充。其次,沒有考慮輸入、輸出數(shù)據(jù)之間的關(guān)系,比如D和E表示的是兩種品類的消費金額,不可能同時為0。3.閱讀下列說明,回答下面問題。

【說明】

某現(xiàn)代農(nóng)業(yè)種植基地為進一步提升農(nóng)作物種植過程的智能化,欲開發(fā)智慧農(nóng)業(yè)平臺,支持全流程智能管理的種植生產(chǎn),實現(xiàn)農(nóng)業(yè)種植精準(zhǔn)化、管理可視化以及決策智能化。系統(tǒng)基于分層架構(gòu)設(shè)計,服務(wù)層和業(yè)務(wù)邏輯層基于SpringBoot開發(fā),表示層基于Web開發(fā),可通過大屏幕顯示器和手機端進行訪問。平臺主要功能是:

1.專業(yè)人員對農(nóng)作物、環(huán)境等監(jiān)測數(shù)據(jù)的監(jiān)控處理規(guī)則進行維護。

2.通過傳感器采集農(nóng)作物和環(huán)境等連續(xù)監(jiān)測數(shù)據(jù)。

3.對監(jiān)測信息進行分析和異常情況判定,并進行可視化展示和控制決策。

4.專業(yè)人員查看監(jiān)測信息和分析結(jié)果,并進行手動遠程控制。(分?jǐn)?shù):16.66)(1).

【問題1】

(1)針對農(nóng)業(yè)系統(tǒng)用戶的特點,平臺需要滿足易用性要求,易用性測試包括哪幾個方面?

(2)要求對后端API接口進行有效的安全性測試,安全性測試主要針對哪些漏洞?(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:((1)可辨識性、易學(xué)性、易操作性、用戶差錯防御性、用戶界面舒適性、易訪問性和易用性的依從性。(2)SQL注入、XSS攻擊、信息泄漏、身份認(rèn)證、訪問控制、明文傳輸?shù)取?解析:本題考查互聯(lián)網(wǎng)應(yīng)用測試相關(guān)知識。此類題目要求考生閱讀題目說明和問題中的描述,根據(jù)對問題的分析,回答測試有關(guān)的問題。本題考查對應(yīng)用的非功能性指標(biāo)的測試,包括易用性、安全性、兼容性、性能和用戶滿意度。本問題考查表示層的易用性和服務(wù)層API接口測試。易用性是Web端涉及的主要質(zhì)量特性之一,體現(xiàn)為系統(tǒng)被理解、學(xué)習(xí)、使用和吸引用戶的能力。易用性測試是指在指定的使用環(huán)境中,測試系統(tǒng)為了指定的目標(biāo)能夠為指定用戶使用的程度。服務(wù)層的測試主要是接口測試,涉及的質(zhì)量特性包括功能性、安全性、性能效率。本系統(tǒng)為農(nóng)業(yè)系統(tǒng),表示層基于Web開發(fā),系統(tǒng)的用戶涉及農(nóng)業(yè)領(lǐng)域的專業(yè)人員,針對農(nóng)業(yè)領(lǐng)域,由于互聯(lián)網(wǎng)應(yīng)用的受眾未知性特點,使用系統(tǒng)的基礎(chǔ)技能不確定,需要系統(tǒng)滿足易用性。對易用性的測試可以從可辨識性、易學(xué)性、易操作性、用戶差錯防御性、用戶界面舒適性、易訪問性和易用性的依從性等特性開展。本系統(tǒng)基于分層架構(gòu)設(shè)計,服務(wù)層和業(yè)務(wù)邏輯層基于SpringBoot開發(fā),前端對后端服務(wù)層的訪問,通過API接口進行交互,涉及Web端和移動應(yīng)用端程序連接到服務(wù)層API。除了應(yīng)用的功能之外,需要對后端API接口進行測試。API的廣泛性和復(fù)雜性,使得接口測試面臨更多挑戰(zhàn),接口安全性測試難度更大。因此,在接口測試時,需要綜合考慮面對的安全漏洞和安全隱患。常見的漏洞有接口調(diào)用時的SQL注入、XSS攻擊、信息泄漏、身份認(rèn)證、訪問控制、明文傳輸?shù)取?2).

【問題2】

系統(tǒng)支持大屏幕顯示器和手機端網(wǎng)頁訪問,為進行兼容性測試設(shè)計測試矩陣。(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:(注:測試矩陣的要點包括如下三個方面。(1)繪制出操作系統(tǒng)平臺和瀏覽器矩陣;(2)Web測試主流操作系統(tǒng)和瀏覽器;(3)移動設(shè)備常用移動操作系統(tǒng)和瀏覽器版本。)解析:[考點]本題考查互聯(lián)網(wǎng)應(yīng)用測試相關(guān)知識。本問題考查兼容性測試的內(nèi)容。本題給出系統(tǒng)前端表示層基于Web開發(fā),可通過大屏幕顯示器和手機端進行訪問,需要考慮兩種訪問途徑的平臺兼容性。設(shè)備不同,所支持的系統(tǒng)平臺可能不同,使用戶通過不同設(shè)備進行訪問時能夠正確使用,各類功能都能不受限制。兼容性測試矩陣是進行兼容性測試的有效工具,針對該應(yīng)用需支持的不同設(shè)備上不同版本操作系統(tǒng)平臺與平臺上運行的瀏覽器的兼容性測試,需考慮Web測試主流操作系統(tǒng)和瀏覽器,以及移動設(shè)備常用移動操作系統(tǒng)和瀏覽器版本。如包括桌面系統(tǒng)和手機上運行的操作系統(tǒng)Windows、Linux、Android和iOS等的不同版本,以及瀏覽器版本之間的組合,構(gòu)建兼容性二維矩陣,行表示設(shè)備上操作系統(tǒng)平臺,列表示瀏覽器。測試時分別在單元格記錄設(shè)備操作系統(tǒng)與瀏覽器組合的測試情況。(3).

【問題3】

平臺的應(yīng)用性能指標(biāo)中,發(fā)起請求到響應(yīng)完成包括哪幾部分?

性能測試時,采用Apdex(應(yīng)用性能指數(shù))對用戶使用該系統(tǒng)的性能滿意度進行度量,系統(tǒng)的Apdex指數(shù)需要滿足期望要求為0.9以上。測試數(shù)據(jù)表如下表所示。

測試數(shù)據(jù)表(閾值T=1s)請求/響應(yīng)執(zhí)行時間t處理請求數(shù)量t≤1s71501s<t≤4s450t>4s或沒有正常處理400

請計算本系統(tǒng)的Apdex指數(shù),并說明本系統(tǒng)是否達到要求。(分?jǐn)?shù):3.33)__________________________________________________________________________________________

正確答案:(請求時間傳輸、服務(wù)器處理時間、響應(yīng)傳輸?shù)角岸藭r間、前端頁面加載時間、前端頁面渲染時間。Apdex指數(shù)=(滿意:小于T的樣本數(shù)+容忍:T~4T的樣本數(shù)/2)/總樣本數(shù)=(7150+(450/2))/8000=0.9218750.921875大于0.9,所以該系統(tǒng)的用戶滿意度達到了期望要求。)解析:[考點]本題考查互聯(lián)網(wǎng)應(yīng)用測試相關(guān)知識。本問題考查性能測試的內(nèi)容。由于互聯(lián)網(wǎng)應(yīng)用受眾未知的特點,用戶滿意度尤為重要,用戶滿意度是本平臺的關(guān)鍵指標(biāo)。所以平臺性能測試時,采用Apdex(應(yīng)用性能指數(shù))對用戶使用該平臺的性能滿意度進行度量。對于基于Web的分層架構(gòu)系統(tǒng),從用戶發(fā)出請求到響應(yīng)完成,涉及先將請求從前端傳輸?shù)椒?wù)器端,并由服務(wù)器對請求內(nèi)容進行處理,然后將響應(yīng)返回到前端,加載前端頁面并完成渲染這幾個部分,所以,應(yīng)用性能指標(biāo)中從發(fā)起請求到響應(yīng)完成的時間包括:請求傳輸時間、服務(wù)器處理時間、響應(yīng)傳輸?shù)角岸藭r間、前端頁面加載時間、前端頁面渲染時間。Apdex量化時把最終用戶的體驗和應(yīng)用性能聯(lián)系在了一起,對應(yīng)用戶滿意度通過響應(yīng)時間數(shù)值T來劃分,具體分為如下三個區(qū)間:滿意:(0,T]讓用戶感到很愉快;容忍:(T4T]慢了一點,但還可以接受;失望:(4T~)太慢了,無法容忍。本系統(tǒng)的Apdex指數(shù)需要滿足期望要求為0.9以上,并設(shè)定T=1s,記錄請求執(zhí)行時間和處理請求數(shù)量由上表給出。請求執(zhí)行時間在1s以下的處理請求數(shù)量為7150,請求執(zhí)行時間在1s~4s(4T)的記錄數(shù)為450,請求執(zhí)行時間大于4s或沒有正常處理請求的數(shù)量為400。利用請求/響應(yīng)時間和處理請求數(shù)量,計算Apdex指數(shù),然后根據(jù)所計算的Apdex指數(shù)值與需求之間進行比較,判定是否達到給定的要求。Apdex的計算如下:Apdex=(小于T的樣本數(shù)+T~4T的樣本數(shù)/2)/總樣本數(shù)在題目所給的測試數(shù)據(jù)條件下:Apdex指數(shù)=(滿意:小于T的樣本數(shù)+容忍:T~4T的樣本數(shù)/2)/總樣本數(shù)=(7150+(450/2))/8000=0.9218750.921875大于0.9,所以該系統(tǒng)的用戶滿意度達到了期望要求。4.閱讀下列說明,回答下面問題。

【說明】

某在線購物平臺的計費子系統(tǒng)提供購物車管理、賬戶信息管理和結(jié)算管理功能,主要功能如下:

購物車管理:可展示特定用戶已選購商品的列表,包含商品的名稱、單價、數(shù)量等基本信息;并提供選購商品的增、刪、改、查等基本管理操作。

賬戶信息管理:可展示特定用戶的收貨地址、持有的優(yōu)惠券、賬戶余額等基本信息。

結(jié)算管理:可從購物車中選取商品進行結(jié)算,依據(jù)商品單價、數(shù)量及選擇的優(yōu)惠券計算所需支付的貨款總額。

系統(tǒng)面向全國用戶服務(wù),并以微服務(wù)的分布式架構(gòu)部署于某公有云平臺,采用公有云提供的分布式數(shù)據(jù)庫和分布式文件系統(tǒng)進行數(shù)據(jù)存儲。(分?jǐn)?shù):17.50)(1).

【問題1】

請列舉系統(tǒng)部署采用分布式架構(gòu)部署的三大優(yōu)點。(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:(支持大量并發(fā)用戶,具備容錯和災(zāi)備能力,可靈活擴展。)解析:本題主要考查軟件系統(tǒng)評測。此類題目要求考生認(rèn)真閱讀題目對現(xiàn)實問題的描述,結(jié)合軟件評測的相關(guān)理論,分析測試的合理性。題目已經(jīng)給出了一個子系統(tǒng)的各個功能和部署安排,需要根據(jù)問題描述,分析各階段軟件測試的必要性和合理性。需要注意題干中的“分布式架構(gòu)部署”,要求考生掌握分布式軟件測試與集中式軟件測試的異同。分布式架構(gòu)部署的優(yōu)點包括擴展性強、高容災(zāi)性、適合高并發(fā)場景等。(2).

【問題2】

(1)系統(tǒng)的存儲的可擴展性是否需要測試?請簡要說明原因。

(2)系統(tǒng)的存儲訪問接口是否需要測試?請簡要說明原因。(分?jǐn)?shù):2.50)__________________________________________________________________________________________

正確答案:((1)不需要,本系統(tǒng)采用公有云提供的分布式數(shù)據(jù)庫和分布式文件系統(tǒng)進行數(shù)據(jù)存儲,為已有成熟產(chǎn)品,殘留風(fēng)險很小,無需進一步測試。(2)需要,本系統(tǒng)與公有云存儲系統(tǒng)交互的數(shù)據(jù)訪問接口為新開發(fā)接口,需進行必要的測試。)解析:[考點]本題主要考查軟件系統(tǒng)評測。根據(jù)題目描述的“采用公有云提供的分布式數(shù)據(jù)庫和分布式文件系統(tǒng)進行數(shù)據(jù)存儲”可知,存儲的可擴展性由公有云管理,為已有成熟產(chǎn)品,無須進一步測試。但系統(tǒng)與公有云的存儲訪問接口屬于新開發(fā)接口,需要進行測試。(3).

【問題3】

為保證系統(tǒng)功能的正確性,測試人員對購物車管理、賬戶信息管理和結(jié)算管理分別進行了單元測試和接口測試,并準(zhǔn)備進行整個購物平臺系統(tǒng)的系統(tǒng)集成測試,在此之前,還應(yīng)進行什么測試?在測試中,將某商品的單價從10元修改為11元,與此同時,甲乙兩個用戶分別在北京和上海兩地,在不使用任何優(yōu)惠券的情況下,對包含3個該商品的訂單進行結(jié)算操作,甲看到的總價為30元,乙看到的總價為33元。這個錯誤說明系統(tǒng)設(shè)計時存在什么缺陷?(分?jǐn)?shù):2.50)__________________________________________________________________________________________

正確答案:(計費子系統(tǒng)測試數(shù)據(jù)一致性缺陷)解析:[考點]本題主要考查軟件系統(tǒng)評測。在對計費子系統(tǒng)進行單元測試、接口測試之后,對整個購物平臺系統(tǒng)進行系統(tǒng)集成測試之前,需要對計費子系統(tǒng)進行測試。甲用戶的計費結(jié)果與修改后的單價不一致,屬于數(shù)據(jù)一致性缺陷。(4).

【問題4】

為測試系統(tǒng)的功能性,測試人員進行以下測試:

(1)在北京地區(qū)搭建測試系統(tǒng),對系統(tǒng)的結(jié)算管理模塊的功能進行測試,但未測試其他兩個模塊。

(2)在上海地區(qū)搭建不同硬件配置的測試系統(tǒng),對系統(tǒng)的購物車管理模塊的功能進行測試,但未測試其他兩個模塊。

以上測試方案是否存在問題?如存在問題,請簡要說明原因。(分?jǐn)?shù):2.50)__________________________________________________________________________________________

正確答案:(存在問題。對采用分布式架構(gòu)實現(xiàn)的軟件進行測試時,應(yīng)考慮系統(tǒng)是否能為所有并發(fā)用戶提供相同的服務(wù)水平,提供相同的服務(wù)功能。)解析:[考點]本題主要考查軟件系統(tǒng)評測。由于該系統(tǒng)使用分布式架構(gòu)部署,需要考慮對于不同的并發(fā)用戶,服務(wù)功能和服務(wù)水平是否一致。在不同地區(qū)測試不同的模塊,無法保證同一功能對于各地用戶的結(jié)果相同。5.

【問題1】

在題目給定的函數(shù)中,根據(jù)函數(shù)描述功能,請找出存在的一處邏輯錯誤,并改正。

(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:(錯誤:if((cmdLen==0)&(cmdLen>MAXCMD))改正:if((cmdLen==0)||(cmdLen>MAXCMD)))解析:本題主要考查軟件測試的一些基本概念和方法在測試實踐中的應(yīng)用。在嵌入式軟件測試過程中,代碼審查是一種常用的方法,而且根據(jù)對錯誤發(fā)現(xiàn)階段的統(tǒng)計,至少60%的錯誤都可以在靜態(tài)測試階段發(fā)現(xiàn),并且代碼審查的效率最高。通過閱讀程序功能需求,運用測試概念和方法進行基于需求的測試用例設(shè)計,是測試人員的基本技術(shù)能力,同時需要根據(jù)軟件重要度等級要求保證設(shè)計測試用例的充分性。此題目要求考生認(rèn)真閱讀題目所給的軟件功能需求描述和代碼,結(jié)合嵌入式軟件測試的基本概念以及測試用例設(shè)計要求,在嵌入式軟件測試中進行實際應(yīng)用。此問題主要考查代碼審查方法的使用以及對C語言的熟悉程度。題目中描述的主要功能為“獲取命令函數(shù)主要完成命令獲取及通過校驗和判斷是否為合法命令,如果為合法命令,則函數(shù)返回命令字前4字節(jié),否則返回錯誤碼”。按照代碼審查方法,依據(jù)需求描述,需要閱讀代碼,審查代碼的下列方面:1.功能正確性和完整性;2.邏輯表達正確性;3.變量使用正確性;4.注釋準(zhǔn)確、充分、有意義;5.是否存在多余物;6.正確處理異常;7.迭代代碼保證中止;8.編碼遵從編碼標(biāo)準(zhǔn)。下面就代碼進行分析(為了便于分析,對代碼的有效語句按行編號)。(1)#defineMAXCMD16(2)INT32getEcho(UINT32*

cmdBuf){(3)UINT32icnt=0;(4)UINT32cmdLen=0;

/*命令長度*/(5)UINT32chkSum=0;

/*校驗和*/(6)cmdLen=*(UINT32*)(pcibarAddr+BASEADDR_ECHO);

/*讀取長度*/(7)if((cmdLen==0)&(cmdLen>MAXCMD))

{

/*長度合法性檢查*/(8)return-1;}(9)else{(10)for(icnt=0;icnt<(cmdLen-4);icnt+=4)

{

/*讀取命令,并計算校驗和*/(11)*(cmdBuf+icnt/4)=*(UINT32*)(pcibarAddr+BASEADDR_ECHO+icnt);(12)chkSum+=*(cmdBuf+icnt/4);}(13)if(chkSum==(*(UINT32*)(pcibarAddr+BASEADDR_ECHO+icnt)))

{(14)/*如果校驗和正確,則清除命令緩存,并將讀取命令返回*/(15)*(UINT32*)(pcibarAddr+BASEADDR_ECHO)=0;(16)(*(UINT32*)(pcibarAddr+BASEADDR_ECHO+4))=0;(17)(*(UINT32*)(pcibarAddr+BASEADDR_ECHO+icnt))=0;(18)return(*(cmdBuf+1));}(19)else{(20)return-2;}}}代碼第(1)行進行了最大命令長度的定義,第(2)行為函數(shù)名稱和參數(shù)的定義,第(3)行至第(5)行為3個局部變量的定義,并且有注釋,不存在邏輯問題。第(6)行為讀取命令長度,第(7)行對命令長度的合法性進行檢查,第(8)行為返回-1;依據(jù)需求“如果為合法命令,則函數(shù)返回命令字前4字節(jié),否則返回錯誤碼”,第(8)行返回-1,非命令字的前4字節(jié),故-1為錯誤碼,也就是第(7)行應(yīng)該為命令長度非法的條件為真時,返回-1。第(6)行讀取命令長度無錯誤,第(7)行有邏輯需要重點檢查。第(7)行的第一個條件為命令長度等于0,肯定為非法長度;第二個條件為大于最大長度,也是非法長度,這兩個條件滿足一個就可判定為命令長度非法,而且這兩個條件不可能同時滿足,故這兩個條件應(yīng)該為邏輯或(||)即滿足一個就可判定為長度非法,但是程序中卻使用了位與運算(&),故此邏輯條件錯誤,正確的邏輯條件應(yīng)該為邏輯或,即if((cmdLen==0)||(cmdLen>MAXCMD))。第(10)行至第(12)行為命令長度合法時,讀取命令,并計算命令的校驗和。第(10)行的循環(huán)邏輯為命令長度減去校驗和的長度,即僅計算命令長度和命令字的校驗和,符合需求中給定的命令格式描述,并且也是將偏移量先作為數(shù)字進行計算,最后再轉(zhuǎn)換為地址讀取數(shù)據(jù),無邏輯問題。第(11)行和第(12)行為取值和計算,邏輯正確。第(13)行至第(18)行判斷如果校驗和正確,則清除命令緩存,并將讀取命令返回。第(13)行判斷計算的校驗和與讀取的校驗和是否相等,邏輯正確。第(15)、(16)、(17)行分別將命令長度、命令字的第一個字節(jié)和校驗和位置清空,邏輯正確。第(18)行返回命令長度,也沒問題。第(20)行為計算校驗和與讀取校驗和不一致時,返回錯誤碼-2,邏輯也沒問題。所以通過上面的審查過程,可確定邏輯錯誤出現(xiàn)在第(7)行,為邏輯條件使用錯誤,本該使用邏輯或(||)卻錯誤使用位與(&)。錯誤為第(7)行if((cmdLen==0)&(cmdLen>MAXCMD))。改正后為if((cmdLen==0)||(cmdLen>MAXCMD))。6.

【問題2】

為測試軟件功能,設(shè)計了下表所示的測試用例,請補充該表中的空(1)~(4)。

測試用例一覽表

(分?jǐn)?shù):10.00)__________________________________________________________________________________________

正確答案:((1)-1(2)0X00AB000C(3)0X00000011(4)-2)解析:本題主要考查軟件測試的一些基本概念和方法在測試實踐中的應(yīng)用。此問題主要考查考生閱讀并理解軟件功能需求的能力,以及根據(jù)對軟件功能需求的理解,運用等價類劃分方法設(shè)計測試用例的能力。按照軟件功能需求描述的軟件功能,對照題表中的已知信息和提示信息,完成表中的問題。序號1中的輸入命令長度為“0X0000000C”,命令字為“0X00AB000C”,校驗和為“0X00AB0018”,命令長度為12,命令長度與命令字相加的校驗和為“0X00AB0018”。根據(jù)軟件功能需求可知,命令長度合法(不等于0且小于等于16),且命令長度與命令字相加的校驗和與讀取命令緩存區(qū)的校驗和相等,則返回命令字的前4個字節(jié),故預(yù)期輸出為“0X00AB000C”。序號2中輸入命令長度為“0X00000000”,命令字為“0X00AB000C”,校驗和為“0X00AB000C”,命令長度為0,命令長度與命令字相加的校驗和為“0X00AB000C”。根據(jù)軟件功能需求可知,命令長度非法(等于0),則返回錯誤碼。根據(jù)代碼審查可知,當(dāng)命令長度非法時,返回的錯誤碼為-1,故預(yù)期輸出為“-1”,即(1)處為-1。序號3中輸入命令長度為“0X00000010”,命令字為“0X00AB000C00000024”,校驗和為“0X00AB0040”,命令長度為16,命令長度與命令字相加的校驗和為“0X00AB0040”。根據(jù)軟件功能需求可知,命令長度合法(不等于0且小于等于16),且命令長度與命令字相加的校驗和與讀取命令緩存區(qū)的校驗和相等,則返回命令字的前4個字節(jié),故預(yù)期輸出為“0X00AB000C”,即(2)處為“0X00AB000C”。序號4中的輸入命令長度未知,命令字為“0X00AB000C00000024”,校驗和為“0X00AB0041”,預(yù)期輸出為-1。根據(jù)軟件功能需求可知,命令長度非法(等于0或大于16),則返回錯誤碼。根據(jù)代碼審查可知,當(dāng)命令長度非法時,返回的錯誤碼為-1。所以此測試用例應(yīng)該為命令長度非法的情況,且由等價類劃分可知,命令長度等于0的情況已經(jīng)進行了測試,該測試用例必然為測試命令長度大于16的情況。根據(jù)命令字相加的校驗和為“0X00AB0030”,而讀取的校驗和為“0X00AB0041”,讀取校驗和減去命令字校驗和為“0X00000011”,故可知序號4測試用例的命令長度為“0X00000011”,即17,滿足大于16的條件,故(3)處為“0X0000011”。序號5中的輸入命令長度為“0X00000010”,命令字為“0X00AB000C00000024”,校驗和為“0X00AB0041”,命令長度為16,命令長度與命令字相加的校驗和為“0X00AB0040”。根據(jù)軟件功能需求可知,命令長度合法(不等于0且小于等于16),命令長度與命令字相加的校驗和與讀取命令緩存區(qū)的校驗和不相等,則返回錯誤碼。根據(jù)代碼審查可知,當(dāng)計算校驗和與讀取校驗和不相等時,返回的錯誤碼為-2,故預(yù)期輸出為“-2”,即(4)處為-2。7.

【問題3】

軟件的測試覆蓋項是度量基于結(jié)構(gòu)測試充分性的一種手段,也是度量測試有效性的一種手段。在軟件基于結(jié)構(gòu)測試過程中,通常以語句測試

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論