Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Aké bežné nástroje používajú na automatizáciu softvérových testov v oblasti vloženej technológie a používajú ich spoločnosti?

Nástroje používané na automatizáciu softvérových testov v zabudovaných systémoch sú rôzne, často v závislosti od konkrétneho hardvéru, architektúry softvéru a testovacích potrieb. Systémové spoločnosti absolútne používajú tieto nástroje, pretože manuálne testovanie vložených systémov je neuveriteľne časovo náročné a náchylné na chyby, najmä vzhľadom na často zložité interakcie hardvéru softvéru.

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.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené