You are on page 1of 45

BTTH02 - Kiểm Tra Hộp Trắng

MSL:3
MSSV:3119410088
Họ Và Tên:Tạ Tấn Đạt

Hướng dẫn: Có thể sử dụng các công cụ để vẽ bao gồm (visio,relation rose,...). Cũng có
thể vẽ trên giấy và chụp lại dán vào tài liệu này.

Mỗi bài tập bên dưới làm theo các nội dung sau:
1. Kiểm thử dòng điều khiển
- Vẽ sơ đồ luồng điều khiển cơ bản.
- Tính độ phức tạp M (số đường độc lập cơ bản)
- Tìm bộ testcase.
-

2. Kiểm thử dòng dữ liệu


- Vẽ sơ đồ dòng dữ liệu.
- Kiểm tra bất thường của các biến. (Đề xuất hướng giải quyết nếu có)
Bài Tập 01

Bài Làm:
A)
Độ phức tạp M:

M=E-N+2P=14-11+2=5

Bộ testcase:

No Input Expected result Type of test cases

1 x=1 A Normal

2 x=2 A Normal

3 x=3,y=5 B Normal

4 x=3,y=10 B Boundary

5 x=3,y=11,z=3 C Normal

6 x=3,y=11,z=7 D Normal

7 x=3,y=11,z=5 D Boundary

B)
Kiểm thử biến X:
~duuk
~duuk
~duuk
~duk
~duuk
Không có trường hợp bất thường
Kiểm thử biến Y:
~dk
~dk
~duk
~duk
~duk
Có bất thường
Kiểm thử biến Z:
~dk
~dk
~dk
~duk
~duk
Có bất thường
Bài Tập 02
Bài Làm:

Độ phức tạp M:
M=E-N+2P=18-14+2P=6

Bộ Testcase:

No Input Expected result Type of test cases

1 a=-1 error message Normal

2 a=0 error message Boundary

3 a=1,b=-1 error message Normal

4 a=1,b=0 error message Boundary

5 a=1,b=1,c=-1 error message Normal

6 a=1,b=1,c=0 error message Boundary

7 a=3,b=1,c=1,max=0 3 Normal

8 a=3,b=3,c=1,max=0 3 Boundary

9 a=2,b=3.c=1,max=0 3 Normal

10 a=3,b=1,c=3,max=0 3 Boundary

11 a=2,b=1,c=3,max=0 3 Normal

B)
Kiểm tra biến a:

~duk

~duuk

=>Không có gì bất thường

Kiểm tra biến b:

~duk

~duk

~duuk

=>Không có gì bất thường

Kiểm tra biến c:

~duk

~duk

~duuk

=>Không có gì bất thường

Kiểm tra biến max:

~dduuk

1. ~dduduk

~ddududuk

=>Bất thường
Bài Tập 03

Bài Làm:

Sơ đồ luồng điều khiển:


Độ phức tạp M:

M=E-N+2P=8-7+2=3

Bộ testcase:

No Input Expected result Type of test cases

1 num1=0 0 Normal

2 num1=1,num 2=0 0 Normal


3 num1=3,num2=2 1 Normal

B)
Sơ đồ luồng dữ liệu:

Kiểm tra biến num1:

~duk

~duul
=>Không có gì bất thường

Kiểm tra biến num2:

~duk

~duul

=>Không có gì bất thường

Kiểm tra biến relint:

~duk

~dduk

=>Bất thường
Bài Tập 04

Bài Làm:
Sơ đồ luồng điều khiển:
Độ phức tạp M:

M=E-N+2P=9-8+2=3

Bộ testcase:

No Input Expected result Type of test cases


1 count=1;sum=2 2 Normal

2 count=3,sum=9 3 Normal

3 count=-2,sum=5 0 Normal

4 count=0,sum=5 0 Boundary

B)
Sơ đồ luồng dữ liệu:
Kiểm tra biến count:

~duk

~duuuk

~duuk
=>Không có gì bất thường

Kiểm tra biến sum:

~duk

~duuk

~dk(sum là tham số nên không bất thường)

Kiểm tra biến Average:

~dk

~dk

~dk

=>Bất thường
Bài Tập 05
Function that returns the number of days in the given month

Bài Làm:
Sơ đồ luồng điều khiển:

Độ phức tạp M:

M=E-N+2P=38-24+2=16

Bộ Testcase:

No Input Expected result Type of test cases

1 month=1 31 Normal

2 month=3 31 Normal

3 month=5 31 Normal

4 month=7 31 Normal

5 month=8 31 Normal

6 month=10 31 Normal

7 month=12 31 Normal

8 month=4 30 Normal

9 month=6 30 Normal
10 month=9 30 Normal

11 month=11 30 Normal

12 month=2,year=2000 29 Normal

13 month=13 0 Normal

14 month=2,year=1900 28 Normal

15 month=2,year=2004 29 Normal

16 month=2,year=2005 28 Normal

B)
Sơ đồ luồng dữ liệu:

Kiểm tra biến month

~duk

~duuk

=>Không có gì bất thường


Kiểm tra biến year

~dk(Không bất thường vì year là tham số)

~duk

~duuk

~duuuk

=>Không có gì bất thường


Bài Tập 06
Bài Làm:

Sơ đồ luồng điều khiển:


Độ phức tạp M:
M=E-N+2P=13-11+2=4

Bộ Testcase:

No Input Expected result Type of test cases

1 a=0 error Normal

2 a=1,b=4,c=1 -2+√3 , -2-√3 Normal

3 a=1,b=2,c=4 no result Normal

4 a=1,b=2,c=1 -1 Normal

B)
Sơ đồ luồng dữ liệu:
Kiểm tra biến a:
~duk

~duuk

~duuuk

~duuuk

=>Không có gì bất thường

Kiểm tra biến b:

~dk(không bất thường vì b là tham số)

~duk

~duuk

~duuk

=>Không có gì bất thường

Kiểm tra biến c:

~dk(không bất thường vì c là tham số)

~duk

~duk

~duk

=>Không có gì bất thường

Kiểm tra biến delta:

~dk(bất thường)

~duuk

~duuuk

~duuuuk

=>Bất thường

Hướng giải quyết:


- Nên kiểm tra biến a trước khi khai báo biến delta
Bài Tập 07
Bài Làm:

Sơ đồ luồng điều khiển:


Độ phức tạp M:
M=E-N+2P=12-10+2=4

Bộ testcase:

No Input Expected result Type of test cases

1 a=2,b=1 error Normal

2 a=2,b=3,x=1 2 Normal

3 a=2,b=2,x=1 2 Boundary

4 a=2,b=4,x=5 4 Normal

5 a=2,b=4,x=3 3 Normal

6 a=1,b=3,x=1 1 Boundary

7 a=1,b=3,x=3 3 Boundary

8 a=2,b=2,x=2 2 Boundary

B)
Sơ đồ luồng dữ liệu:

Kiểm tra biến a:


~duk

~duuuk

~duuk

~duuk

=>Không có gì bất thường

Kiểm tra biến b:

~duk

~duk

~duuuk

~duuk

=>Không có gì bất thường

Kiểm tra biến x:

~dk(Vì x là tham số nên không bất thường)

~duk

~duuk

~duuuk

=>Không có gì bất thường


Bài Tập 8:

Bài Làm:
Sơ đồ luồng điều khiển:
Độ phức tạp M:
M=E-N+2P=10-8+2=4
Bộ testcase:
No Input Expected result Type of test cases

1 array_size=-1 Normal

2 array_size=n>1 Normal

3 array_size=n>1, ∃a[i] ∈ value Normal

4 array_size=1||, ∀a[i] ∉ value Normal

Sơ đồ luồng dữ liệu:
Kiểm tra biến value:
~dk(Không bất thường vì value là tham số)
~duk
~dk(Không bất thường vì value là tham số)
~dk(Không bất thường vì value là tham số)
=>Không có gì bất thường
Kiểm tra biến array_size:
~duudk(Không bất thường vì array_size là tham số)
~duuudk(Không bất thường vì array_size là tham số)
~duuudk(Không bất thường vì array_size là tham số)
~duuudk(Không bất thường vì array_size là tham số)
=>Không có gì bất thường
Kiểm tra biến i:
~dduduk(Bất thường)
~dduuuk(Bất thường)
~dduuduk(Bất thường)
~dduuduk(Bất thường)
=>Bất thường
Hướng giải quyết:Khai báo biến i bên trong dòng for
Kiểm tra biến location:
~duk
~duk
~duk
~dduk(bất thường)
=>Bất thường

You might also like