Professional Documents
Culture Documents
9 KiemThu
9 KiemThu
Ni dung
Gii thiu v kim th
Kim th trong tin trnh pht trin
Kim th hp en
Kim th hp trng
Kim th l g ?
Kim th l g ?
Kim th G ri (debug)
Kim th
nhm pht hin li
G ri
xc nh bn cht li v nh v li trong
chng trnh
tin hnh sa li
Cc khi nim
li
hng hc
Cc khi nim
nh gi kt qu ca kim th
t ng: chng trnh
th cng: con ngi
Cc khi nim
tp d liu th
iu kin thc thi
kt qu mong i
Cc khi nim
thit k cc ca kim th
bc to d liu th
kim th vi tt c cc d liu vo l cn thit
khng th kim th vt cn
bc quan st kt qu kim th
thc hin trong khi hoc sau khi thc thi
so snh kt qu nhn c v kt qu mong i
10
Kh khn ca kim th
V mt con ngi
thiu o to
t ch trng vai tr kim th
V mt k thut
11
Ti sao kim th
Hp thc ha (validation)
Xc minh (verification)
12
Cc k thut kim th
kim
kim
kim
kim
th n v (unit testing)
th tch hp (integration testing)
th hp thc ha (validation testing)
th hi quy (regression testing)
13
14
15
cn xy dng thm
nt trm (stub): cc thnh phn khc m
phng cc thnh phn phn mm cha
c tch hp
trnh iu khin (driver): cc thnh phn
to ra cc d liu vo cho mt vi cc
thnh phn phn mm trong tp hp
ang c kim th
16
17
chin lc t di ln (bottom-up)
kim th cc thnh phn khng gi cc thnh phn khc, sau
thm vo cc thnh phn gi cc thnh phn va kim th
t s dng cc nt trm
nhng li xc nh li tr hn
18
19
20
10
c t yu cu
Kim th hp thc ha
Kim th tch hp
Kim th n v
21
Cc k thut kim th
22
11
Kim th tnh
McCabe
Nejmeh
23
Kim th hp en
Input test data
Inputs causing
anomalous
behaviour
System
Oe
24
12
Kim th hp en
Ch cn da vo c t chng trnh
25
Kim th hp en
26
13
Kim th gi tr bin
C s
gi tr nh nht
gi tr gn k ln hn gi tr nh nht
gi tr bnh thng
gi tr gn k nh hn gi tr ln nht
gi tr ln nht
27
Kim th gi tr bin
28
14
Kim th gi tr bin
29
Kim th gi tr bin
V d (1)
30
15
Kim th gi tr bin
V d (2)
D liu th
1, 1, 2
0, 0, 0
4, 0, 3
1, 2, 3.00001
0.001, 0.001, 0.001
99999, 99999, 99999
3.00001, 3, 3
2.99999, 3, 4
3, 4, 5.00001
3, 4, 5, 6
3
-3, -3, 5
31
Kim th lp tng ng
tng
mi lp dng
kim th mt
chc nng, gi l
lp tng ng
32
16
Kim th lp tng ng
Ba bc
i vi mi d liu vo, xc nh cc lp
tng ng t min d liu vo
chn d liu i din cho mi lp tng
ng
kt hp cc d liu th bi tch -cc
ti ra b d liu kim th
33
Kim th lp tng ng
34
17
Kim th lp tng ng
V d
Nhn
6,5,3
6,1,6
4,4,4
Vung
5,6,10
7,4,4
khng th
T
3,4,5
2,2,2
khng th
-1,2,8
35
Bi tp
Kim th gi tr bin
36
18
Bi tp
Kim th lp tng ng
37
Kim th hp trng
38
19
Cc k thut kim th hp
trng
39
th lung iu khin
th lung iu khin (Control Flow Graph TLK) l th c hng, biu din mt chng
trnh
40
20
th lung iu khin
V d 1
if x <= 0 then
x := -x
else
x := 1 -x;
if x = -1 then
x=1
else
x := x+1;
writeln(x);
41
th lung iu khin
V d 1 (2)
C 4 l trnh
[a, b, d, f, g]
[a, b, d, e, g]
[a, c, d, f, g]
[a, c, d, e, g]
42
21
th lung iu khin
V d 1 (3)
Hay n gin:
G1 = a(bdf + bde + bdf + bde)g
G1 = a(b + c)d(e + f)g
43
th lung iu khin
Cu trc tun t: ab
22
th lung iu khin
V d 2
i := 1;
found:= false;
while (not found) do
begin
if (a[i] = E) then
begin
found:= true;
s := i;
end;
i := i + 1;
end;
G2 = ab(c( + d)eb)*f
45
th lung iu khin
Bi tp 1
V th lung iu khin
Xy dng biu thc chnh quy biu din th
if n <= 0 then
n := 1-n
end;
if (n mod 2) = 0 then
n := n / 2
else
n := 3*n + 1
end ;
write(n);
46
23
th lung iu khin
Bi tp 2
V th lung iu khin
Xy dng biu thc chnh quy biu din th
read(i);
s := 0;
while(i <= 3) do
begin
if a[i] > 0 thens := s + a[i];
i := i + 1;
end
47
Ph tt c cc nh/lnh
Ph tt c cc cung
Ph tt c cc quyt nh
Ph tt c cc ng i
48
24
Hn ch ca tiu chun
read(x);
if (x <> 0) then x := 1;
y := 1/x;
25
Ph tt c cc cung t nht mt ln
51
Nu (a AND b)
a = b = true
a = b = false
a = true, b = false
a = false, b = true
52
26
D liu th
DT1 = {a = b = 1}
DT2 = {a = 1, b = 0}
DT3 = {a = 3, b = 2}
DT4 = {a = b = 3}
53
Hn ch
54
27
55
D liu th
56
28
ph tt c cc nh
ph tt c cc cung
ph tt c cc l trnh
if n 0 then
n := 1-n
end;
if (n mod 2) = 0
then
n := n / 2
else
n := 3*n + 1
end ;
write(n);
57
58
29