一、選擇題
1.某程序輸入X作爲整數類型變量,5<=X<=20,如果用邊界值分析法設 計測試用例,則X應該取( a )邊界值。
A.4,5,20,21 B.5,20
C.4,21 D.5,8,10,20
2.軟件測試是爲了不斷提高軟件的( C )。
A.功能和效率 B.設計和技巧
C.質量和可靠性 D.質量和功能
3.以下屬於靜態測試方法的是(A )。
A.代碼審查 B.判定覆蓋
C.路徑覆蓋 D.語句覆蓋
4.軟件測試工作應該開始於( A )。
A.需求分析階段 B.概要設計階段
C.詳細設計階段 D.編碼之後
5.軟件測試的目的(c )
A.避免軟件開發中出現的錯誤
B. 發現軟件開發中出現的錯誤
C.儘可能發現並排除軟件中潛藏的錯誤,提高軟件的可靠性
D. 修改軟件中出現的錯誤
6.開發Web應用時,要求軟件能在Google Chrome中也能正常運行,這屬於哪個質量屬性要求?( C )
A .易用性 B .可維護性 C .兼容性 D .效率
7.開發軟件時,要求軟件運行時其CPU佔有率要低於70%,這屬於哪個質量屬性要求?D
A .易用性 B .可維護性 C .兼容性 D .效率
8.下面對靜態測試和動態測試的區別描述正確的是:B
A .靜態測試需要藉助於專門的測試工具,而動態測試不需要
B .靜態測試並沒有真正的運行軟件,而動態測試需要運行軟件
C .靜態測試是由開發人員執行的,而動態測試是由專門的測試人員完成
D .靜態測試是主要是爲了增加測試人員對軟件的理解,而動態測試是爲了發現缺陷
9.針對main()函數定義瞭如下的出口準則要求:要求達到100%的判定覆蓋。
變量i取下面的哪個值能效力最高的滿足上述的出口準則要求?( C )
main()
{
int i,sum=0;
scanf("%d",&i);//輸入變量i的取值;
while(i<=25)
{
sum=sum+i;
i++;
}
printf("%d\n",sum);//打印sum的值;
}
A.23 B.24 C.25 D.26
10.給定下列代碼,至少要多少個測試用例(a、b、c取值組合)達到條件覆蓋?( )B
Func GetMin(a, b, c)
IF (a < b .AND. a < c) THEN
Result = a
ELSE IF (b < a .AND. b < c) THEN
Result = b
ELSE
Result = c
END IF
return Result
A.2 B.3 C.4 D.5
11.醫療保險條例是這樣的,如果身體有重要疾病,則不給予保險;如果沒有重要疾病但是吸菸者,則給予保險,但沒有優惠;如果沒有重要疾病、也不吸菸但愛好滑雪,則給予保險且有10%優惠,其它則有15%優惠。用決策表方法,大概設計出有效測試用例數是多少?B
A.3 B.4 C.5 D.6
12.我們從某個輸入區域中取一個數據進行測試,就完成這個輸入域測試的方法是下列哪一個?A
A.等價類劃分 B.決策表 C.因果圖 D.正交試驗法
13.( d)是選擇若干個測試用例,運行被測程序,使得程序中的每個可執行語
句至少執行一次。
A.條件覆蓋 B.組合覆蓋 C.判定覆蓋 D.語句覆蓋
14.( a)是設計足夠多的測試用例,使得程序中每個判定包含的每個條件的所
有情況(真/假)至少出現一次,並且每個判定本身的判定結果(真/假)也至少
出現一次。
A.判定-條件覆蓋 B.組合覆蓋 C.判定覆蓋 D.條件覆蓋
15.軟件測試是軟件質量保證的重要手段,下述哪種測試是軟件測試的最基礎環
節?( b )
A.功能測試 B.單元測試 C.結構測試 D.驗收測試
二、簡答題
1.用白盒測試(分支,條件,路徑)
僞碼程序如下:
Start
Input(A,B,C)
If A>5 then x=10
else x=1
Endif
If B>10 then y=20
else y=2
Endif
If C>15 then z=30
else z=3
Endif
Print(x,y,z)
Stop
2.請用條件覆蓋測試法爲下面java代碼的測試設計測試用例。
程序流程圖及流圖如
條件覆蓋策略:
設條件x >= 90爲條件1,y >= 90爲條件2,(x + y) >= 165爲條件3, 則選擇如下測試用例策略:
3.某保險公司承擔人壽保險,該公司保費計算方式爲:保費=投保額*保險率,保險率依點數不同而有別,10點以上(含10點)費率爲0.6%,10點以下費率爲0.1%
點數的計算是年齡、性別、婚姻、撫養人數所得的點數的總和
輸入:年齡、性別、婚姻、撫養人數
輸出:保險率
輸入數據說明:
請用等價類劃分的方法設計測試用例
解答:
第一步:輸入和輸出變量確認
- 輸入:年齡、性別、婚姻、撫養人數
- 輸出:保險率
- 等價類劃分原則:按照輸入變量來確認等價類(有效等價類和無效等價類)
第二步:等價類劃分
第三步:設計測試用例
1、設計測試用例,儘可能的覆蓋尚未覆蓋的有效等價類。
- (1)(8)(10)(12)
- (2)(9)(11)(13)
- (3)(8)(10)(14)
2、設計測試用例,使得每一個新設計的測試用例只包含一個無效等價類,其他的選擇有效等價類。
- (4)(8)(10)(12)
- (5)(9)(11)(13)
- (6)(8)(10)(14)
- (7)(8)(10)(14)
- (1)(8)(10)(15)
- (2)(9)(11)(16)
- (3)(8)(10)(17)
說明:在設計無效部分的測試用例的時候,有效等價類部分,可以任意選擇。