Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Tu je rozdelenie bežných kategórií a príkladov nástrojov:
1. Testované rámce: Poskytujú štruktúru a organizáciu pre automatizované testy.
* Test Google (GTEST): Široko používaný rámec testovania C ++, ktorý je známy pre jeho jednoduchosť a rozšíriteľnosť. Bežne sa používajú v zabudovaných projektoch, ktoré používajú C ++.
* Unity: Ľahký rámec testovania jednotiek v priebehu platformy vhodný pre projekty C a C ++. Populárne v zabudovaných systémoch kvôli svojej malej stope.
* cputest: Ďalší rámec testovania jednotiek C ++ špeciálne navrhnutý pre zabudované systémy, zdôrazňujúc minimálne využitie zdrojov.
* cunit: Rámec testovania jednotiek pre C.
* TestComplete: Komerčný rámec, ktorý podporuje skriptovanie v rôznych jazykoch a môže automatizovať testy GUI (hoci menej časté priamo v systémoch s holým kovom)
2. Testovacie prostredia/bežci: Tieto riadia prevádzkovanie testovacích apartmánov a vykazovanie výsledkov.
* Mnoho IDE obsahuje testovacie bežcov: Napríklad Eclipse CDT sa môže integrovať s rámcami, ako je napríklad Google Test.
* Vlastné skripty: Tímy vstavaných systémov často píšu svoje vlastné skripty (napr. Použitie Pythonu alebo Bash) často na organizovanie vykonávania testu, najmä pre testy integrácie a systémových testov.
* Systémy kontinuálnej integrácie/kontinuálneho nasadenia (CI/CD): Jenkins, Gitlab CI, Azure DevOps atď. Sa bežne používajú na automatizáciu procesu zostavenia a testovania, a to aj pre zabudované systémy. Tieto sa často integrujú s testovacími rámcami a bežcami.
3. Nástroje špecifické pre hardvér: Tieto nástroje často preklenujú medzeru medzi softvérom na automatizáciu testov a zabudovaným hardvérom.
* JTAG Debuggers: Nástroje, ako sú tie od Segger, Lauterbach alebo ARM, poskytujú rozhrania na ladenie a testovanie hardvéru na nízkej úrovni. Môžu tiež spustiť testy a zachytiť výsledky.
* v obvode (ICES): ICES umožňujú sofistikovanejšie testovacie scenáre ako JTAG, často vrátane schopností sledovania a emulácie v reálnom čase. Toto sú zvyčajne špičkové riešenia.
* Hardvér-in-the-loop (hil) simulátory: Sú to pokročilé systémy, ktoré simulujú vonkajšie prostredie zabudovaného systému, čo umožňuje dôkladné testovanie interakcie systému so skutočným svetom bez potreby fyzických komponentov alebo potenciálne nebezpečných situácií.
* Can/Lin/Ethernet Analyzátory: Tieto nástroje zachytávajú a analyzujú komunikáciu o automobilových a priemyselných autobusoch, ktoré sú rozhodujúce pre testovanie zabudovaných systémov, ktoré komunikujú cez tieto protokoly.
* osciloskop/logické analyzátory: Pre priame vyšetrenie hardvérového signálu.
4. Nástroje na analýzu pokrytia testu: Tieto merajú, ako dôkladne pokrýva testovací balík kód.
* gcov (gcc): Vstavaný nástroj v kompilátore GCC, ktorý poskytuje informácie o pokrytí kódu.
* komerčné nástroje: Sofistikovanejšie nástroje poskytujú podrobné správy o pokrytí vrátane pokrytia pobočky, pokrytia stavu a MC/DC (upravené podmienky/pokrytie rozhodovania), ktoré je často nariadené bezpečnostnými normami (napríklad ISO 26262).
5. Nástroje na správu testov: Pomáhajú organizovať a spravovať proces testovania.
* Jira, Azure DevOps, TestRail: Toto sú bežné nástroje na riadenie testovacích prípadov, sledovanie chýb a podávanie správ o výsledkoch testov.
Ktoré nástroje spoločnosti používajú: Voľba do veľkej miery závisí od faktorov, ako napríklad:
* rozpočet: Nástroje s otvoreným zdrojom, ako je test Google a jednota, sú atraktívne z nákladových dôvodov. Komerčné nástroje ponúkajú pokročilejšie funkcie, ale prichádzajú s cenovkou.
* Projekt Kolmacita: Jednoduché projekty môžu potrebovať iba rámec testovania jednotiek, zatiaľ čo komplexné systémy budú vyžadovať rozsiahlejšiu sadu nástrojov.
* Bezpečnostné normy: Bezpečnostné kritické aplikácie (Automotive, Aerospace, Medical) si často vyžadujú použitie nástrojov, ktoré sú v súlade so špecifickými normami a ponúkajú pokročilú analýzu pokrytia.
* Hardvérová platforma: Dostupné rozhrania ladenia a hardvér ovplyvnia výber nástrojov.
* Tím Expertment: Zručnosti inžinierskeho tímu určia uskutočniteľnosť prijímania a používania konkrétnych nástrojov.
Stručne povedané, spoločnosti Systémové spoločnosti zapojené do rozvoja zabudovaných systémov využívajú širokú škálu nástrojov, ktoré často kombinujú otvorené a komerčné možnosti na vybudovanie testovacej infraštruktúry prispôsobenej prispôsobenej na mieru, ktorá vyhovuje ich špecifickým potrebám a požiadavkám projektu. Trend je smerom k zvýšenej automatizácii a integrácii s potrubím CI/CD.