ii
IH
IH
NGUY N TH
NG PH N M M
LU
- 2016
iii
L
xin cam
qu
c uc a
c u trong lu n
xin cam
cc m
trung th c
r ng m i s
tin
s li u
k t
l pv i
cho vi c th c hi n lu n
d n trong lu n
c ch
H c
Nguy n Th
ngu n g c.
iv
M CL C
L
....................................................................................................ii
M C L C .............................................................................................................iv
M CL
NH .........................................................................................vi
DANH M C B NG BI U ...................................................................................vii
TV
......................................................................................................viii
P THI T C
...................................................................viii
II.M
LU
..........................................................ix
U ................................................ix
U ..................................................................ix
V.K T QU D
KI
C .................................................................ix
VI.C
...............................................................................x
NG PH N M M .................................1
1.1 S N PH M
NG PH N M M.............................................1
m v s n ph m ph n m m ...........................................................1
1.1.2
m l i ph n m m ..........................................................................3
1.1.3
a l i..........................................................................................5
1.1.4
m ki m th ph n m m.................................................................6
1.1.5 Nh
a ki m th ph n m m ................................................7
1.1.6 Ki m th
n ph n m m .........................................7
1.2 CH
1.2.1 Ch
N M M ................. 11
ng ph n m m ............................................................................ 11
1.2.2
1.3
1.4 T
.............................................................................. 12
M TH
PH N M M ...................................................... 13
M TH ...................................................................... 14
THU T KI M TH
PH N M M ................................... 16
N C A KI M TH
PH N M M.......................... 16
c ki m th ph n m m....................................................... 16
2.1.2. Lu
m th ...................................................................... 19
v
2.1.3. Thi t k
2.2.KI M TH
ng h p ki m th ................................................................ 20
H
................................................................................ 20
....................................................................... 21
............................................................................. 26
2.2.3. Ki m th
c bi t........................................................................ 28
2.2.4. K thu
2.3.KI M TH
th
....................................................................... 29
H P TR NG ........................................................................... 33
2.3.1. Ki m th d
th lu
2.3.2.Ki m th d
th lu ng d li u................................................... 41
2.3.3.Ki m th
u ki n................................................................................. 43
M TH
TS
3.1.
u khi n............................................. 33
H
NG D NG C
M TH
H P TR NG ............. 44
M TH ................... 45
........................................................... 46
3.1.1 Gi i thi
.................................................................................. 46
3.1.2 Ph m vi gi i quy t.................................................................................. 49
3.1.3 Thi t k
3.2.
ng h p ki m th ................................................................. 49
SORT...................................................................................... 52
u
...................................................................................... 52
3.2.2 Ph m vi gi i quy t.................................................................................. 52
3.2.3 Thi t k
ng h p ki m th . ................................................................ 52
3.2.4 K t qu ki m th .................................................................................... 60
K T LU
N.............................................................. 61
LI U THAM KH O ..................................................................................... 62
vi
- S n ph m ph n m m. Ngu n: [13].........................................................3
i ph n m m [5] ............................................4
-
c s a l i. Ngu n: [6], [8]................................................6
-
n ki m th ........................................................................ 13
-
m th ..................................................... 14
-
m th ........................................................ 19
-
th
........................................................................... 32
o ca ki m th d
th lu
th lu
u khi n bi u di
-
u khi n ................. 34
........................... 35
cung ................................................................. 35
-
th bi u di
ng ngh
-
th lu
u khi n bi u di
.......................................... 39
-
th lu
u khi n bi u di
.......................................... 42
- Giao di n ki m th
- Minh h a thu
-
........................................................... 51
s p x p MergeSort............................................... 53
th
- K t qu
- Giao di
o ............................. 37
........................................................... 54
c ghi ra file log ................................................................. 60
u khi n ki m th
p x p .......................... 60
vii
B ng 1. 1 - T l
cc
n ph n m m .........................1
B ng 2. 1 - B ng li
........................................................ 22
B ng 2. 3
h ng ........................ 24
B ng 2. 4
m th l
u ................................................ 24
ng ............................................................................. 24
B ng 2. 5
Ki m th l
ng................ 25
B ng 2. 6
li
B ng 2. 7
m th
B ng 2. 8
th
B ng 2. 9 - B ng quy
B ng 3. 1 - Minh h
B ng 3. 2 - B
B ng 3. 3 -
li
...... 25
........ 26
....................................................... 30
thu nh p ..................................................... 32
C............................................... 50
ng h p ki m th cho module Merge .............................. 56
ng h p ki m th cho module Split ......................................... 57
viii
I.
V
g
[1].
[3]
[4], [2].
n ph n m m bao g m nhi
nh m t o ra s n ph m ph n m
ng nh
m th
u ho
ng
t trong nh ng ho
ng
n l i c a ph n m m [5].
ph n m
ng
l
n ph n m
t b ph n c ng
ix
ng.
y, h
ng ph n m m
ch
u cho lu
II.
III.
Lu n t p trung
.
IV.
:
.
.
V.
Lu
p trung ch y
quan tr ng trong qu
t ki m th ph n m
ng ph n m m.
.
k ch b n ki m th
ki m th phi ch
minh h
m th ch
xu
c v n d ng trong hai lo i ki m th
m
x
VI.
: T ng quan v
qu
ch
ng ph n m m
m chung v s n ph m ph n m m, v
m m, t m quan tr
ch
a vi c ki m th ph n m
ng
ng ph n
ng
n ph n m m.
thu t ki m th ph n m m.
ng 2
N i dung c a ch
ng
thu
n trong ki m th
ph n m m:
.
lu
t quan tr
m b o ch
M ts
i b t nh ng y u
ng ph n m m.
ng d ng c th c
minh ho cho ph
b n ki m th
,
m th .
t
ng k thu t h
ch
thu t h p tr
ki m th .
ng h p ki m th (test cases) cho t ng k ch b n ki m th .
n: th c hi n v
xu t,
i
t qu c
t qu d ki n c a
ki m th .
K t lu
T
n
u tham kh o
ng h p ki m th
ng h p
1
1.1 S N PH M
NG PH N M M
1.1.1
Ph n m
t (b
nhi m v
c hi n m t
c l p nh m ph c v cho m t ho c nhi u ng d ng c th :
qu
ng c
ng kinh t ,
qu
c, gi
[4], [5]
:
S1. H
ng l
S3. H th ng qu n
Vi c t o ra m t s n ph m ph i tr i qua nhi
n ph n m m
c kh
i ta g
ng t khi b
n ph m ph n m m th c thi. Kh
nc
c trong t ng
n xu t ph n m
minh h a c th
t l
k
c u
n ph n m m [9]
cc
Thi t
n
i theo th i gian. B ng 1.1
cc
B ng 1. 1 - T l
b
n ph n m m
Thi t k
chi ti t
L
Ki m
m
ki m th
th
p
Th p k 19601970
10%
Th p k 1980
20%
Th p k 1990
40%
80%
60%
30%
ng
10%
20%
30%
th h
th ng
2
Theo m
ph n m m
nc
c th hi n trong bi
t
i
:
Ngu n [7]
y, m t s n ph m ph n m
ho c nhi
.M
ph n bao g
l
nh
i quan h
t h th ng bao g m m t
c
ng t nh ng c u ph n. M i c u
n c a ph n m
[8]
t v i
y, vi c m c l
ch x y ra trong khi l
a
n m t s n ph m ph n m m. Vi c ki m th
ti
tc
nt
t s n ph m ph n m m.
ph
c
3
1 - S n ph m ph n m m. Ngu n: [13]
1.1.2
y khi ph n m m ho
i.
r ng ph n m
u thu t ng
th t b
t hi
n
,b
i ph n m
m t s th ng nh t v
nh
n
ct :m
, ch
n ph n m m ho c gi
c s d ng ph n m m
L i ph n m m xu t hi n khi x y ra m t hay nhi
ct
a s n ph m gi a
n ph n m
i
[8], [10].
u ki n sau [13], [14], [15]:
4
k t qu
l
c th c hi
ct
u nh t, chi m kho ng 80% [12].
it
ct :
c
2
Ngu
i ph n m m [5]
i l n th
tk
nt
a
n l c th c hi n k ho ch cho ph n m m.
Th i k
l
vi c l
tr
do l
n ph n m m
ng nh
ng nh t v i l
i do l
t ph n vi c c
c
y u [4]
ng ch
ph c t p ph n m m l
, vi c l
t nhi
l
i
o ra l i l i
5
nhi
ph c t p c a ph n m
th i gian ho c ch
ng l
hi
k
[11]. M
u l i xu t hi
th c ra l i do l i c
u
c t ho c thi t k [10].
M
o ra l
m
n ph n
tr
c thi t k theo
n l p, b
u
ng
ng t
1.1.3
a ph n m
ho
t th hai,
m th
ng 40% c
u c a s n ph m ph n m m. Ki m th
c
nb
i ti
s al
m th l i nh
uc
Ki m th
[1], [6]
al
c th c hi n t i b t k
i ph n m
al is
theo th i
n [8].
S
i m
trong pha thi t k
u ho c
u
, c
khi
tn
nhi
i vi c ph i vi t l
Vi c s a l i s
[9].
n
il
nl ic
i gi
i nh p l i l
tl
i ki m th
l
d li u l
i duy t l
tr ng l
cc
am tl
so v i vi c kh c ph
i qu
i cho b t k
t ph n m m r
14], [15].
t nhi u
6
u c a IBM, GTE cho bi t, l
n
cs al
3-
c s a l i. Ngu n: [6], [8]
ng ch ng ki n s c
do vi c ti t ki m b nh b
c
u di
s b ng 2 ch s cu i
c l i ti m
gi
i lo s
n nhi u t
x
y ch
kh c ph c do d li
b
1], [5].
1.1.4
Ki m th ph n m
tri n ph n m
tm
m b o r ng ph n m m th
n ph t
c u thi t k
uc
thu t ki m th ph n m m
c ki m th ph n m
bu
n ph n m
Ki m th ph n m
gi i.
u ch
c t thi t k
M
m s m nh
ph n m
t
m b o ch
ng ph n m
[7].
a ki m th ph n m
m b o r ng l
m th
n
c s a. Nh
nl
th i
n
m b o ch t
7
ng s n ph m. M t s n ph m ph n m
i ph
c
ut
c ki m
i ph n c ng c
1.1.5
ki m th t
n ph
th
n ph n m m
n ph n m
hi u, kh
tt ph
ng t
tk
ns d
t s chuy
im tt ph
d
kh
i s xu t hi
m t th t b i
i giai
tt ph p
ns m
a, c
n chuy
n cu
t
nl
bi t
[10].
ng, ki m th
h p th
t
ng ch
n cu
n ph
, nhi u l
uc
th
ct
tk
u
i m c ph
i
c ph
ng s
t
ng m c ph i ngay
y, vi
nr tl
uc
c gi m b
i ngay
n [9].
1.1.6 K
ki m th m t s n ph m ph n m
ki m th m t l n,
n c a ph n m
th
th
c ki m
c ki m
c s n ph m cu
n ph n m
b n ch
chung sau trong ho
u ph
cs d
m
ng ki m th .
8
:
Ki m th
Ki m th
t
v nh nh t c a thi t
k ph n m m. S d
d
thi t k th t
u khi n quan tr ng
ng d n,
ki m th
ph c t
n l i trong ph
m th
c gi i h n b
bu c ph m vi thi t l p cho ki m th
tr
. Ki m th
c th c hi
m vi c a module bao g m:
Ki m th
t ph n ph
n,
c duy t l
ng h p ki m th
c ki
u
.
Ki m th
k . Khi ch m t ch
c gi m xu
ng h p
u module.
m th nh
thi t k
ng
nk
c g i b i m t module, s
d
ns
c thi t
ng h p ki m th
9
Ki m th
ng do l p
ki m th
c hi n. Ki m th
i
n th c v thi t k
th
mb
a ki m
cx
i quan h
v i d li u nh
[3], [4].
Ki m th
M
p
a ki m th
p nh m th c hi
th ng con v
th
m th h th ng.
th
n trong d
nm
c cung c p b
ho
n hay th
n
c cung c p b i
h
Ki m th
th c hi n v
c th
c ki m th
m
c
c ki m th .
Hai chi
c ki m th
ng g m:
T
:
module
:
Trong th c t , v i r t nhi u h th ng, chi
pha tr
[11].
Ki m th h th ng
Ki m th h th
M c
b
a ki m th h th
is d
u ngay sau khi ki m th
n ch ra r ng ph n m m th c hi
,
is d
pk
m th
s d
ng
c th c hi n
t ki m th ch
10
Ki m th h th ng
nh
a h th
t v ch
hi
d ng, kh
o m
m
i lo i ph n m
i ki m th h th
th hi
m th
tin c y, ki m th c
m th b o m
c th c hi
ng
n m m s ho
n ki m th
is d
c khi chuy n giao
th c hi n ki m th ch p nh
c hi
ng s d ng th
u c a ph n
ng: ki m th giao di n, ki m
Ki m th h th
ph n m
c, b
i v i m t s ph n m
m m giao d
nm
u khi n hay ph n
ng h
ph
ng th
y,
n ph
th c hi n ki m th .
Ki m th h i quy
n ph n m
m ki m th
l i m t khi ph n m
i s d ng. B
m t trong nh ng lo i s n ph
ir
ng
ph n m
is d
c i ti n ph n m
u
i ho c s
ph n m
d
d
n thi t. B
m i. Ph n m m nh t thi t ph
a
, s ch nh s a ph n m m sau
s
d
i
c ki m th l i sau khi s
i
m th h i quy.
th c hi n l i m t s ki m th
m th
nb s
nb s
i, ki m th h th
y, ki m th h
h
m th h th ng.
ng ki m th
i, ki m th
ch ho
ng
d
s
ki m th
, ki m th
m th h
u khi
l i
d li u th
d ng.
11
Ki m th ch p nh n
Ki m th ch p nh
is d
mm
nl
ph n m m so v
ah .
n ph n m m cho m
c n ph
th , ki m th ch p nh n
c th c hi n sau ki m th h th ng. Ph n m m ph
ng th c. Ki m th ch p nh
tri n. T i th
t m c quan tr
quy
N
c th c thi trong
iv
nh ph n m
ph n m m, h s ch p nh n s n ph
t ph n m m t
c ti p theo
ng c
N u ph n m
n cho th
ct
ng r ng l
ng h
m th cho m i
m th ch p nh
ng
n. M
ng
n:
Ki m th alpha
Ki m th al
c th c hi
i s d ng ti
c m i s d ng ph n
m
x y ra.
Ki m th beta
Ki m th beta g i ph n m
n nh
d ng ph n m
cho t ch
i s d ng, h
c th c t
i s d ng s g i
n ch
ms
1.2 CH
n
i.
NM M
1.2.1
Ch
ng trong ph n m
tranh lu n. Trong m t s
th c ti
ng h
nv
i ch
tv
ng ph n m
m m c a ph n m m.
m
c thi m t nhi m v
m t im
t ng c
nm ct
nhi u
l
i
u qu
ng ph n m
a l i. Trong c
m
c hi
ng
12
h
t lo
nm
t ra c n gi i quy
t
n m t k t qu cu i
ng.
1.2.2
M ts
nh ch
ng c a m t s n ph m ph n m m [5]:
a
m
m
13
1.3
M TH
M
PH N M M
a cu c ki m th
ki m th
tk
c m t chu
n l i cao. Chu
tt tc
ng h
m th s th
ng h p ki m th
x
ct
tt tc
ng h p ki m th
n trong ki m th , chi ti
li
ic
ng d li
nl
ng h p ki m th
li u
n ph
t
m thi t k
li u cho
n ki m th
Thi t k
sau:
Ki m th
SP
K ho ch
ki m th
4-
u ra
t qu
m th
n chu n b h
u.
y, nh ng l i
t qu
th c t cho ra c
k ho
ng h p
ki m th
n ki m th
14
m th
Thi t k
Ki mth
Thi t k
ng h p
ki m th
Chu n b d
li u ki m th
ng
h p ki m th
Ch
t
id
li u ki m th
D li u ki m
th
K t qu ki m
th
51.4 T
qu v
ng h p
ki m th
m th
M TH
Ki m th ph n m m t n nhi
i gian. Trong m t s d
m th ph n m m chi m 50% t ng
d ng quan tr
m th
c ad
gi m thi
ml
T
c bi
c ki m th
t qu
u, nh
c ki m th h i quy d
nm
u khi n vi
c v i k t qu mong mu n, thi t l
m th
u c n ng
a.
a ki m th
th
t
qu cu
t qu
m
u ki
u
15
Ki m th t
c hi n m t
m t k ch b n ki m th . Ki m th t
c trong
ng b ng m
nh
n th i
gian ki m th [8].
th c hi n ki m th t
m th ph i h tr t
ng ki m th t
m th t
ng
c minh h
L p k ho ch
ki m th t
ng
Thi t k gi
ki m th t
ng
n gi i
m th t
Tri n khai gi i
m th t
t
m th
ng
t
nc a
16
N C A KI M TH
], [
2.1.1.
PH N M M