You are on page 1of 30

Kim th tch hp Bi tp ln mn

Integration testing

NHP MN CNG NGH PHN MM


ti s 22:

KIM TH TCH HP ( Integration testing )

Gio vin b mn :V Th Dng Lp Nhm s 3 : KHMT 1 K2 : o c Anh Nguyn Th L Chi Trn Trung Hiu L Thi Hong

Nhm3

Kim th tch hp

Integration testing

I. Li m u
Trong ngnh k ngh phn mm, nm 1979, c mt quy tc ni ting l: Trong mt d n lp trnh in hnh, th xp x 50% thi gian v hn 50% tng chi ph c s dng trong kim th cc chng trnh hay h thng c pht trin. V cho n nay, sau gn mt phn 3 th k, quy tc vn cn ng. c rt nhiu ngn ng, h thng pht trin mi vi cc cng c tch hp cho cc lp trnh vin s dng pht trin ngy cng linh ng. Nhng kim th vn ng vai tr ht sc quan trng trong bt k d n pht trin phn mm no. Rt nhiu cc gio s, ging vin tng than phin rng: Sinh vin ca chng ta tt nghip v i lm m khng c c nhng kin thc thc t cn thit v cch kim th mt chng trnh. Hn na, chng ta him khi c c nhng li khuyn b ch cung cp trong cc kha hc m u v cch mt sinh vin nn lm v kim th v g li cc bi tp ca h. Cc tc gi ca cun sch ni ting The Art of Software Testing Ngh thut kim th phn mm, Glenford J. Myers, Tom Badgett, Todd M. Thomas, Corey Sandler khng nh trong cun sch ca mnh rng: Hu ht cc thnh phn quan trng trong cc th thut ca mt nh kim th chng trnh l kin thc v cch vit cc ca kim th c hiu qu. Vic kim th phn mm tht s quan trng trong dy chuyn sn xut phn mm. y cng chnh l l do nhm em nghin cu v ti ny, v chnh xc hn l v kim th tch hp m chng em s trnh by di y. Do cn nhiu kh khn trong vic thu thp v dch ti liu nn chng em s cn nhiu thiu st trong khi trnh by, vy knh mong c gio xem xt v gip thm cho chng em.

Chng em xin chn thnh cm n !

Nhm3

Kim th tch hp

Integration testing

Mc lc
Bi tp ln mn.........................................................................................................1 NHP MN CNG NGH PHN MM...............................................................1 ti s 22:...............................................................................................................1 KIM TH TCH HP ...........................................................................................1 ( Integration testing ).................................................................................................1 1. c im ca kim th tch hp:.......................................................................5 2. Khi no th s dng kim th tch hp?............................................................6 3. Mc tiu ca kim th tch hp:........................................................................7 4. Cc bc kim th tch hp ..............................................................................8 5. K hoch kim tra..............................................................................................9 6. Lm th no vit mt bi kim tra tch hp? .............................................10 7. Lm vic hng ti mt bi kim tra tch hp hiu qu:............................11 1. Top-down Intergration (Kim th tch hp t trn xung di).....................12 2. Bottom-up Intergration (Kim th tch hp t di ln)................................16 3. Regression Testing (Kim th hi quy)..........................................................19 4. Smoke Testing.................................................................................................20 5. Big Bang..........................................................................................................22 6. Tho lun xung quanh kim th tch hp (Comments on Intergration Testing) .............................................................................................................................22 7. T liu v kim th tch hp (Intergration Test Documentation)...................23 3 Nhm3

Kim th tch hp

Integration testing

II. Gii thiu chung v kim th tch hp


Mt nhn vin mi chp chng bc vo gii phn mm c th s t ra mt cu hi sau khi tt c cc M un c kim th Nu tt c cc M un u ring l, ti sao bn li nghi ng rng chng s pht huy tc dng khi c t cng nhau?. Tt nhin, vn l ch a chng vo mt giao din cng nhau. Bn c th b mt d liu trong giao din; m un ny v c nhng nh hng tiu cc ti m un khc; cc chc nng con khi kt hp cng vi nhau c th khng to ra c chc nng mong mun; s sai lch mc c th chp nhn c b phng ln thnh mc khng th chp nhn c; cu trc d liu ton cu c th gp phi nhiu vn . Tht khng may l danh sch ny cn rt l di.

C mt phng php kim th c h thng xy dng cu trc chng trnh trong khi tin hnh cc bi kim th pht hin ra li lin quan n lp giao din. Mc tiu l kim th cc b phn v xy dng mt cu trc chng trnh c kim th chnh t khi thit k. Thng c xu hng c gng thc hin tch hp khng theo trnh t tng bc; c ngha l xy dng mt chng trnh s dng phng php tip cn tc thi/t ngt. Tt c cc b phn c kt hp trc vi nhau. Ton b chng trnh c kim th di dng tng th. Kt qu l thng xy ra s ln xn! Bn gp phi hng lot li. Vic

Nhm3

Kim th tch hp

Integration testing

sa li l rt kh v vic c lp cc nguyn nhn rt phc tp do chng trnh qu rng. Mt khi sa c cc li ny, cc li khc s li xut hin v qu trnh c tip din lin tc nh th. Tch hp theo trnh t tng bc mu thun vi phng php tip cn tc thi. Chng trnh c thit lp v kim th trong cc gia lng nh, ni d tch v sa li hn; giao din c kh nng c kim th ton b hn; v c th p dng mt phng php kim th c h thng. Phng php kim th c ni n y l phng php kim th tch hp.

1. c im ca kim th tch hp: L mt kiu kim th cao cp hn kim th n v (Unit testing) nhng li
c xp thp hn kim th h thng (System testing) v kim th ngi dng (User Acceptance Testing) c thc hin sau kim th n v nhng trc kim th h thng Thng xuyn pht hin c l hng cng nh cc li ca h thng C th p dng cho vic pht trin t do

Nhm3

Kim th tch hp

Integration testing

Hnh 1. S cc cp kim th

2. Khi no th s dng kim th tch hp? Khi h thng l rt ln (500K + LOC)


Khi h thng l c phn mm v phn cng Khi c qu nhiu li trong giai on kim th h thng v kim th ngi dng

Khi bn c qu nhiu cc tng tc gia cc phn mm


Khi h thng thit k l mt h thng thi gian thc Khi ban c yu cu cao hn v h thng ca mnh

Nhm3

Kim th tch hp 3. Mc tiu ca kim th tch hp:


Pht hin li xy ra gia cc Unit

Integration testing

Tch hp cc Unit thnh cc h thng nh (subsyetem) v cui cng l nguyn h thng hon chnh (system) chun b cho kim th mc h thng (system testing) Trong kim th n v cc lp trnh vin c gng pht hin li lin quan n chc nng v cu trc ni ti ca Unit. C mt s php kim th n gin trn giao tip vi cc thnh phn lin quan khc, tuy nhin mi giao tip lin quan n Unit ch tht s kim tra y d khi cc Unit kt hp vi nhau trong khi thc hin kim th tch hp. Tr mt s t ngoi l, kim th tch hp ch nn th hin trn cc Unit c kim tra cn thn trc bng kim th n v, v tt c cc li mc Unit c sa cha Mt s ngi hiu sai rng Unit mt khi qua giai on Unit Test vi cc giao tip gi lp th khng cn phi thc hin Integration Test na. Thc t vic tch hp gia cc Unit dn n nhng tnh hung hon ton khc.Mt chin lc cn quan tm trong Integration Test l nn tch hp dn tng Unit. Mt Unit ti mt thi im c tch hp vo mt nhm cc Unit khc tch hp trc v hon tt cc t Integration Test trc . Lc ny, ta ch cn kim th giao tip ca Unit mi thm vo vi h thng cc Unit tch hp trc , iu ny s lm cho s lng can kim th gim i rt nhiu, v sai st s gim ng k. C 4 loi kim th trong Integration Test:

Kim th cu trc (Structure Test): Tng t White Box Test, kim th


cu trc nhm bo m cc thnh phn bn trong ca mt chng trnh chy ng v ch trng n hot ng ca cc thnh phn cu trc ni ti ca chng trnh chng hn cc cu lnh v nhnh bn trong.

Kim th chc nng (Functional Test): Tng t Black Box Test, kim
th chc nng ch ch trng n chc nng ca chng trnh, m khng quan tm n cu trc bn trong, ch kho st chc nng ca chng trnh theo yu cu k thut.

Kim th hiu nng (Performance Test): Kim th vic vn hnh ca h


thng.

Nhm3

Kim th tch hp

Integration testing

Kim th kh nng chu ti (Stress Test): Kim th cc gii hn ca h


thng.

4. Cc bc kim th tch hp
Kim tra tch hp gm cc bc sau:

Bc 1: Thit lp k hoch kim th Bc 2: Thit lp cc bi v d liu kim th Bc 3: To cc tp lnh thc hin cc bi kim th nu c th. Bc 4: Mt khi tt c cc b phn c tch hp, thc hin cc bi
kim th

Bc 5: V li nu c v kim th m Bc 6: Lp li quy trnh kim th cho n khi tt c cc b phn c


tch hp thnh cng

Nhm3

Kim th tch hp

Integration testing

Phn mm c pht trin

K hoch kim tra

S pht trin

Cc tiu chun c ngi dng chp nhn

Tch hp v kim tra

Phn mm c tch hp 5. K hoch kim tra

Bo co chp thun

K hoch pht trin

N m t mt trong cc yu t sau: Cc bi kim tra s c tin hnh nh th no

Danh sch cc i tng cn c kim tra Vai tr v trch nhim Yu cu tin quyt bt u kim tra Kim tra mi trng Gi thuyt Lm g sau khi kim tra thnh cng
Lm g khi kim tra khng thnh cng

Nhm3

Kim th tch hp 6. Lm th no vit mt bi kim tra tch hp?

Integration testing

Mt bi kim th n gin miu t chnh xc bi kim tra s c thc hin nh th no. Cc bi kim th tch hp tp trung vo dng lu chuyn d liu/thng tin/kim sot t mt b phn sang mt b phn khc. V th cc bi kim th tch hp phi tp trung vo nhng tnh hung trong mt b phn c gi ra t mt b phn khc. Tng t ton b chc nng p dng phi c kim th m bo rng cc p dng pht huy tc dng khi cc b phn khc nhau c t cng nhau. Cc bi kim th tch hp c a vo thnh mt nhm t mt b cc bi kim th tch hp. Mi b c th tp trung vo mt i tng khc nhau. Ni cch khc, cc b kim th khc nhau c th c to ra tp trung vo cc lnh vc p dng khc nhau. Nh nu pha trc, mt nhm kim th c th c to ra thc hin cc bi kim tra. V th cc bi kim th phi cng chi tit cng tt. Bng v d bi kim th: ID bi Thnh M t bi kimD liuKt qu mong kim Kt qu thc cng/khng Ghi ch th u vo i th thnh cng

Ngoi ra c th bao gm c: Tn b kim th

Kim th bng
Ngy thng

Kim th lp (C th thc hin kim th tch hp lp li mt hoc nhiu


ln)

10

Nhm3

Kim th tch hp

Integration testing

7. Lm vic hng ti mt bi kim tra tch hp hiu qu:


C rt nhiu yu t nh hng n kim tra tch hp phn mm v kim tra phn mm: 1) Qun l cu trc phn mm: Do kim th tch hp tp trung vo vic tch hp cc b phn v cc b phn c th c xy dng bng nhng ngi pht trin khc nhau v thm ch bi nhng nhm pht trin khc nhau, iu quan trng l phin bn cc b phn c kim tra. iu ny nghe c v rt l c bn, nhng vn ln nht gp phi l tch hp phin phn cc b phn chnh xc. Kim tra tch hp c th thc hin sau vi ln lp li v v li m cc b phn c th thay i. V th, iu quan trng l mt chnh sch qun l cu trc phn mm (SCM) phi c sn. Chng ta phi c kh nng tm cc b phn v cc phin bn ca chng. V th mi khi ta tch hp cc b phn ng dng, chng ta bit chnh xc phin bn ny s i vo qu trnh xy dng. 2)Qa trnh xy dng t ng nu cn thit: s c rt nhiu li do phin bn khng chnh xc cc b phn c gi cho qu trnh xy dng hoc thiu mt s b phn. Nu c th, vit mt tp lnh tch hp v trin khai cc b phn. iu ny s gim cc li th cng. 3) Ti liu: xp xp ti liu qu trnh tch hp/xy dng loi b cc li do b qua hoc khng nhn thy. Ngi chu trch nhim tch hp cc phn mm c th qun chy tp lnh yu cu v qu trnh kim th tch hp s khng cho kt qu chnh xc. 4) Tm kim li: Kim th tch hp s mt hng nu khng pht hin chnh xc li. Mi li phi c ghi li v tm kim. Thng tin phi ch r cch v li. y l thng tin v gi. N c th gip h tr qu trnh tch hp v thc hin trong tng lai. Trong cc phn sau y trnh by mt s bc tch hp khc nhau.

11

Nhm3

Kim th tch hp

Integration testing

III. Mt s phng php kim th tch hp


1. Top-down Intergration (Kim th tch hp t trn xung di)
Kim th tch hp t trn xung di l mt phng php gia lng p dng cho vic xy dng cu trc chng trnh. Cc m un c tch hp bng cch di chuyn theo chiu hng xung theo trnh t kim sot cp bc, bt u bng m un iu khin chnh (chng trnh chnh). Cc m un ph (v cc m un sau cng) n m un iu khin chnh c ghp li thnh mt cu trc hoc l theo li nhanh nht hoc lu nht (depth-first or bread-first manner).

Hnh 2 Kim th tch hp t trn xung Xem hnh 2, tch hp depth-first s tch hp tt c cc b phn vo mt ng iu khin ca cu trc. Vic la chn con ng l rt m h v ph thuc vo c im ng dng c th. V d, la chn ng theo chiu tay tri, cc b phn M1, M2 , M5 s c tch hp trc. tip M8 hoc (nu cn chc nng ph hp ca M2) M6 s c tch hp. Sau , phng php iu khin bn tay phi v trung tm s c xy dng. Breadth-first integration kt hp tt c cc b phn b sung trc tip mi mc , chuyn qua cu trc theo phng ngang. T hnh v, cc b phn M2, M3, v M4 (thay cho S4) s c tch hp trc . Mc iu khin tip theo, v c tip tc nh th

12

Nhm3

Kim th tch hp
Qu trnh tch hp c thc hin trong 5 bc:

Integration testing

M un iu khin chnh c s dng lm b iu khin kim th v cc m un


tip theo b sung cho tt c cc b phn b sung trc tip cho m un iu khin chnh.

Ty thuc vo phng php tch hp c chn (v d depth or breadth first), cc


m un b sung tip theo c thay th theo trnh t vi cc b phn thc.

Cc bi kim th s c tin hnh khi mi m un c tch hp Khi hon thnh tng bi kim th mt, cc b phn tip theo s c thay th bi
b phn thc.

Kim th hi quy (phn V) c th c tin hnh m bo khng xy ra li


mi. Qu trnh tip tc t bc th hai cho n khi ton b cu trc chng trnh c xy dng. Cc bc tch hp theo hng t trn xung kim th cc im iu khin hoc quyt nh chnh phn u qu trnh kim th. trong mt cu trc chng trnh c vi h s r rng, vic a ra quyt nh s din ra cc bc cao hn theo trnh t v v th c bt gp u tin. Nu tn ti cc vn iu khin chnh, vic pht hin ra sm l v cng cn thit. Nu chn phng php tch hp depthfirst, c th tin hnh v trnh by mt chc nng hon chnh ca phn mm. V d, gi s mt cu trc chuyn giao trong c mt chui cc u vo tng tc vi nhau c yu cu, thc hin v hp thc ha qua mt ng n. ng n c th c tch hp theo cch t trn xung di. Tt c cc u vo x l ( chuyn i sau ny) c th c th hin trc khi cc yu t khc ca cu trc c tch hp. Vic th hin ngay t u kh nng mang chc nng l rt c ch i vi ngi pht trin v khch hng.

13

Nhm3

Kim th tch hp

Integration testing

Phng php t trn xung c v khng phc tp, nhng trn thc t, c th ny sinh cc vn logic. Mt trong nhng vn thng gp xy ra khi x l mc thp theo th t c yu cu kim th cc mc cao hn. Cc m un ph thay th cc m un mc thp giai on u ca qu trnh kim th t trn xung. V th, khng c bt k d liu ng k no c th chuyn ln trn trong cu trc chng trnh. Ngi kim th s ng gia 3 la chn:

Hon cc bi kim th li cho n khi cc m un ph c thay th bng m un


thc

Pht trin cc m un ph thc hin cc chc nng hn ch thc y m un thc Tch hp phn mm t di ln trn.
Phng php u tin (hon cc bi kim th li cho n khi cc m un ph c thay th bng m un thc) lm cho chng ta mt iu khin gia cc bi kim th c th v s kt hp cc m un c th. Vic ny c th dn ti kh khn trong vic xc nh nguyn nhn gy li v c xu hng vi phm bn cht gii hn ca phng php t trn xung. Phng php th 2 c th pht huy tc dng nhng c th dn n tnh trng phi thc hin thm nhiu bc na, v cc m un ph tr nn ngy cng phc tp. Phng php th 3, gi l kim th t di ln, c trnh by trong phn tip theo.

14

Nhm3

Kim th tch hp
V d

Integration testing

Khi cn xy dng mt h thng qun l bn hng in t c m hnh nh hnh di y:


Qun l mua, bn v bo hnh thit b my tnh

Bo Co QL Bn Hng QL Nhp Hng QL Bo Hnh Thng K

Kim tra hng trong kho Lp ho n

Lp phiu t hng Kim tra cht lng hng Lp phiu nhp

Kim tra phiu bo hnh Lp phiu bo hnh Lp ho n

Lp bo co doanh thu Bo co TB bn Bo co TB tn kho Bo co TB bo hnh

Giao hng

Thanh ton

Thng bo t chi nhp

Thng bo t chi xut

u tin khi mun xy dng h thng ta phi xy dng cc chc nng chnh ca h thng nh chc nng qun l bn hng, qun l nhp hng, qun l bo hnh, bo co thng k. Sau mi c th xy dng tip cc chc nng con khc sau

15

Nhm3

Kim th tch hp

Integration testing

Ta c lp mt s tch hp cc chc nng ca h thng qun l bn hng nh sau:

QL Bn Hng
Kim tra hng trong kho

Lp ho n

Giao hng

Thanh ton

Thng bo t chi xut

Giao hng tn nh

Thanh ton bng tin mt

Thanh ton bng th

Ty theo yu cu ca tng cng ty m ta c th tch hp hay loi b bt cc thnh phn ca h thng

2. Bottom-up Intergration (Kim th tch hp t di ln)


Kim th tch hp t di ln, nh tn gi ca n, bt u xy dng v kim th bng cc m un nguyn t (c ngha l cc b phn mc thp nht trong cu trc chng trnh). Do cc b phn c tch hp t di ln, vic x l yu cu i vi cc b phn b sung cho mt mc cho trc lun c sn v loi b yu cu cn cc m un b sung. Phng php tch hp t di ln c th c tin hnh theo cc bc sau: Cc b phn mc thp c kt hp vi nhau thnh mt nhm thc hin chc nng phn mm c th.

Mt driver (chng trnh iu khin kim th) c vit kt hp cc u


vo v u ra kim th.

Nhm c kim th 16 Nhm3

Kim th tch hp

Integration testing

Cc Driver c loi b v nhm c kt hp di chuyn ln trn trong cu trc chng trnh. Tch hp tin hnh theo cc bc trnh by trong hnh 3. Cc b phn c kt hp hnh thnh nhm 1, 2 v 3. Mi nhm c kim th bng driver (trnh by di dng block nt t). Cc b phn trong nhm 1 v 2 b sung cho Ma. Drivers D1 v D2 c loi b v nhm c lp giao din trc tip cho Ma. Tng t, driver D3 cho nhm 3 c loi b trc khi tch hp bng m un Mb. C Ma v Mb s c tch hp bng b phn Mc, v c nh th.

Hnh 3: Kim th tch hp t di ln Khi tch hp di chuyn ln pha trn, yu cu tch cc driver kim th gim dn. Thc t, nu 2 mc trn cng ca cu trc chng trnh c tch hp t trn xung, s lng driver c th gim i v qu trnh tch hp ca nhm s n gin hn nhiu.

V d Xy dng h thng qun l th vin

17

Nhm3

Kim th tch hp

Integration testing

Khi th vin ca nh trng c phng lu tr sch th s c nhu cu c mt phng ban qun l cc u sch, s lng cng loi, tnh trng ca sch trong th vin th s phi thnh lp mt phng qun l sch. Sch ca nh trng li c kh nng cho sinh vin trong trng mn c th hc tp v ngin cu nn cng vi phng qun l sch cc yu cu mn sch to ln mt phng mn sch. Sau khi nghin cu xong sch sinh vin li c nhu cu tr sch c th mn sch khc v b phn qun l tr sch c thnh lp. Da vo cc thnh phn nu trn nh trng c th thnh lp mt th vin sch vi cc chc nng qun l sch, cho mn schty vo yu cu ca mi trng mt khc nhau th s c cch cu thnh cc thnh phn khc nhau. Di y l mt s n gin v h thng qun l th vin c xy dng theo phng php tch hp t di ln:
Qun l th vin Qun l mn sch Qun l tr sch

Qun l sch

Yu cu mn sch

Qun l s lng sch

Qun l tnh trng sch

18

Nhm3

Kim th tch hp 3. Regression Testing (Kim th hi quy)

Integration testing

Mi khi mt m un mi c b sung di dng mt b phn ca kim th tch hp, phn mm s thay i. Cc ng d liu mi c thit lp, c th xy ra I/O mi, v gi ra logic iu khin mi. Trong bc kim th tch hp tip theo, kim th hi quy l s thc hin li ca mt s chui nh trong cc bi kim th c thc hin m bo khng sinh ra cc hiu ng ph. phm vi rng hn, cc bi kim th thnh cng (bt k loi no) dn n s pht hin ra li, v li phi c sa. Bt c khi no mt phn mm c sa li, mt s kha cnh ca cu trc phn mm (chng trnh, ti liu hoc d liu h tr n) b thay i. Kim th hi quy h tr m bo rng cc thay i (do kim th hoc do cc l do khc) khng dn n cc li khc. Kim th hi quy c th c thc hin th cng, bng cch thc hin li cc bi kim th hoc s dng cng c capture/playback. Cng c Capture/playback cho php k s phn mm thc hin bi kim th v ly kt qu cho nhng ln chy li v so snh. Kim th hi quy bao gm 3 lp kim th khc nhau: Mu i din s thc hin chc nng ca phn mm

Cc bi kim th b sung tp trung vo chc nng phn mm c th b nh hng


bi cc thay i.

Cc bi kim th tp trung vo cc b phn ca phn mm b thay i.

19

Nhm3

Kim th tch hp

Integration testing

Hnh 4: S lung kim th tch hp (Source base77.com) Do qu trnh kim th tch hp c tip din, s bi kim th tch hp c th tng ln kh nhiu. V th, b kim th hi quy phi c thit k ch bao gm nhng bi kim th dng x l mt hoc nhiu lp li trong mi chc nng ca chng trnh. vic thc hin li mi bi kim th cho mi chc nng chng trnh l khng thc t v khng hiu qu mt khi xy ra s thay i.

4. Smoke Testing
Smoke testing l mt phng php kim th thng c s dng khi sn phm phn mm c bn quyn c pht trin. N c thit k di dng mt c cu dng cho cc d n c gii hn v thi gian cht ch, cho php nhm phn mm tip cn vi d n trn mt nn tng thng xuyn. Phng php kim th ny xoay quanh cc hot ng sau: Cc b phn ca phn mm c a thnh dng code c tch hp vo mt nhm. Mt nhm c th bao gm cc file d liu, th vin, cc m un c th ti s dng, cc b phn cn phi thc hin mt hoc nhiu chc nng ca sn phm.

20

Nhm3

Kim th tch hp

Integration testing

Mt chui cc bi kim ta c thit k tm ra li gip nhm c th thc hin tt chc nng ca n. Mc ch l tm ra li c nhiu kh nng lm chm tin trnh pht trin phn mm nht. Nhm c tch hp vi cc nhm khc v ton b sn phm c tin hnh smoke test hng ngy. Phng php tch hp c th l t trn xung hoc t di ln.

Tn s kim th hng ngy ton b sn phm c th lm mt s ngi ngc nhin. Tuy nhin, tn s kim th cho php c ngi qun l v ngi thc tp mt nh gi thc t v qu trnh kim th tch hp. McConnell [MCO96*] m t smoke test theo cch sau y: Smoke test c tin hnh trn c h thng t u ny n u khc. N phi c kh nng pht hin c cc vn chnh. Smoke test phi ton din nu nhm c thng qua, bn c th gi s rng n nh kim th ton din hn. Smoke testing mang li rt nhiu li ch khi c p dng vo cc d n phc tp, k thut phn mm c quy nh v thi gian nghim ngt: Nguy c tch hp c gim thiu. do smoke tests c thc hin hng ngy, nhng hin tng khng tng thch v cc li khc thng c pht hin sm, gim kh nng tc ng n k hoch thc hin khi li khng c pht hin.

Cht lng sn phm cui cng c nng cao. Do phng php thc hin l
hng xy dng (tch hp), smoke testing c kh nng pht hin li chc nng v cc khuyt tt thit k mc b phn. Nu cc khuyt tt ny c sa sm, ta s c cht lng sn phm tt hn.

Chun on li v sa c n gin ha. tng t nh phng php kim th


tch hp, li l ra trong qu trnh smoke testing thng gn lin vi gia s phn mm mi iu ny c ngha l, phn mm va c b sung vo nhm c kh nng l nguyn nhn ca li mi xut hin. Tin rt d tip cn. tng ngy mt, cc b phn ca phn mm cng c tch hp thm v c a ra hot ng. iu ny ci thin khng kh ca nhm v cho php ngi qun l bit c rng tin ang c y nhanh.

21

Nhm3

Kim th tch hp

Integration testing

* [MCO96] McConnell, S., Best Practices: Daily Build and Smoke Test, IEEE Software, vol. 13, no. 4, July 1996, 143144.

5. Big Bang
Ngi ta xy dng mi lin h gia cc n th to thnh mt phin bn h thng hon chnh, sau th nghim phin bn ny. Nh vy ngi ta cn n nhiu trnh iu khin (Driver) mi trnh iu khin cho mt n th, mt trnh stub cho tt c cc n th ca h thng, tr n th chnh phi c kim th bng phng php kim th n v Phng php kim th Big Bang c 2 c im chinh l: Kt hp tt c cc modul kim th thnh 1 chng trnh

Tin hnh kim th ton b chng trnh


Phng php Bing Bang khng an ton cho vic kim th ch tt c cc sai st c th xut hin cng lc, khi vic xc inh tng li sai s gp nhiu kh khn. Hn na phng php kim th ny i hi mt lng ti a cc trnh iu khin v cc stub. V vy thng th ngi ta hay dng cc phng php kim th t trn xung hay kim th t di ln

6. Tho lun xung quanh kim th tch hp (Comments on Intergration Testing)


c rt nhiu bi tho lun (v d [BEI84]*) v u im v nhc im ca phng php kim th t trn xung v t di ln. Ni chung, u im ca phng php ny li tr thnh nhc im ca phng php khc. nhc im ch yu ca phng php t trn xung l cn phi c cc m un ph v cc kh khn kim th gp phi c th theo km. Cc vn gn lin vi cc m un ph c th nhanh chng c b li bi cc u im ca cc chc nng iu khin kim th chnh. Nhc im ch yu ca phng php tch hp t di ln l chng trnh di dng tng th khng tn ti cho n khi b sung m un cui cng [MYE79*]. Nhc im ny c gim bt i bng cch thit k kim th d dng hn v khng c cc m un ph. Vic la chn phng php tch hp ph thuc vo c im phn mm v i khi ph thuc vo k hoch d n. Ni chung, mt phng php kt hp s dng kim th t trn xung cho cc mc cao hn ca cu trc chng trnh, kt hp vi kim th t di ln cho cc mc b sung c th l mt gii php tt nht.

22

Nhm3

Kim th tch hp

Integration testing

Khi thc hin kim th tch hp, ngi kim th phi ch r m un quan trng. Mt m un quan trng c mt hoc cc tnh cht sau: (1) Gii quyt mt s yu cu phn mm (2) C mc iu khin cao (cao c trong cu trc chng trnh) (3) Phc tp v khng c li (s phc tp c th c dng lm b ch bo) (4) C cc yu cu hot ng tt. Cc m un quan trng phi c kim th cng sm cng tt. Thm vo , kim th hi quy phi tp trung vo chc nng ca m un quan trng.
* [BEI84] Beizer, B., Software System Testing and Quality Assurance, Van NostrandReinhold, 1984. * [MYE79] Myers, G., The Art of Software Testing, Wiley, 1979.

7. T liu v kim th tch hp (Intergration Test Documentation)


Mt k hoch tng th cho s tch hp phn mm v mt m t v cc bi kim tra c th c a ra trong phn M t kim tra. trong gm mt k hoch kim tra, mt quy trnh kim tra, l mt sn phm ca qu trnh phn mm v tr thnh mt phn trong cu trc phn mm. K hoch kim tra miu t ton b quy trnh tch hp. Kim tra c chia thnh cc giai on v cc nhm cp n cc c im chc nng v hot ng ca phn mm. V d, kim tra tch hp h thng CAD c th chia ra thnh cc giai on kim tra nh sau: Giao tip vi ngi dng (la chn iu khin, to hnh v, biu din minh ha, x l li v biu din) Thao tc v phn tch d liu (to k hiu, xc nh kch thc, quay, tnh ton v tnh cht vt l) X l v to hin th (hin th 2 chiu, hin th 3 chiu, biu ) Qun l d liu (truy cp, update, nht qun v lm vic) Mi giai on v cc giai on nh (trong ngoc n) miu t nhm chc nng rng hn trong phn mm v c th lin quan ti phn vng c th ca cu trc chng

23

Nhm3

Kim th tch hp

Integration testing

trnh. V th, nhm chng trnh (nhm m un) c to ra tng ng vi tng giai on. Cc tiu ch sau y v cc bi kim tra tng ng vi chng c p dng cho tt c cc giai on kim tra: Thng nht v giao din. Cc giao din bn trong v bn ngoi c kim tra di dng tng m un mt v c tch hp vi cu trc.

Tnh ph hp v chc nng. Cc bi kim tra c thit k pht hin ra li


c tin hnh.

Ni dung thng tin. Cc bi kim tra c thit k pht hin li c lin quan
n cu trc khu vc v ton b c thc hin. Kh nng lm vic. Cc bi kim tra c thit k xc nhn cc mc hot ng c thit lp trong qu trnh thit k phn mm c thc hin. K hoch tin hnh tch hp, pht trin cc phn mm pha trn, v cc ch lin quan c tho lun ring mt phn trong k hoch kim tra. Bt u v ngng ngy thng tng giai on c thc hin v cc ca s c sn cho tng m un c kim tra c xc nh. M t ngn v phn mm (nhm v driver) tp trung vo cc c im c th yu cu n lc ln. Cui cng, mi trng v ngun kim tra c miu t. Cc cu trc phn cng bt thng, chng trnh m phng khng chnh xc, v cc cng c kim tra hoc k thut kim tra c bit ch l mt s t trong s nhng ch c th c tho lun. Quy trnh kim tra chi tit cn thit t c k hoch kim tra c m t sau. Th t tch hp v cc bi kim tra tng ng ti mi bc tch hp c miu t. Mt danh sch cc bi kim tra ( sau ny c th xem li) v kt qu mong mun cng c bao gm trong . Mt bn ghi kt qu kim tra, cc vn hoc nhng kh khn c ghi li trong phn miu t kim tra. Thng tin c trong phn ny c th rt quan trng trong qu trnh duy tr phn mm. Mu tham kho ph hp v ph lc cng c trnh by km theo. Tng t nh cc phn t ca cu trc phn mm khc, nh dng miu t kim tra c th i km trong nhu cu cc b ca vic t chc k thut phn mm. Tuy nhin, iu quan trng l phi ch rng quy trnh tch hp (c trong k hoch kim tra) v chi tit kim tra ( miu t trong quy trnh kim tra) l nhng yu t quan trng.

IV. V d
24 Nhm3

Kim th tch hp

Integration testing

Chng trnh c vo 3 gi tr nguyn t hp thoi vo. Ba gi tr ny tng ng vi chiu di 3 cnh ca 1 tam gic. Chng trnh hin th 1 thng ip cho bit tam gic l tam gic thng, cn, hay u. Ba gi tr nhp vo tha mn l 3 cnh ca mt tam gic khi v ch khi c 3 s u l s nguyn dng, v tng ca 2 s bt k trong 3 s phi ln hn s th 3. Khi , mt tam gic u l tam gic c 3 cnh bng nhau, tam gic cn l tam gic c 2 trong 3 cnh bng nhau, v tam gic thng th c 3 cnh khc nhau. M lnh ca chng trnh:

25

Nhm3

Kim th tch hp

Integration testing

Do c t c s kt hp u vo nn trc tin, p dng phng php v th nguyn nhn kt qu. Nguyn nhn l: C 3 gi tr nhp vo u l s nguyn dng. Tng 2 s bt k trong 3 s ln hn s cn li. Hai trong 3 s c gi tr bng nhau. Ba s c gi tr bng nhau. Kt qu l: R1. Thng bo ba gi tr nhp vo lp thnh tam gic thng. R2. Thng bo ba gi tr nhp vo lp thnh tam gic cn. R3. Thng bo ba gi tr nhp vo lp thnh tam gic u. R4. Thng bo ba gi tr nhp vo khng lp thnh mt tam gic.

26

Nhm3

Kim th tch hp
R5. Thng bo li nhp d liu.

Integration testing

Hnh 5: th nguyn nhn kt qu

Bc tip theo l to bng quyt nh mc vo gii hn. Chn kt qu R1 l u tin. R1 c mt nu nt cc nt 12 v 3 = 1,0. Nt 12 = 1 khi 1 v 2 = 1,1. p dng ln lt cho s c mt ca tng kt qu u vo, ta c bng quyt nh nh sau:

27

Nhm3

Kim th tch hp Bng quyt nh


1 1 2 3 4 1 1 0 2 1 1 1 1 3 1 4 1 0

Integration testing

5 0

R1 R2 R3 R4 R5

1 0 0 0 0

0 1 0 0 0

0 0 1 0 0 0 0 1 0

0 0 0 0 1

Bc cui cng l chuyn i bng quyt nh thnh cc ca kim th. Cc ca kim th thu c nh sau:

28

Nhm3

Kim th tch hp

Integration testing

STT 1

Cc iu kin C 3 gi tr nhp vo u l s nguyn dng, v tng ca 2 s bt k trong 3 s lun ln hn s th 3, v khng c cp 2 s bt k no trong 3 s l = nhau.

Ca kim th

Hnh ng R1

2,3,4 2,4,3 3,2,4 3,4,2 4,2,3 4,3,2 C 3 gi tr nhp vo u l s 3,3,4 nguyn dng, v tng cu 2 s 3,4,3 bt k trong 3 s lun ln hn s 4,3,3 th 3, v tn ti mt cp 2 s trong 3 s l = nhau. C 3 gi tr nhp vo u l s 3,3,3 nguyn dng, v c 3 s c gi tr bng nhau.

R2

R3

C 3 gi tr nhp vo u l s 1,2,4 R4 nguyn dng, v tn ti 2 s V 5 hon v ca trong 3 s c tng nh hn hoc n bng s cn li. Tn ti mt gi tr nhp vo A,2,2 R5 khng phi l s nguyn dng. -1,1,1 1.1,1,1 V 2 hon v ca mi trng hp

29

Nhm3

Kim th tch hp Ti liu tham kho Software Engineering 5th edition Pressman Unit& integration Testing Cong nghe phan mem_PhanHuyKhanh

Integration testing

The_Art_Of_Software_Testing_Glenford J Myer_John Wiley & Sons Inc Software testing.pdf Foundations of software testing istqb-certification www.vietnamesetestingboard.org

30

Nhm3

You might also like