V tej vadnici boste izvedeli
- Kaj so vgrajeni sistemi?
- Kaj je vgrajeno testiranje?
- Vrste testiranja vdelane programske opreme
- Razlika: vgrajeno testiranje in testiranje programske opreme
- Izzivi: testiranje vdelane programske opreme
Kaj so vgrajeni sistemi?
Vgrajeni sistemi so elektronsko krmiljene naprave, pri katerih sta programska in strojna oprema tesno povezani. Vgrajeni sistemi lahko vsebujejo različne računalniške naprave. To so osebni računalniki, ki so vgrajeni v druge naprave za delovanje funkcij, specifičnih za aplikacijo. Končni uporabnik se običajno sploh ne zaveda njihovega obstoja.
Vgrajeno testiranje
Vgrajeno testiranje je preskusni postopek za preverjanje funkcionalnih in nefunkcionalnih lastnosti programske in strojne opreme v vgrajenem sistemu ter zagotavljanje, da končni izdelek nima napak. Glavni namen vgrajenega testiranja je preveriti in preveriti, ali končni izdelek vdelane strojne in programske opreme izpolnjuje zahteve naročnika ali ne.
Preizkušanje vdelane programske opreme preverja in zagotavlja, da je zadevna programska oprema kakovostna in skladna z vsemi zahtevami, ki jih mora izpolnjevati. Preizkušanje vgrajene programske opreme je odličen pristop za zagotavljanje varnosti v kritičnih aplikacijah, kot so medicinska oprema, železnice, letalstvo, avtomobilska industrija itd. Strogo in skrbno preskušanje je ključnega pomena za izdajo certifikata za programsko opremo.
Kako izvesti testiranje vdelane programske opreme
Na splošno testirate iz štirih razlogov:
- Iskanje napak v programski opremi
- Pomaga zmanjšati tveganje tako za uporabnike kot za podjetje
- Zmanjšajte stroške razvoja in vzdrževanja
- Za izboljšanje učinkovitosti
Pri vgrajenem testiranju se izvajajo naslednje dejavnosti:
1. Programska oprema ima nekaj vhodov.
2. Izvede se del programske opreme.
3. Opaženo je stanje programske opreme in izhodi se preverijo glede pričakovanih lastnosti, na primer ali se izhod ujema s pričakovanim rezultatom, skladnost z zahtevami in odsotnost sistemskih zrušitev.
Vrste testiranja vdelane programske opreme
V osnovi obstaja pet stopenj testiranja, ki jih je mogoče uporabiti za vdelano programsko opremo
Testiranje programske enote
Modul enote je funkcija ali razred. Enotno testiranje izvaja razvojna skupina, predvsem razvijalec, in se običajno izvaja v modelu medsebojnih pregledov. Na podlagi specifikacije modula so razviti testni primeri.
Integracijsko preskušanje
Integracijsko testiranje lahko razvrstimo v dva segmenta:
- Preizkušanje integracije programske opreme
- Preizkušanje integracije programske in strojne opreme.
Na koncu se preizkusi interakcija domene strojne opreme in komponent programske opreme. To lahko vključuje preučevanje interakcije med vgrajenimi zunanjimi napravami in programsko opremo.
Razvoj vdelane programske opreme ima edinstveno značilnost, ki se osredotoča na dejansko okolje, v katerem se programska oprema izvaja, na splošno ustvarja vzporedno s programsko opremo. To povzroča nevšečnosti za testiranje, saj celovitega testiranja ni mogoče izvesti v simuliranem stanju.
Testiranje sistemske enote
Zdaj je modul, ki ga je treba preizkusiti, celoten okvir, ki ga sestavljajo celotna programska koda, poleg tega pa tudi vsi operacijski sistem v realnem času (RTOS) in deli, povezani s platformo, kot so prekinitve, mehanizmi za naloge, komunikacije itd. Protokol Point of Control ni več klic funkcije ali klica metode, temveč sporočilo, poslano / prejeto s pomočjo čakalnih vrst sporočil RTOS.
Opazujejo se sistemski viri, da se oceni sposobnost sistema za podporo izvajanju vdelanega sistema. Za ta vidik je testiranje s sivo škatlo prednostna metoda testiranja. Testiranje sistemskih enot je odvisno od organizacije ali dolžnost razvijalca ali posebne ekipe za sistemsko integracijo.
Testiranje sistemske integracije
Preizkušeni modul se začne od nabora komponent znotraj enega vozlišča. Točke nadzora in opazovanja (PCO) so mešanica omrežnih komunikacijskih protokolov in RTOS, kot so omrežna sporočila in dogodki RTOS. Poleg komponente lahko navidezni preizkuševalnik igra tudi vlogo vozlišča.
Preskus validacije sistema
Modul, ki ga je treba preizkusiti, je podsistem s popolno izvedbo ali celoten vdelani sistem. Cilj tega končnega testa je izpolniti zunanje funkcionalne zahteve subjekta. Upoštevajte, da je zunanja entiteta oseba ali naprava v telekomunikacijskem omrežju ali oboje.
Razlika: vgrajeno testiranje in testiranje programske opreme
Preizkušanje programske opreme | Vgrajeno testiranje |
---|---|
Testiranje programske opreme je povezano samo s programsko opremo. | Vdelano testiranje je povezano tako s programsko kot s strojno opremo. |
V povprečju je 90-odstotno testiranje na svetu zgolj ročno testiranje črne škatle. | Vgrajeno testiranje se izvaja na vgrajenih sistemih ali čipih, lahko pa je testiranje v črni ali beli škatli. |
Primarna področja testiranja so preverjanje grafičnega uporabniškega vmesnika, funkcionalnost, preverjanje veljavnosti in neka raven testiranja baze podatkov. | Primarna področja testiranja so vedenje strojne opreme za št. vloženih podatkov. |
Testiranje programske opreme se večinoma izvaja na odjemalsko-strežniških, spletnih in mobilnih aplikacijah. | Vgrajeno testiranje, ki se običajno izvaja na strojni opremi. |
npr. Google Mail, Yahoo Mail, aplikacije za Android. | npr. Stroji na področju zdravstvene oskrbe, Mikrokrmilniki, ki se uporabljajo v računalnikih. |
Izzivi: testiranje vdelane programske opreme
Nekaj izzivov, s katerimi se lahko soočimo med testiranjem vdelane programske opreme:
Odvisnost strojne opreme
Odvisnost strojne opreme je med glavnimi težavami, s katerimi se soočajo testiranja vdelane programske opreme zaradi omejenega dostopa do strojne opreme. Vendar emulatorji in simulatorji morda ne bodo natančno predstavljali vedenja dejanske naprave in bi lahko dali napačen občutek za delovanje sistema in uporabnost aplikacije.
Odprtokodna programska oprema
Večina vdelanih komponent programske opreme je odprtokodne narave, ni ustvarjena v podjetju in zanjo ni na voljo celotnega testa. Obstaja širok nabor preskusnih kombinacij in iz njih izhajajočih scenarijev.
Programska oprema in napake strojne opreme
Drug vidik je, ko se razvija programska oprema za sveže ustvarjeno strojno opremo, med tem postopkom pa je mogoče ugotoviti visoko razmerje napak strojne opreme. Najdena napaka le ni omejena na programsko opremo. Morda je povezano tudi s strojno opremo.
Ponovljive napake
V primeru vgrajenega sistema je napake težje reproducirati / poustvariti. To vsiljuje vdelani preskusni postopek, da ovrednoti vsak pojav okvare bistveno višje kot v običajnem primeru, razen da zbere toliko podatkov, kot bi bilo smiselno potrebno za spremembo sistema, da bi našel temelje napake.
Neprekinjene posodobitve programske opreme
Vgrajeni sistemi zahtevajo redne posodobitve programske opreme, kot so nadgradnja jedra, varnostni popravki, različni gonilniki naprav itd. Omejitve, ki jih prepozna vpliv posodobitev programske opreme, otežujejo prepoznavanje napak. Poleg tega povečuje pomen postopka gradnje in uvajanja.
Povzetek
Pri preizkušanju vdelane programske opreme je nekaj težav, kar otežuje kot redno preskušanje programske opreme. Najbolj temeljno vprašanje je tesno zanašanje na strojno okolje, ki je pripravljeno hkrati s programsko opremo in je redno potrebno za zanesljivo preskušanje programske opreme. Včasih je težko preizkusiti programsko opremo brez orodij po meri, zaradi česar je osredotočanje na testiranje v poznih fazah izjemno vabljivo.
Ena najpomembnejših stvari je, da bi morali razmisliti o tem, da bi se morali pogosto odločiti za avtomatizirano testiranje programske opreme. Vgrajeno avtomatizirano preskušanje je hitrejši postopek, ki bi trajal nekaj ur in na ta način se reši težava z vašo programsko opremo.