Mis on sisseehitatud testimine tarkvara testimises?

โšก Nutikas kokkuvรตte

Manussรผsteemide testimine kontrollib tarkvara ja riistvara funktsionaalset ja mittefunktsionaalset kรคitumist koos, sest manussรผsteemides on need kaks tihedalt seotud ja kumbagi ei saa eraldi korralikult valideerida.

  • ๐Ÿ”˜ Tihe รผhendus: Riistvara ehitatakse tarkvaraga paralleelselt, seega saabub tegelik testikeskkond sageli hilja.
  • โ˜‘๏ธ Viis taset: Tarkvaraรผksus, integratsioon, sรผsteemiรผksus, sรผsteemiintegratsioon ja sรผsteemi valideerimistestid on kรตik suunatud erinevatele moodulipiiridele.
  • โœ… Ohutuspanused: Meditsiini-, raudtee-, lennundus- ja autotรถรถstuse tooted vajavad enne sertifikaadi andmist ranget dokumenteeritud testimist.
  • ๐Ÿงช Halli kasti eelistus: Sรผsteemiรผksuste testimine jรคlgib sisemisi ressursse ja RTOS-sรตnumeid, seega sobivad halli kasti meetodid selleks kรตige paremini.
  • ๐Ÿ› ๏ธ Peamised takistused: Piiratud juurdepรครคs riistvarale, avatud lรคhtekoodiga komponendid, segatud tarkvara- ja riistvaradefektid ning defektid, mida ei ole vรตimalik reprodutseerida.

Tarkvara ja riistvara manussรผsteemide testimine manussรผsteemides

Mis on manussรผsteemid?

Manustatud sรผsteemid on elektrooniliselt juhitavad seadmed, kus tarkvara ja riistvara on tihedalt seotud. Manussรผsteemid vรตivad sisaldada mitmesuguseid arvutusseadmeid. Need on arvutid, mis on integreeritud teistesse seadmetesse rakenduspรตhiste funktsioonide tรคitmiseks. Lรตppkasutaja tavaliselt isegi ei tea nende olemasolust.

Manustatud testimine

Sisseehitatud testimine on testimisprotsess funktsionaalsuse ja mittefunktsionaalne nii tark- kui ka riistvara atribuudid manussรผsteemis ning lรตpptoote defektideta olemise tagamine. Manussรผsteemide testimise peamine eesmรคrk on kontrollida ja valideerida, kas manussรผsteemi riist- ja tarkvara lรตpptoode vastab kliendi nรตuetele vรตi mitte.

Manussรผsteemide tarkvara testimine kontrollib ja tagab, et asjaomane tarkvara on kvaliteetne ja vastab kรตigile nรตuetele. Manussรผsteemide tarkvara testimine on suurepรคrane lรคhenemisviis turvalisuse tagamiseks kriitilistes rakendustes, nagu meditsiiniseadmed, raudteed, lennundus, sรตidukitรถรถstus jne. Tarkvara sertifitseerimise saamiseks on รผlioluline range ja hoolikas testimine.

Manustarkvara testimise viis

รœldiselt testite neljal pรตhjusel:

  • Tarkvaravigade leidmiseks
  • Aitab vรคhendada riske nii kasutajatele kui ka ettevรตttele
  • Vรคhendage arendus- ja hoolduskulusid
  • Et parandada jรตudlust

Sisseehitatud testimisel tehakse jรคrgmisi tegevusi:

  1. Tarkvaral on mรตned sisendid.
  2. Tarkvara osa kรคivitatakse.
  3. Tarkvara olekut jรคlgitakse ja vรคljundeid kontrollitakse eeldatavate omaduste osas, nรคiteks kas vรคljund vastab oodatavale tulemusele, vastab nรตuetele ja kas sรผsteemi krahhe ei esine.

Manustatud tarkvara testimise tรผรผbid

Pรตhimรตtteliselt on manussรผsteemidele rakendatav viis testimise taset.

Tarkvaraรผksuste testimine

รœhikmoodul on kas funktsioon vรตi klass. รœhiktestimist teostab arendusmeeskond, peamiselt arendaja, ja see toimub tavaliselt vastastikuse eksperdihinnangu mudeli alusel. Testjuhtumid tรถรถtatakse vรคlja mooduli spetsifikatsiooni pรตhjal.

Integratsiooni testimine

Integratsiooni testimine vรตib jagada kahte segmenti:

  • Tarkvara integratsiooni testimine
  • Tarkvara/riistvara integratsiooni testimine

Lรตpuks testitakse riist- ja tarkvarakomponentide koostoimet. See vรตib hรตlmata sisseehitatud vรคlisseadmete ja tarkvara koostoime uurimist.

Sisseehitatud tarkvara arendusel on ainulaadne omadus: tegelik keskkond, milles tarkvara tรถรถtab, luuakse รผldiselt paralleelselt tarkvaraga. See tekitab testimisel ebamugavusi, kuna pรตhjalikku testimist ei saa simuleeritud tingimustes lรคbi viia.

Sรผsteemiรผksuse testimine

Nรผรผd on testitav moodul tรคielik raamistik, mis koosneb kogu tarkvarakoodist ja kรตigest muust. reaalajas operatsioonisรผsteem (RTOS) ja platvormiga seotud elemendid, nagu katkestused, รผlesannete mehhanismid, kommunikatsioon jne. Juhtimispunkti protokoll ei ole enam funktsiooni vรตi meetodi kutsumine, vaid pigem RTOS-i sรตnumijรคrjekordade abil saadetud vรตi vastuvรตetud sรตnum.

Sรผsteemi ressursse jรคlgitakse, et hinnata sรผsteemi vรตimet toetada manustatud sรผsteemi tรคitmist. Selle aspekti jaoks halli kasti testimine on eelistatud testimismeetod. Sรตltuvalt organisatsioonist on sรผsteemiรผksuste testimine kas arendaja vรตi spetsiaalse sรผsteemiintegratsiooni meeskonna kohustus.

Sรผsteemiintegratsiooni testimine

Testitav moodul algab รผhe sรตlme komponentide komplektist. Juhtimis- ja vaatluspunktid (PCO-d) on segu vรตrguga seotud sideprotokollidest ja RTOS-sรผndmustest, nรคiteks vรตrgusรตnumitest. Lisaks komponendile vรตib virtuaalne testija tรคita ka sรตlme rolli.

Sรผsteemi valideerimise testimine

Testitav moodul on tรคielikult implementeeritud alamsรผsteem vรตi tรคielik manussรผsteem. Selle lรตpptesti eesmรคrk on tรคita vรคlise รผksuse funktsionaalseid nรตudeid. Pange tรคhele, et vรคline รผksus vรตib olla inimene vรตi telekommunikatsioonivรตrgu seade vรตi mรตlemad.

Erinevus: manustatud testimine ja tarkvara testimine

Allolev tabel vรตrdleb manussรผsteemide ja tavapรคraste testide sรผsteeme. tarkvara testimine.

Tarkvara testimine Manustatud testimine
Tarkvara testimine on seotud ainult tarkvaraga. Manustatud testimine on seotud nii tarkvara kui ka riistvaraga.
Keskmiselt 90% maailmas tehtavast testimisest on puhtalt kรคsitsi tehtav. musta kasti testimine. Manussรผsteemide testimine toimub manussรผsteemidel vรตi kiipidel ning see vรตib olla musta kasti vรตi valge kasti testimine.
Peamised testimisvaldkonnad on GUI kontrollid, funktsionaalsus, valideerimine ja teatud tasemel andmebaasi testimine. Peamised testimisvaldkonnad on riistvara kรคitumine sellele antud sisendite arvu korral.
Tarkvara testimine toimub peamiselt klient-server-, veebi- ja mobiilipรตhistes rakendustes. Manustatud sรผsteemi testimine toimub รผldiselt riistvaral.
nt Google Mail, Yahoo Mail, Android rakendusi. nt tervishoiuvaldkonna masinad, arvutites kasutatavad mikrokontrollerid.

Vรคljakutsed: manustatud tarkvara testimine

Mรตned vรคljakutsed, millega manussรผsteemi tarkvara testimisel kokku puutuda vรตib:

Riistvara sรตltuvus

Riistvarasรตltuvus on รผks peamisi raskusi, millega manussรผsteemide tarkvara testimisel kokku puututakse, kuna riistvarale on juurdepรครคs piiratud. Emulaatorid ja simulaatorid ei pruugi aga tรคpselt esindada tegeliku seadme kรคitumist ning vรตivad anda vale ettekujutuse sรผsteemi jรตudlusest ja rakenduse kasutatavusest.

Avatud lรคhtekoodiga tarkvara

Enamik manussรผsteemide tarkvarakomponente on oma olemuselt avatud lรคhtekoodiga, neid ei looda ettevรตttesiseselt ja nende jaoks puudub tรคielik testimiskomplekt. Saadaval on lai valik testikombinatsioone ja neist tulenevaid stsenaariume.

Tarkvara vs riistvara defektid

Teine aspekt on tarkvara arendamine vรคrskelt loodud riistvarale. Selle protsessi kรคigus saab tuvastada suure hulga riistvaravigu. Leitud defekt ei piirdu ainult tarkvaraga. See vรตib olla seotud ka riistvaraga.

Reprodutseeritavad defektid

Manussรผsteemide puhul on defekte raskem reprodutseerida vรตi taastada. See sunnib manussรผsteemide testimise protseduuri hindama iga defekti esinemist oluliselt kรตrgemalt kui standardjuhul ja koguma nii palju andmeid, kui on mรตistlikult vaja defekti algpรตhjuse leidmiseks.

Pidevad tarkvarauuendused

Manussรผsteemid vajavad regulaarseid tarkvarauuendusi, nรคiteks kerneli tรคiendusi, turvaparandusi, erinevaid seadmedraivereid jne. Tarkvarauuendustega seotud piirangud raskendavad vigade tuvastamist. Lisaks suurendab see ehitus- ja juurutamisprotseduuri olulisust.

KKK

Tรผรผpilised virnad รผhendavad staatilise analรผรผsi, C ja C-tรผรผpi รผhiktestide rakmed. C++, bussianalรผsaatorid, trace-vรตimelised silurid ja riistvaralised ahelaplatvormid, lisaks testi automatiseerimine seega regressioonikomplektid tรถรถtavad jรคrelevalveta.

Riistvaraline ahelas (HIL) kรคitab reaalsel kontrolleril reaalset pรผsivara, samal ajal kui simulaator annab signaale, mida รผmbritsev tehas toodaks, harjutades rikkeid, mida fรผรผsiliselt luua ei ole ohutu.

Simulaator modelleerib kรคitumist ja kรคivitab hosti ehituse; emulaator taastoodab sihtkรคskude komplekti, et kรคivitada tegelik binaarfail. Kumbki ei taastooda analoog- ja ajastusefekte tรคpselt.

IEC 61508 on รผldine funktsionaalse ohutuse standard. Sektoriversioonide hulka kuuluvad ISO 26262 maanteesรตidukite, DO-178C รตhusรตidukite tarkvara, IEC 62304 meditsiiniseadmete ja EN 50128 raudtee juhtimise jaoks.

Tehisintellekti mudelid seavad suure palgi ja tracTestibaasi tekitatud mahud, klasterdab korduvaid rikkeid ja jรคrjestab, milliseid regressiooniteste nappidel riistvaradel esimesena kรคivitada. Ohutuse hindamine jรครคb inseneri otsustada.

GitHubi koopia mustandite testimisjuhtmed ja -kaablid C vรตi C++ mooduleid ja kiirendab korduvat pilkamist. Registri kรคitumist ja ajastuspiiranguid, mida see varem ei nรคinud, tuleb endiselt kontrollida.

Halvima stsenaariumi tรคitmisaja analรผรผsi abil, instrumenteeritud trace sihtmรคrgil ja stress tรถรถtab tippkoormusel. Tรคhtaegade mรถรถdalaskmisi ja katkestuste latentsust mรตรตdetakse reaalsel riistvaral, mida hosti versioonid ei suuda taasesitada.

C-kirja lugemine ja C++, oskus tรถรถtada skeemide ja loogikaanalรผsaatoritega, tuttav RTOS-i kontseptsioonide ja siiniprotokollidega ning skriptimine. Seotud tรถรถd, nรคiteks IoT testimine joonistab samale alusele.

Vรตta see postitus kokku jรคrgmiselt: