Gerçek Zamanlı Gömülü Yazılımlar için Test - CEUR

*HUoHN=DPDQOÕ*|PO<D]ÕOÕPODULoLQ7HVW
2WRPDV\RQX7UNL\H(QGVWULVLQGHQ%LU<DNODúÕPYH
Deneyim Raporu
Gökhan Urul1, Vahid Garousi <XVLIR÷OX2,3, Gökalp Urul1
1: øQWHVW7HNQRORML <D]ÕOÕP $ù
Ankara, Türkiye
{gokhan.urul, gokalp.urul}@intest.com.tr
2: 6LVWHPYH<D]ÕOÕP.DOLWH0KHQGLVOL÷L$UDúWÕUPD*UXEX6\6R4XDO
<D]ÕOÕP0KHQGLVOL÷L%|OP
$WÕOÕPhQLYHUVLWHVLøQFHN, Ankara, Türkiye
vahid.garousi@atilim.edu.tr
3: <D]ÕOÕP.DOLWH0KHQGLVOL÷L$UDúWÕUPD*UXEX6RIW4XDO
(OHNWULNYH%LOJLVD\DU0KHQGLVOL÷L%|OP
Kalgari Üniversitesi
Kalgari, Alberta eyaleti, Kanada
Öz.
Gömülü sistemler, |]HOoHYUHELULPOHUL\OH\NVHNHWNLOHúLPKDOLQGHRODQJHQHO
OLNOHJHUoHN]DPDQLKWL\DoODUÕQÕNDUúÕOD\DQVLVWHPOHUGLUBu bildiride gömülü sistemler içerisinde yer alan J|PO\D]ÕOÕPODUÕQ kara-kutu test süreci üzerinde duUXODFDNWÕU*|PO\D]ÕOÕPODUÕQWHVWoDOÕúPDODUÕQGDNXOODQÕODELOHFHNWHVWRWRPDV
\RQo|]POHULGH÷HUOHQGLULOHUHN\HQLELU\|QWHP|QHVUOPúWUgQHULOHQ\|Q
tem bir projede X\JXODQPÕú YH WHVW oDOÕúPDODUÕQD \DSÕODQ \DWÕUÕP YHULPLQL |Q
SODQGDWXWDQELUHQGVWUL\HOGHQH\LPUDSRUXROXúWXUXOPXútur.
Anahtar Kelimeler: Gömülü sistemler, Test otomasyonu, Kara-kutu test
1
GLULú
*|POVLVWHPOHUJHUoHN]DPDQOÕJHUHNVLQLPOHULNDUúÕOD\DUDN|]HOoHYUHELULPOHULLOH
\NVHNHWNLOHúLPOLRODUDNoDOÕúDQVLVWHPOHUGLU%X\D]ÕOÕPODUGR÷UXGDQELUGRQDQÕP]H
rinGHoDOÕúDELOHFHNOHULJLELJHUoHN]DPDQOÕELULúOHWLPVLVWHPL]HULQGHGHoDOÕúDELOLUOHU
>@7P J|PO \D]ÕOÕPODUÕQ RUWDN |]HOOL÷L NHQGLOHULQH ED÷OÕ RODQ sensörlerini veya
KDEHUOHúPHLoLQGHEXOXQGXNODUÕoHYUHELULPOHULQLNXOODQDUDNEXOXQGXNODUÕRUWDPLOHHW
NLOHúLPLoLQGHEXOXQPDODUÕGÕU
Test otomasyonu, elle \DSÕODQ\D]ÕOÕPWHVWOHULQLQPDOL\HWLQLROGXNoDGúUHELOHFHN
\D\JÕQNXOODQÕODQELU\DNODúÕPGÕU$QFDNL\LSODQODQÕSG]JQ\UWOPHGL÷LQGHelle
\DSÕODQtest yöntemine göre çok daha fazla maliyete neden olabilmektedir. Endüstride
305
WHVWRWRPDV\RQoDOÕúPDODUÕQGDEDúDUÕHOGHHGLOHELOPHVLLoLQRWRPDV\RQDUDoODUÕQÕQ seoLPLYHRWRPDV\RQ\DNODúÕPÕ|QHPOLUROR\QDPDNWDGÕU
*|PO\D]ÕOÕPODUJHQHOOLNOHoRN|]HODPDoODUD\|QHOLNWDVDUODQPDNWDGÕU|UQH÷LQ
araç motor kontrolü, ev gereçleri veya radar sistemleri gibi) Gömülü sistemlerin çok
JHQLúELUVSHNWUXPGD \HUDOPDVÕ\ODYHoRNIDUNOÕNDUDNWHULVWLN|]HOOLNOHUHVDKLSROPDOD
UÕ\ODELUOLNWHWPVLVWHPOHUH\|QHOLNWHNELUWHVWRWRPDV\RQDUDFÕYH\DoHUoHYHVL (fraPHZRUNJHOLúWLUPHNELUKD\OLgüç ROPDNWDGÕU Günümüzde gömülü sistemler üzerine
RGDNODQDQ ELUoRN WHVW RWRPDV\RQ DUDFÕ JHOLúWLUPH SURMHVL \UWOPHVLQH UD÷PHQ WHVW
PKHQGLVOHUL KDOD WHVW HGLOHFHN J|PO \D]ÕOÕPODUÕQ WP WHVWOHULQL SL\DVDGD EXOXQDQ
ücretsiz veya ticari test otomasyon çözümleriyle tam olarak otomatize edememektedirler. %HUQHUWHVWRWRPDV\RQXDODQÕQGDHGLQGL÷LELUoRNGHUVYHWHFUEHÕúÕ÷ÕQGDPDNDOH
VLQGHELUVLVWHPLQWDPRWRPDV\RQXQXQROGXNoD]RUROGX÷XQXEHOLUWPHNWHGLU [2].
%XELOGLULQLQGHYDPÕúXúHNLOGH\DSÕODQGÕUÕOPÕúWÕUTest otomasyon uygulamaODUÕQGD
NDUúÕODúÕODQSUREOHPLn WDQÕPÕYHNDSVDPÕ .ÕVÕP¶GDVXQXOPXúWXUøOJLOL oDOÕúPDODUÕQ
bir incelemesine 3.ÕVÕP¶GD\HUYHULOPLúWLU. gQHUGL÷LPL]WHVWRWRPDV\RQ\DNODúÕPÕ
.ÕVÕP¶GDDoÕNODQPDNWDGÕU.ÕVÕPVXQGX÷XPX]\DNODúÕPÕJHUoHNOHúWLUGL÷LPL] endüstUL\HO|UQHNX\JXODPDQÕQVRQXoODUÕQÕ|]HWOHPHNWHGLU6RQRODUDN.ÕVÕP, VRQXoODUÕ ve
gHOHFHNDUDúWÕUPDODULoLQönerileri VXQPDNWDGÕU.
2
3UREOHP7DQÕPÕYH.DSVDPÕ
*QP]GH J|PO \D]ÕOÕP VLVWHPOHUL oHYUHOHULQGHNL RUWDP LOH ED÷ODQWÕ NXUDELOPHN
için CANBus, UART, RS232, RS422, RS485, LIN, Ethernet, 1553, HDLC, ARINC,
3&,3&,H',2*3,%63,,&JLELELUoRNIDUNOÕIL]LNVHODUD\]NXOODQPDNWDGÕU$\QÕ
IL]LNVHODUD\]]HULQGHGDKLELUoRNIDUNOՁVWNDWPDQKDEHUOHúPHSURWRNRO7&3,3
CORBA, DDS, UDP, Modbus, Profibus, CANopen, FlexRay, XML-RPC, WCF, vb.)
NXOODQÕODELOPHNWHGLU
dDOÕúPDPÕ]NDSVDPÕQGD\HUDODQ7HVW(GLOHQ<D]ÕOÕP7(<VDYXQPDVDQD\LQGH\HU
DODQJ|POELU\D]ÕOÕPGÕU%XoDOÕúPDGDJL]OLOLNVHEHEL\OH7(<KDNNÕQGDID]ODGHWD\
verilmeyecek, X\JXODQDQWHVW\DNODúÕPՁ]HULQGHGXUXODFDNWÕU7(<ELUoRNIDUNOÕHOHNW
URQLNELULPLQPHUNH]LQGH\HUDODQJHUoHN]DPDQOÕJ|POELU\D]ÕOÕPGÕU7(<oHYUH
sindeki radar, silah kontrol birimi, güç birimi gibi elektronik kontrol birimleriyle haEHUOHúHUHNELUVLODKVLVWHPLQLQDQDNRQWUROLúOHYOHULQL\|QHWPHNWHGLU7(<JHOLúWLUPH
ve EWQOHúPH oDOÕúPDODUÕ VÕUDVÕQGD ELUoRN WHVW DúDPDVÕQGDQ geçmektedir. Ancak,
TEY’in en JHQLúNDSVDPOÕkara-kutu testleri GL÷HUoHYUHELULPOHULLOHEWQOHúPLú edilGLNWHQVRQUD\DSÕODELOPHNWHGLUKara-NXWXWHVWOHULVÕUDVÕQGDVLVWHPGHEXOXQDQELULPOHU
LOH7(<DUDVÕQGDJHUoHNOHúHQWUDILNYHROXúDQYHULDOÕúYHULúL TEY’in gereksinimlerinin
GR÷UXODQPDVÕQGDNXOODQÕODbilmektedir. TEY birçok IDUNOÕKDEHUOHúPHDUD\]ne sahip
olabilmektedir. TEY’e ait tüm arayüzler ]HULQGHJHUoHNOHúHQWUDIL÷LQ senkronize bir
úHNLOGHD\QÕWHVWRWRPDV\RQDOW\DSÕVՁ]HULQGHQNRQWUROELUSUREOHPRODUDNNDUúÕPÕ]D
oÕNPDNWDGÕU %X oDOÕúPDGDNL WHVW \DNODúÕPÕ 7(< YH 7(<¶LQ oHYUH ELULPOHUL LOH olan
DUD\]OHULDUDVÕQGDNLX\XPOXOX÷XYHGR÷UXODQDELOLUOL÷L]HULQHRGDNODQPDNWDGÕU
306
Kara-NXWXWHVWDNWLYLWHOHULWHPHORODUDNVLVWHPHX\JXODQDQJLUGLYHJ|]OHQHQoÕNWÕODUD
GD\DQPDNWDGÕU%XoDOÕúPDGDNXOODQÕODQWHVWRWRPDV\RQDOW\DSÕVÕEQ\HVLQGHJLUGLYH
oÕNWÕODUÕ³DOÕQDQPHVDMODU´YH³J|QGHULOHQPHVDMODU´RODUDNWDQÕPODPDNWD\Õ]
$OÕQDQYHJ|QGHULOHQPHVDMODUJ|VWHULPL³0HVVDJH6HTXHQFH&KDUWV´>3] dilinde buluQDQDOÕQDQYHJ|QGHULOHQROD\ODULOHEHQ]HUDQODPGDNXOODQÕOPDNWDGÕU
.
dDOÕúPDPÕ]GDEHOLUWLOHQTEY, oHYUHELULPOHULYHVHQV|UOHULLOHKDEHUOHúPHLoHULVLQ
GHGLU%XKDEHUOHúPH³$OÕQDQ0HVDMODU´YH³*|QGHULOHQ0HVDMODU´RODUDNPRGHOOHQH
bilmektedir. Kara-kutu testleri 7(<YHoHYUHELULPOHULDUDVÕQGDNLIL]LNVHODUD\]OHU]H
rinde JHUoHNOHúHQDOÕQDQ ve gönderilen mesDMODUDGD\DQGÕ÷ÕQGDQWHVWDNWLYLWHOHULQGH
KDEHUOHúPHE\N|QHPHVDKLSWLU7HVWOHUGHRWRPDV\RQNXOODQÕPÕ7(<¶LQHWUDIÕQGDNL
oHYUHELULPOHULQVLPOHHGLOPHVLQLJHUHNWLUPHNWHGLUøGHDOELUWHVWRUWDPÕQGDWPoHYUH
birimlerin simüle edilmesi taPDPÕ\ODRWRPDWLNoDOÕúDQWHVWOHULQJHOLúWLULOPHVLQLVD÷OD
\DELOLU$QFDNSURMHOHUGHWHVWoDOÕúPDODUÕQDD\UÕODQEWoHOHUYHWHVWRWRPDV\RQ\DWÕUÕ
PÕQÕQJHULG|QúHOHDOÕQGÕ÷ÕQGDQDGLUHQWDPDPÕ\ODVLPOHHGLOPLúELUWHVWRUWDPÕWD
VDUODQDELOPHNWHGLU 7DPDPÕ\OD RWRPDWL]H HGLOPH\HQ WHVW RUWDPODUÕ GD ELU WDNÕP RWR
PDV\RQ LúOHYOHULQL EDUÕQGÕUDELOPHNWHGLU %WoH YH \DWÕUÕPÕQ JHUL G|Qú NÕVWDVODUÕQD
J|UHNDUDUYHULOHUHN7(<¶LQED]ÕWHPHODUD\]OHULVLPOHHGLOLUNHQGL÷HUDUD\]OHULoLQ
JHUoHNELULPOHUNXOODQÕODELOir. Simüle edilecek olan bu temel arayüzler, özellikle TEY’e
NRPXWJ|QGHUHQDUD\]OHULoHULVLQGHQVHoLOPHOLGLU%|\OHFH\DUÕ-otomatik bir test orWDPÕROXúWXUXODELOLU
dDOÕúPDPÕ]GDNLWHVWHGLOHQJ|POVLVWHPGHVLVWHPGHNLoHYUHELULPOHU7(<WDUD
IÕQGDQNRQWUROHGLOPHNWHGLU*|POVLVWHPOHUGHX\JXODQDFDNWHVWRWRPDV\RQXQEDúD
UÕVÕLoLQVLVWHPLQWHVWHGLOHELOLUOL÷LROGX÷XNDGDUNRQWUROHGLOHELOLUOL÷LYHJ|]OHPOHQHEL
OLUOL÷LGH\NVHNVHYL\HGHWXWXOPDOÕGÕU [4]. Örnek olarak, yüksek seviyede kontrol edilebilirlik ve gözlemlenebilirlik için, WHVW HGLOHQ \D]ÕOÕP YH oHYUH ELULPOHUL DUDVÕQGDNL
LOHWLúLPDOW\DSÕVÕQÕQHVQHNYHWHVWHGLOHELOLUELU\DSÕGDWDVDUODQPDVÕJHUHNPHNWHGLUBu
oDOÕúPDNDSVDPÕQGDNXOODQÕODQWHVWRWRPDV\RQDUDFÕ WHPHO\HWHQH÷HVDKLSWLU%LULQFLVL
sistemde bulunan çevre birimlerin yerine geçerek, bu birimleri simüle edebilmektedir.
'L÷HU|QHPOL|]HOOL÷LLVH JHUoHNoHYUHELULPOHUYH7(<DUDVÕQGDEXOXQDQKDEHUOHúPH
D÷ÕQÕ GLQOH\HELOPHNWHdir. Bu araç hem izleyici(sniffer), hem de bir simülator olarak
davranabilmektedir.
7(<VLVWHPLoHULVLQGHPHUNH]LELUQRNWDGD\HUDOPDNWDGÕU.RQWUROFoHYUHELULPOHU
temel olarak TEY’e komut göndermektedirler. TEY’i kontrol eden arayüzler daha çok
NRQWUROF oHYUH ELULPOHU WDUDIÕQGD EXOXQPDNWDGÕU %LU GL÷HU oHYUH ELULm türü kontrol
HGLOHQoHYUHELULPOHUGLU7(<NRQWUROHGLOHQoHYUHELULPOHUHNRPXWJ|QGHUHUHNRQODUÕ
kontrol etmektedir.
307
ûHNLO17(<0LPDULVLYH7HVW$OW\DS×V×
7P oHYUH ELULPOHUL VLPOH HWPHQLQ PDOL\HWL \NVHN RODFD÷ÕQGDQ NRQWURO HGLOHQ
oHYUHELULP YH7(<DUDVÕQGDNLDUD\]OHUGHL]OHPH \|QWHPLNXOODQÕOPDNWDGÕUø]OHPH
\|QWHPLNXOODQÕOÕUNHQKDWDHQMHNWHHWPH\|QWHPLLOHELULPOHULQKDWDOÕGXUXPODUÕGDROXú
turulabilmektedir.
ø]OHPH\|QWHPLQLQGH]DYDQWDMÕ GR÷UXoDOÕúDQELUVLVWHPGHNLKDWDOÕVHQDU\RODUÕQJHU
oHNOHúWLULOHPHPHVLROPDNWDGÕU<DOQÕ]FDL]OHPH\|QWHPLNXOODQÕODQWHVWOHUGHVLVWHPLQ
KDWDOÕVHQDU\RODUÕQÕNDSVD\DQJHUHNVLQLPOHUWHVWHGLOHPH\HELOPHNWHGLU0DOL\HWDoÕVÕQ
GDQELUWHVWoDOÕúPDVÕQÕQNDSVDPÕHOHDOÕQGÕ÷ÕQGDL]OHPH\|QWHPLYHVLPODW|UJHOLú
WLUPH\|QWHPLDUDVÕQDELUDGÕPGDKDHNOHQPHVLJHUHNWL÷LRUWD\DoÕNPDNWDGÕU+DWDHQ
MHNVL\RQX\|QWHPL\NVHNPDOL\HWJHUHNWLUHQVLPODW|UJHOLúWLUPHoDOÕúPDVÕQÕRUWadan
NDOGÕUÕUNHQSDVLIELULúOHYRODQL]OHPH\|QWHPLQHVWLPODV\RQ \HWHQH÷LND]DQGÕUDUDN
PDOL\HWHWNLQúHNLOGHWHVWNDSVDPÕQÕDUWÕUDELOPHNWHGLU
%LU \D]ÕOÕP SURMHVL NDSVDPÕQGD WHVW DúDPDVÕ DQD E|OPH D\UÕODELOLU [5]. (1) test
WDQÕPWDVDUÕPÕWHVWVFULSWKD]ÕUODQPDVÕWHVWOHULQNRúWXUXOPDVÕ, (4) testlerin de÷HUOHQGLULOPHVL dDOÕúPDPÕ] NDSVDPÕQGD GH÷LQHFH÷LPL] o|]POHU WHVWOHULQ NRúWXUXO
PDVÕDúDPDVÕQGD\HUDOPDNWDGÕU
3
øOJLOLdDOÕúPDODU
Gömülü sistemlerin kara-NXWXWHVWOHULQLJHUoHNOHúWLUPHNDPDFÕ\ODNXOODQÕODELOHFHNELU
oRNoHUoHYHDUDoYHoDOÕúPDEXOXQPDNWDGÕU%XQODULoHULVLQGHQ|QHoÕNDQODU77ZRUN
bench [6], Wireshark [7], CANoe [8], ve MESSINA [9] bu bölümde incelenecektir.
TTworkbench [6@ WHVW RWRPDV\RQ SURMHOHUL LoLQ NXOODQÕODQ (FOLSVH WDEDQOÕ ELU WHVW
JHOLúWLUPHYHNRúWXUPDoHYUH\D]ÕOÕPÕGÕU(IDE). TTworkbench, eklenti(plugin) temelli
ELUoHUoHYHVXQDUDN\D]ÕOÕPUQOHULQLQYHVHUYLVOHULQLQWHVWOHULQLNXOODQÕODQWHNQRORML
GHQLúOHWLPVLVWHPLQGHQYHX\JXODQGÕ÷ÕRUWDPGDQED÷ÕPVÕ]KDOHJHWLUPHNWHGLU$YUXSD
7HOHNRPQLNDV\RQ 6WDQGDUWODUÕ (QVWLWV¶QQ (76, ELU VWDQGDUGÕ RODQ 7Hsting and
Test Control Notation 3 (TTCN-3) [10@GLOLNXOODQÕODUDN77ZRUNEHQFKDUDFՁ]HULQGH
WHVW WDQÕPODUÕ WDVDUODQDELOPHNWHGLU77ZRUNEHQFK KDEHUOHúPH VÕUDODPDVÕ J|QGHUPH
308
DOPDEHNOHPHJLELWHVWRWRPDV\RQXLoLQ|QHPOLIRQNVL\RQODUÕEDUÕQGÕUPDVÕQDUD÷PHQ
JHUoHN]DPDQOÕKDEHUOHúPHNDQDOÕL]OHPH\HVQLIIHURODQDNYHUPHPHNWHGLU7HVWDOD
QÕQGDoldukça |]HOOHúPLúRODQ77&1-3 dili, ancak bu konuda uzman test mühendisleULQLQNXOODQDELOHFH÷LELURUWDPVD÷ODPDNWDGÕU
Temel olarak, Wireshark [7@ELUD÷L]OHPHVQLIIHUDUDFÕGÕU:LUHVKDUNDUDFÕQÕQtemel
DPDFÕWest faaliyetleri ROPDVDGDD÷DUD\]OHULQLJ|UQUNÕODUDND÷]HULQGHNLWUDIL÷L
NXOODQÕFÕ\DVXQPDNWDGÕU'R÷UXODPDDPDoOÕ\DSÕODQDQDOL]\|QWHPLQLQJHUoHNOHúWLULOH
ELOHFH÷L ELU G]OHP VXQPDNWDGÕU %LU D÷ ]HULQGHNL J|UQUON GR÷UXODQDELOLU ELU D÷
\DSÕVÕQÕEHUDEHULQGHJHWLUPHNWHGLU:LUHVKDUN\DOQÕ]FDEthernet veri yolu üzerinde çaOÕúPDVÕQD UD÷PHQ IDUNOÕ IL]LNVHO DUD\]OHU LoLQ LOKDP YHUPHNWHGLU $QDOL] YH L]OHPH
yönteminin kara-NXWXWHVWOHUGH|QHPOLELU\DNODúÕPROGX÷XGúQOG÷QGH:LUHVKDUN
DUDFÕQÕQNXOODQGÕ÷ÕL]OHPHVQLIIHUPHWRGXQXQbir test otoPDV\RQDOW\DSÕVÕQGDEXOXQ
PDVÕQÕQoRNID\GDOÕRODFD÷ÕGH÷HUOHQGLULOPHNWHGLU
CANoe [8@HOHNWURQLNNRQWUROELULPL(.%JHOLúWLULOPHVLQGHWHVWOHULQGHYHDQDOL]
OHULQGH NXOODQÕODQ ELU \D]ÕOÕP DUDFÕGÕU 2WRPRWLY HQGVWULVLQGH YH |]HOOLNOH
CAN(Controller Area NeWZRUNYHUL\ROX]HULQGHX]PDQODúDQ&$1RH\D]ÕOÕPÕYHUL
\ROXVLPODW|UWHVWoHYUHVLYHWDPHNLSPDQOÕWDQÕPOD\ÕFÕGLDJQRVWLF\HWHQHNOHULQH
sahiptir. [11@¶GHEHOLUWLOHQoDOÕúPDGDWHVWRUWDPÕQGDNLWPELULPOHUVLPOHHGLOHUHN&$
1RHDUDFÕ\ODWHVWOHUJHUoHNOHúWLULOPLúWLU&$1RHDUDFÕQÕQIRQNVL\RQHO\HWHQHNOHULWHVW
RWRPDV\RQoDOÕúPDODUÕLoLQROGXNoDX\JXQROVDGDoDOÕúPDPÕ]ÕQDPDFÕRODQIDUNOÕIL
]LNVHODUD\]OHULoLQELUo|]PVXQPDPDNWDGÕU
'RQDQÕPYH\D]ÕOÕPNDWPDQODUÕQGDQED÷ÕPVÕ]RWRPDWLNWHVWWDQÕPODUÕKD]ÕUODQPD
VÕQD YH NRúWXUXOPDVÕQD RODQDN YHUHQ ELU GL÷HU WHVW RWRPDV\RQ DUDFÕ GD 0(66,1$
[9@¶GÕU
Palmieri [12@¶QLQWH]oDOÕúPDVÕQGD |]HOOLNOHRWRPRWLYDODQÕQGD günümüzde yer alan
test teknikleri ve PHWRWODUÕQD \HUYHULOPLúWLU%XoDOÕúPDLoHULVLQGH DGHWDoÕNND\QDN
NRGOX YH WLFDUL WHVW DUDFÕQÕQ NDUúÕODúWÕUPDVÕ \DSÕODUDN VLVWHP WHVWOHULQH RODQ NDWNÕODUÕ
GH÷HUOHQGLULOPLúWLU3DOPLHUL77&1-3 test dili üzerine odaklanarak CAN veri yolu üzeULQGHNLGHQH\LPOHULQLEXoDOÕúPDGDVXQPXúWXU
4
Test Otomasyon YDNODúÕPÕ
dDOÕúPDNDSVDPÕQGDVLVWHPGH\HUDODQDUD\]OHU]HULQGHL]OHPHVQLIIND\GHWPHR\
QDWPD\DSDELOHQHNOHQWLWDEDQOÕELURWRPDV\RQDOW\DSÕVÕNXOODQÕODUDNJHUoHNOHúWLULOHQELU
WHVWPHWRGX|QHUL\RUX]dHYUHELULPOHULQKHUELULQLQ\HULQHWHVWDPDoOÕEir simülasyon
\D]ÕOÕPÕJHUHNWLUPHGHQ\DOQÕ]FDLOJLOL7(<-oHYUHELULPDUDVÕQGDNLKDEHUOHúPHSURWR
NROQQJHOLúWLULOHUHNWHVWRWRPDV\RQDOW\DSÕVÕQDHQWHJUHHGLOPHVLWHVWRWRPDV\RQXQD
NDWNÕODUÕE\NROPDNWDGÕU%|\OHFHWHVWDOW\DSÕVÕ7(<¶LNRQWURODOWÕQDDOÕUNHQ7(<YH
NRQWUROHGLOHQoHYUHELULPOHUDUDVÕQGDNLKDEHUOHúPHGHWHVWDOW\DSÕVÕWDUDIÕQGDQGLQOH
nebilecektir.
*|PO7(<DUDVÕQGDNLoHYUHELULPOHULNLNDWHJRUL\HD\UÕOPDNWDGÕUNRQWUROFbirimler ve (2) kontrol edilen birimler. En üst seviye otomas\RQDPDFÕQDXODúPDNLoLQ
kontrolcü birimlerin tam olarak simüle edilmesi gerekirken, özellikle NDUPDúÕN \DSÕ
daki kontrol edilen birimler için simülasyona gerek olmayabilmektedir. Kontrol edilen
309
NDUPDúÕN ELULPOHUYH7(<DUDVÕQGDNLKDEHUOHúPHGLQOHQGL÷LQGHtest otomasyonun uyJXODQDELOGL÷L WHVWOHU|QHPOLGHUHFHGHDUWPDNWDGÕU
7HVWDOW\DSÕVÕQÕEDúOÕNDOWÕQGDHOHDODFD÷Õ]PHYFXWWHVWDUDoODUÕQÕQ\HQLGHQNXO
ODQÕPÕya da DGDSWDV\RQXWHVWVWUDWHMLVLWHVWDUDFÕJHOLúWLUPH
4.1
0HYFXW 7HVW $UDoODUÕQÕQ <HQLGHQ .XOODQÕPÕQÕQ YH $GDSWDV\RQXQXQ
'H÷HUOHQGLULOPHVL
dDOÕúPDNDSVDPÕQGDWLFDULya da FUHWVL]RODUDNJ|POVLVWHPOHULQWHVWOHULQGHNXOODQÕ
ODELOHFHNRODQWHVWDUDoODUÕQÕQ DODQGDNXOODQÕPÕQDve adaptasyonuna dair sistematik bir
oDOÕúPD\UWOPúWU
6LVWHPDWLNGH÷HUOHQGLUPHPL]LQVRQXFXQGD\DOQÕ]FD7tworkbench [5] ve yeteneklerinin, LKWL\DoODUÕPÕ]Õ YH NDSVDPÕ NDUúÕOD\DELOHFH÷L GH÷HUOHQGLULOPLúWLU. TTworkEHQFK¶LQ NXOODQÕOGÕ÷Õ NoN GHPR ELU SURMH VRQXQGD \DSÕODQ IL]LELOLWH DQDOL]L VRQX
cunda, bu araca i]OHPHVQLIIHU\HWHQH÷LQLQHNOHQPHVLQLQPPNQROPDGÕ÷ÕYHúLUNHW
NDSVDPÕQGD ELU WHVW RWRPDV\RQ DUDFÕ JHOLúWLULOPHVL GH÷HUOHQGLULOPLúWLU 77ZRUN
EHQFK¶LQJHUHNWLUGL÷L77&1-GLOLQLQ|÷UHQLOPHVLúLUNHWLoHULVLQGHEXDUDFÕNXOODQDFDN
RODQSHUVRQHOVD\ÕVÕQÕGD |QHPOL|OoGHD]DOWDFD÷Õ|QJ|UOPúWU<DOQÕ]FD77&1-3
GLOLQL|÷UHQHQWHVWPKHQGLVOHULQLQGH÷LOSURMHQLQoHúLWOLVHYL\HOHULQGH\HUDODQ\D]Õ
OÕPGRQDQÕPWHVWYHVLVWHPPKHQGLVOHULQLQGHWHVWDUDFÕQDhâkimiyeti KHGHIOHQPLúWLU
4.2
Test Stratejisi
Kurum içLQGHJHOLúWLULOHQWHVWDOW\DSÕVÕQÕQ\HWHQHNOHULJ|]|QQHDOÕQGÕ÷ÕQGDWHVWHGL
OHFHNVLVWHPGHEXOXQDQoHYUHELULPDUD\]OHULQGHQKDQJLOHULQLQWHVWDUDFÕLoHULVLQGH\HU
DOPDVÕJHUHNWL÷LYHKDQJLVHYL\HGHVLPODV\RQJHUHNVLQLPLROGX÷XGH÷HUOHQGLULOPHOL
dir. Y|QWHPLPL]GHVLVWHPGHNLED]ÕDUD\]OHUWDPDPHQVLPOHHGLOLUNHQGL÷HUOHUL]H
ULQGH\DOQÕ]FDGLQOHPHVQLIILQJ\DSÕOPDNWDGÕU'LQOHPH\DSÕODQDUD\]OHU]HULQGHNL
WUDILN NXOODQÕFÕ YH WHVW DUDFÕ WDUDIÕQGDQ J|UQU NÕOÕQDUDN GR÷UXODQDELOLU ELU VHYL\H\H
getiriOPHNWHGLU%XDGÕPGDKDEHUOHúPHDUD\]OHULNDUPDúÕNOÕNODUÕQDYHNRQWUROVHYL\H
OHULQHJ|UHNDWHJRUL]HHGLOHFHNWLUøONNDWHJRULGH7(<YHNRQWUROHGLOHQELULPOHUDUDVÕQ
GDNLDUD\]OHU\HUDOPDNWDGÕU%XNDWHJRULGHNLDUD\]OHULQWDPRODUDNVLPOHHGLOPHVL
yüksek maliyetlere neden RODELOGL÷LQGHQEXDUD\]OHULL]OHPHNGúNPDOL\HWOLELURWR
PDV\RQ \HWHQH÷LVD÷ODPDNWDGÕU(QWHJUDV\RQWHVWOHUL VÕUDVÕQGDEXNDWHJRULGHNLoHYUH
ELULPOHULQVLPODV\RQODUÕGH÷LONHQGLOHULNXOODQÕOPDNWDGÕU7HVWDOW\DSÕVÕQÕQSDUDOHONXO
lDQÕPD X\JXQOX÷XQGDQ GROD\Õ WDP RODUDN VLPOH HGLOHQ DUD\]OHUGHQ J|QGHULOHQ NR
PXWODUÕQoÕNWÕVÕRODQELOJLOHUEXDUD\]OHULQL]OHQPHVLLOHGR÷UXODQDELOPHNWHGLU'L÷HU
NDWHJRULGH 7(< YH NRQWUROF ELULP DUDVÕQGDNL DUD\] \HU DOPDNWDGÕU 7(<¶H NRPXW
gönderen aUD\]OHULQE\N|OoGHVLPOHHGLOHUHNWHVWDOW\DSÕVÕQDED÷ODQPDVÕRWRPDV
\RQRUDQÕQÕROGXNoDDUWÕUPDNWDGÕU
4.3
7HVW2UWDPÕQÕQ*HOLúWLULOPHVL
)LUPD LoHULVLQGH HNOHQWL WHPHOOL WDVDUODQDQ WHVW DUDFÕ \HQL KDEHUOHúPH SURWRNROOHULQH
özel yeni eklentilerin kolayca WDVDUODQPDVÕQÕ VD÷ODPDNWDGÕU dDOÕúÕODQ DODQGD IDUNOÕ
310
SURMHOHUGHD\QÕKDEHUOHúPHSURWRNROOHULNXOODQÕOPDNWDGÕU%XSURWRNROOHUH|]HOHNOHQWL
OHUIDUNOÕSURMHOHUGHRUWDNNXOODQÕOÕUNHQ\HQLNDUúÕODúÕODQSURWRNROOHULoLQ\HQLHNOHQWL
JHOLúWLUPeVL\DSÕOPDNWDGÕU(NOHQWLJHOLúWLUPH\L\D]ÕOÕPJHOLúWLUPHDODQÕQGDX]PDQP
KHQGLVOHULQ\DSPDVÕGDKDX\JXQROPDNWDGÕU
$\UÕFDILUPDGDJHOLúWLULOHQWHVWDUDFÕ\D]ÕOÕPYHGRQDQÕPVR\XWODPDVÕQÕVD÷OD\DQHN
OHQWLWHPHOOLNDWPDQOÕELU\D]ÕOÕPPLPDULVLQHVDKLSWLU*L]OLOLNYHprojelerin hassasiyeWLQGHQGROD\ÕNXOODQÕODQWHVWDUDFÕLOHLOJLOLGHWD\OÕELOJLEXPDNDOHNDSVDPÕQGDSD\OD
úÕODPDPDNWDGÕU
5
<DNODúÕPÕQ'H÷HUOHQGLULOPHVL
%LUVRQUDNLE|OPGHSURMHPL]GHX\JXODQDQWHVW\DNODúÕPÕQÕQYHDUDFÕQÕQGH÷HUOHQGLU
PHVL\DSÕODFDNWÕU
5.1
7HVW7DQÕPODUÕQÕQ7DVDUÕPÕ
*|POELUVLVWHPGHWHVWRWRPDV\RQXROGXNoD]RUELUSUREOHPGLU6LVWHPLYHGDYUDQÕ
úÕQÕWDQÕPOD\DQPHVDMDNÕúWDEORODUÕWDVDUODQPÕúYHG]JQGRNPDQWHHGLOPLúROVDGD
VLVWHP]HULQGHJHUoHNOHúHQKDEHUOHúPHWXWDUOÕROPD\DELOLUT(<¶LQSDUDOHO\UWW÷
görevlerden(multithreaded) ND\QDNOÕROXúDQJHUoHNKDEHUOHúPHVLVWHPGHKHUKDQJLELU
KDWD ROPDPDVÕQD UD÷PHQ WDVDUODQGÕ÷Õ JLEL JHUoHNOHúPH\HELOLU %X QRNWDGD NHúLI
DPDoOÕH[SORUDWRU\ [13] WHVW\|QWHPL|QHPOLELUUROR\QDPDNWDGÕU7HVWWDQÕPODUÕPHVDM
DNÕúGL\DJUDPÕúHNOLQGHROXúWXUXOPDNWDGÕU
%D]Õ WHVW WDQÕPODUÕ WDP RWRPDWLN ELU úHNLOGH WDVDUODQDELOPHNWHGLU 7HPHO RODUDN
7(<¶HELUJLUGL\DSDUDN7(<¶LQoÕNWÕODUÕQÕQNRQWURO\|QWHPLWHVWDUDFÕQÕQLOJLOLDUD
\]OHULWDUDIÕQGDQNDSVDQÕ\RUVDEXWHVWWDQÕPODUÕWDPRWRPDV\RQNDSVDPÕQDDOÕQDELOLU
'L÷HUELUmetot LVH\DUÕRWRPDWLNWHVW\|QWHPLGLU<DUÕ-otomatik test elde etmek için
WHVWDUDFÕ7(<¶HELUNRPXWJ|QGHULUYH7(<¶LQoÕNWÕODUÕDQOÕNYHJHUoHN]DPDQOÕRODUDN
\LQHWHVWDUDFÕWDUDIÕQGDQND\ÕWHGLOLU7HVWDUDFÕVLVWHPGHNLWPDUD\]OHULVHQNURQL]H
ELUúHNLOGHND\GHWWL÷LQGHQND\GHGLOHQNRPXWODUYHFHYDSODUWHVWVRUXPOXVXWDUDIÕQGDQ
GDKDVRQUDGR÷UXODQDELOLUELUúHNOHXODúPÕúROPDNWDGÕU
%LUGL÷HU\DUÕ-otomatik test metodu, otomatik testler ile manuel \|QWHPOHULQELUOHú
WLULOPHVLLOHPH\GDQDJHOPHNWHGLU7HVWDUDFÕQGDKD]ÕUODQDQELUVHQDU\R\DPHVDMNXWXVX
HNOHQHUHNRSHUDW|UQELULúOHP\DSPDVÕya da ELUNRQWUROJHUoHNOHúWLUPHVLLVWHQHELOLU
2SHUDW|UPGDKDOHVLVRQUDVÕQGDWHVWDGÕPODUÕRWRmatik olarak devam edebilir.
5.2
Kazançlar
%XoDOÕúPDQÕQDPDFÕJ|PObir \D]ÕOÕPÕQHOOH\DSÕODQ yöntem ya da otomasyon yöntemi ile WHVWHGLOPHVLDUDVÕQGDNLGHQJH\LVD÷OD\DUDNWHVWRWRPDV\RQXQD\DSÕODQ\DWÕUÕP
ODUÕQ YHULPLQL DUWÕUPDNWÕU Test otomasyonunun EX DODQGD LNL E\N DYDQWDMÕ ROGX÷X
görülmektedir. BXQODUWHVWHD\UÕODQLúJFQQD]DOPDVÕWHVWOHULQGDKDNDOLWHOL
ELUúHNLOGHJHUoHNOHúWLULOHELOPHVL
311
7HVWHD\UÕODQLúJFQQD]DOPDVÕWHVWDOW\DSÕVÕQÕNXUPDYHWHVWLJHUoHNOHúWLUPHDúD
PDODUÕQGDNLND]DQÕPODUGDQHOGHHGLOPHNWHGLU6ÕIÕUGDQWHVWDUDoODUÕJHOLúWLUPHN\HULQH
WHVWDOW\DSÕVÕNXOODQÕODUDN\HQLHNOHQWLOHUJHOLúWLUPHQLQ|QHPOL|OoGHLúJFQD]DOWWÕ÷Õ
J|]OHQPLúWLU
*|POVLVWHPOHUGHWHVWRWRPDV\RQX7(<µLQVDGHFHIRQNVL\RQHOGH÷LOIRQNsiyonel
olmayan testlerine, GROD\ÕVÕ\ODNDOLWHVLQHGHNDWNÕVD÷ODPDNWDGÕU7HNUDUODQDQWHVWVH
QDU\RODUÕVLVWHPGHE\NSUREOHPOHUH\ROaçabilmektedir. %D]ÕWHVWOHUL\NVHNPLNWDU
laUGDWHNUDUODGÕ÷ÕPÕ]GDIRQNVL\RQHOROPD\DQELUWDNÕPoRN|QHPOLYH\ÕNÕFÕRODrak kaWHJRUL]HHGLOHQKDWDODUODNDUúÕODúWÕN2WRPDV\RQ\DNODúÕPÕROPDGDQEXKDWDODUODNDUúÕ
ODúPDNSHNPPNQJ|]NPHPHNWHGLU
)LUPD EQ\HVLQGH JHOLúWLULOHQ WHVW RWRPDV\RQ DOW\DSÕVÕ, ELU L]OHPH DUDFÕ RODUDN GD
NXOODQÕODELOGL÷LQGHQ VLVWHPGHNL WP YHUi yolu WUDIL÷LQH HULúLP VD÷ODPDNWDGÕU. Trafik
LoHULVLQGHJHUoHNOHúHQYHULOHULQ]DPDQHWLNHWLHNOHQHUHNHú]DPDQOÕ ELUúHNLOGHkaydedilmesiyle ELUOLNWHWHVWPKHQGLVOHULGR÷UXODPD\|QWHPOHULQGHQDQDOL]\|QWHPLQLDNWLI
ELUúHNLOGHNXOODQDELOPLúOHUGLU
Elle\DUÕ-otomatik ve otomatik test metotODUÕQÕELU DUDGDNXOODQDUDNWDVDUODGÕ÷ÕPÕ]
WHVW VLVWHPLQGH WRSODP WHVW WDQÕPODUÕQÕQ ¶Xnda tam otomasyon VD÷ODQDELOPLúWLU.
$QFDNWHVWDOW\DSÕVÕWPWHVWWDQÕPODUÕQGDNXOODQÕOPÕúWÕU
5.3
g÷UHQLOHQ'HUVOHU
%XoDOÕúPDGDROGX÷X JLEL NDUPDúÕN bir gömülü sistemde tüm gereksinimlerin testini
RWRPDWL]HHWPHNPDOL\HWLoRNDUWÕUPDNWDGÕU<DWÕUÕPÕQYHULPLQL en uygun noktaya çeNHELOPHN LoLQ WHVW WDQÕPODUÕ GXUXPD J|UH \DUÕ-otomatik, otomatik ve manuel olarak
WDVDUODQPÕúWÕU
Test otomasyon çaOÕúPDODUÕQGD\DWÕUÕPÕQYHULPLQHHWNLHGHQ|QHPOLIDNW|UQNXO
ODQÕODQWHVWotomasyon DUDFÕQÕQYHDUDFÕNXOODQDQWHVWPKHQGLVLQLQ nitelikleri ROGX÷X
J|]OHQPLúWLUø\LWDVDUODQPÕúELUWHVWRWRPDV\RQDOW\DSÕVÕQÕQKDUFDQDQWRSODPLú gücünü
azaltarak, testlerLQNDOLWHVLQGH|QHPOLELUDUWÕúÕVD÷OD\DELOHFH÷LJ|]OHQPLúWLUdR÷XGX
UXPGDRWRPDV\RQXQ\DWÕUÕPYHULPLQLROXPOXELUúHNLOGHHWNLOHGL÷LIDNDW7(<¶LQKDQJL
JHUHNVLQLPOHULLoLQWHVWOHULQRWRPDWL]HHGLOPHVLNRQXVXQGDL\LWDVDUODQPÕúELUPHWRGXQ
ROPDGÕ÷ÕJ|UOPúWU
5.4
)DUNOÕ(QGVWULOHUH8\DUODPD
gQHULOHQPHWRGXVDYXQPDVDQD\LQGHEXOXQDQELUJ|POVLVWHPHX\JXODPDPÕ]DUD÷
PHQEX\DNODúÕPIDUNOÕHQGVWULOHUGH\HUDODQSUREOHPOHUHGHX\DUODQDELOHFHNWLUùHNLO
¶GHJ|VWHULOHQVLVWHPWDVDUÕPÕRWRPRWLYYHHQGVWUL\HO RWRPDV\RQDODQODUÕQGD\HUDODQ
sistemlerle oldukça benzerdir. Bu metot GL÷HUJ|POVLVWHPOHULQWHVWOHULQHX\DUODQD
bilir.
5.5
6RQXoYH*HOHFHNdDOÕúPDODU
%XoDOÕúPDGDönerilen WHVW\|QWHPLILUPDGDJHOLúWLULOHQJ|PO\D]ÕOÕPODUÕQWHVWoD
OÕúPDODUÕQD sistematik bir \DNODúÕP JHWLUPLúWLU*HOLúWLULOHQ WHVWDUDFÕILUPDLoHULVLQGH
312
DNWLI RODUDN NXOODQÕOPDNWDGÕU .DUPDúÕN J|PO VLVWHPOHULQ WHVWOHUL NROD\ ELU úHNLOGH
\DSÕODPDGÕ÷ÕQGDQROGXNoDPDOL\HWOLELUWHVWoDOÕúPDVÕROXúDELOPHNWHGLU7HVWoDOÕúPD
ODUÕQDD\UÕODQ\DWÕUÕPÕQYHULPLJ|]|QQHDOÕQGÕ÷ÕQGDG]JQSODQODQPÕúELUWHVWDOW\D
SÕVÕLOHelle\DUÕ-otomatik ve tam-RWRPDWLNELUúHNLOGHWHVWWDQÕPWDVDUÕPODUÕ\DSÕODELOLU
6XQGX÷XPX]WHPHOILNLURODQNRQWURODOWÕQGDNLELULmlerin arayüzlerinin dinlenmesi ve
kontrolcü birimlerin arayüzlerinin simüle/stimüle edilmesi, testleri semi-otomatik bir
úHNOHJHWLUHUHNPDOL\HWOHULGúUPHNWHGLU%XVD\HGH]DPDQGDQWDVDUUXIWHVWNDOLWH
sinde DUWÕú YH \DWÕUÕPÕQ YHULPLQGH ND]DQo VD÷ODQDELOPHNWHGLU 3URMH NDSVDPÕQGD RO
dukça bDúDUÕOÕELUWHVWVUHFLQGHQJHoLOHUHNELUoRNNULWLNKDWDEXOXQPXúWXU)DUNOÕSUR
jelerde yer alan ekip üyeleri, \DSÕODQSURWRWLSoDOÕúPD\ÕJ|UHUHNX\JXODQDQWHVWVWUDWH
MLVLQLNHQGLSURMHOHULQGHGHX\JXODPDNLVWHPLúOHUGLU
BXoDOÕúPDGDbir sistemin tHVWOHULQGHNXOODQÕODFDNRWRPDV\RQRUDQÕQÕHWNLOH\HQLNL
|QHPOLIDNW|UROGX÷XWHFUEHHGLOPLúWLU)DNW|UOHUGHQELULWHVWOHUGHNXOODQÕODQWHVWDUD
FÕQÕQQLWHOL÷LYHNDOLWHVLGL÷HULLVHWHVWDUDFÕQÕNXOODQDQWHVWPKHQGLVLQLQDODQDYHWHVW
DUDFÕQDRODQ\DWNÕQOÕ÷ÕROPXúWXU
*HOHFHNG|QHPGHJHUoHNOHúHFHNoDOÕúPDODUÕQEDúÕQGDEXPHWRGXIDUNOÕSURMHOHUGH
X\JXODPDN JHOPHNWHGLU )DUNOÕ SURMHOHUGH X\JXODQÕUNHQ DúDPDODUOD LOJLOL PHWULNOHULQ
VLVWHPDWLNELUúHNLOGHDOÕQPDVÕWHVWRWRPDV\RQoDOÕúPDODUÕQGDJHUoHNOHúHQ\DWÕUÕPYHUL
PLQLQGDKDL\LKHVDSODQDELOPHVLQGHNXOODQÕODELOHFHNWLU
Kaynakça
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
E. Kahraman ve V. Ünal, *HUoHN=DPDQOÕ*|PO6LVWHPYH<D]ÕOÕP7DVDUÕPÕ¶QGD
$6(/6$1<DNODúÕPÕ,,,8OXVDO<D]ÕOÕP0KHQGLVOL÷L6HPSR]\XPX8<0630.
B. Stefan, R. Weber ve R. K. Keller, "Observations and lessons learned from automated testing." Proceedings of the 27th international conference on Software engineering.
ACM, 2005.
D. Harelve ve P. S.Thiagarajan, "Message sequence charts." UML for Real. Springer
US, 2003. pp. 77-105.
L. Zhao, "A new approach for software testability analysis." Proceedings of the 28th
international conference on Software engineering. ACM, 2006.
Y. Amannejad,V. Garousi, R. Irving, ve Z. Sahaf, “A Search-based Approach for CostEffective Software Test Automation Decision Support and an Industrial Case Study.”
et al. s.l.: co-located with the Sixth IEEE International Conference on Software Testing, Verification, and Validation (ICST), , April 2014, Vols. pp. 302-311.
TTworkbench, http://www.testingtech.com/products/ttworkbench.php, Last accessed:
May 2014.
Wireshark, www.wireshark.org, Last accessed: May 2014.
CANoe, http://vector.com/vi_canoe_en.html, Last accessed: May 2014.
MESSINA, http://www.berner-mattner.com/en/berner-mattner-home/products/messina/, Last accessed: May 2014.
Testing and Test Control Notation version 3(TTCN-3), http://www.ttcn-3.org/, Last
accessed: May 2014.
313
[11]
[12]
[13]
F. Zhou, L. Shuqin, ve H. Xia, "Development method of simulation and test system for
vehicle body CAN bus based on CANoe." Intelligent Control and Automation, 2008.
WCICA 2008. 7th World Congress on. IEEE, 2008.
M. Palmieri, "System Testing in a Simulated Environment." (2013).
J. Bach, "Exploratory testing explained." Online: http://www.satisfice.com/articles/etarticle.pdf, Last accessed: May 2014.
314