當前位置:才華齋>計算機>計算機三級>

2016年計算機三級軟體測試技術上機試題

計算機三級 閱讀(3.27W)

  【第一題】

2016年計算機三級軟體測試技術上機試題

三角形問題說明:輸入三個正整數a、b、c,分別作為三角形的三條邊,現通過程式判斷由三條邊構成的三角形的型別是否為等邊三角形、等腰三角形、直角三角形、普通三角形以及非三角形。根據問題的規格說明,可以從輸出域劃分5種等價類:

輸出等價類

ID

條件

等價類

1

a=b∧b=c∧a=c∧(a+b>c∧b+c>a∧a+c>b)

等邊三角形

2

a=b∨b=c∨a=c∧(a+b>c∧b+c>a∧a+c>b)

等腰三角形

3

a2+b2=c2∨b2+c2=a2∨a2+c2=b2∧(a+b>c∧b+c>a∧a+c>b)

直角三角形

4

a≠b∧b≠c∧a≠c∧(a+b>c∧b+c>a∧a+c>b)

普通三角形

5

(a+b≤c∨b+c≤a∨a+c≤b)∨a≤0∨b≤0∨c≤0

非三角形

程式設計實現:

(1)對每一個輸出等價類,至少設計一個測試用例。

輸入格式:輸入(a,b,c):

輸出格式:輸出(ID型別):

例如:輸入(a,b,c):5,5,5↙(回車)

輸出(ID型別):1(等邊三角形),2(等腰三角形)

(2)假設10≤a,b,c≤100,根據劃分的等價類,設計邊界值測試用例。

例如:輸入(a,b,c):60,60,10↙(回車)

輸出(ID型別):2(等腰三角形)

2、閱讀下面的一段程式,

voidTest2(intX,intA,intB)

1{

2intk=0,j=0;

3if((A>1)&&(B=0))

4{

5X=X/A;

6k=A*B-1;

7}

8if((A==2)||(X>1))

9X=X+1;

10j=X+3;

11}//Test2

根據所給定的程式,確定該程式的獨立路徑如下:

路徑1:3→8→10→11

路徑2:3→5→6→8→10→11

路徑3:3→8→9→10→11

路徑4:3→5→6→8→9→10→11

程式設計實現:

對每一個獨立路徑,設計一個測試用例,並插入一條顯示輸出語句(printf/cout),顯示測試路徑標號。

輸入格式:輸入(X,A,B):

輸出格式:輸出(k,j):k=j=

路徑ID:

例如:輸入(X,A,B):1,2,1↙(回車)

輸出(k,j):k=0j=5

路徑ID:測試路徑4

  【第二題】

NextDate函式問題說明:輸入一個日期,求從輸入日期算起的第三天日期。例如,輸入為2008年8月8日,則該程式的輸出為2008年8月10日。NextDate函式包含三個整數變數month、day和year,並且滿足下列條件:1≤ month ≤12、1≤ day ≤31和2000≤ year ≤2100。分析各種輸入情況,列出為輸入變數month、day、year劃分的.有效等價類:

輸入等價類

輸入

ID

有效等價類

day

1

1 ≤day≤26

2

day=27

3

day=28

4

day=29

5

day=30

6

day=31

month

7

month=4,6,9,11

8

month=1,3,5,7,8,10

9

month=2

10

month=12

year

11

閏年

12

非閏年

程式設計實現:

(1) 對每一個有效等價類,至少設計一個測試用例。

輸入格式:輸入(yyyymmdd):

輸出格式:輸出(yyyy-mm-dd):

覆蓋等價類(ID型別):

閏年(Y/N):

例如:輸入(yyyymmdd) 20080105↙(回車)

輸出(yyyy-mm-dd): 2008-01-07

覆蓋等價類(ID型別):1,8,11

閏年(Y/N):N

(2)對每一個無效的month、day和year,分別輸入一個無效等價類。

例如:輸入(yyyymmdd) 20081305 ↙(回車)

輸出(yyyy-mm-dd): 無效月份

覆蓋等價類(ID型別):

閏年(Y/N):

2、閱讀下面的一段程式:

void Test1(int N,intI)

1 {

2int x=0;

3int y=0;

4while(N-->0)

5{

6if(I==0)

7 x=y+2;

8 else

9 if(I==1)

10 y=y+10;

11 else

12 x=y+20;

13}//while

14 }//Test1

根據所給定的程式,確定該程式的獨立路徑如下:

路徑1:4→14

路徑2:4→6→7→14

路徑3:4→6→9→10→4→14

路徑4:4→6→9→12→4→14

程式設計實現:

對每一個獨立路徑,設計一個測試用例,並插入一條顯示輸出語句(printf/cout),顯示測試路徑標號。

輸入格式:輸入(N,I):

輸出格式:輸出(x,y):x= y=

路徑ID:

例如:輸入(N,I): 1,2↙(回車)

輸出(x,y):x=20 y=0

路徑ID:測試路徑4