Úvod do nástrojov na pokrytie kódu
Nástroje na pokrytie kódu sú mierkou toho, koľko vyhlásení, blokov alebo riadkov vášho kódu sa testuje pomocou automatických testov vo vašej súprave. Kvalita vášho úsilia v oblasti QA je zásadným ukazovateľom porozumenia. Pokrytie kódu vám teda ukazuje, že automatizované testy nepokrývajú väčšinu vašej aplikácie, a preto sú náchylné na chyby. Pokrytie kódu sa zvyčajne počíta v percentách - bližšie ako 100%, tým lepšie. A ak sa snažíte dokázať svoje vyššie pokrytie kontrol, sú užitočné nástroje na pokrytie softvéru.
V priebehu rokov bolo vytvorených veľa nástrojov na uspokojenie potrieb pokrytia kódu akéhokoľvek projektu vývoja softvéru, komerčného aj otvoreného zdroja. Či už má jeden vývojár vedľajší projekt doma alebo spoločnosť s veľkým tímom DevOps, alebo má začiatok - po kontrole kvality existuje nástroj na pokrytie kódu pre každú požiadavku.
K dispozícii sú nástroje na pokrytie kódu pre mnoho programovacích jazykov a veľa populárnych nástrojov kontroly kvality. Sú integrované so stavebnými nástrojmi, ako sú nástroje Maven, Ant a Gradle CI, ako sú Jenkins, nástroje na riadenie projektov, ako je Jira, a množstvom ďalších nástrojov na vývoj aplikácií.
6 hlavných nástrojov na pokrytie kódu
Tu je niekoľko nástrojov na pokrytie kódu, ktoré sú podrobne vysvetlené nižšie:
1. EMMA
- Emma bol prepustený v roku 2005 a vyvíjal ho Vlad Roubtsov. Emma je prvá. jedno zo zariadení na ochranu softvéru, najstaršie a najbežnejšie. Vyhľadajte nástroje na pokrytie aplikácií v službách Google a zobrazí sa EMMA.
- Podporuje tak veľa druhov pokrytia, ako je metóda, trieda, blok a líniové skúšanie EMMA aplikácií Java. Je možné spustiť EMMA za chodu alebo offline. EMMA nie je aktívne udržiavaná a nepodporuje aktuálnu verziu Java napriek svojej popularite a vyzretej množine funkcií.
- Stále sa však stále používa a jej odkaz pokračuje v mnohých nástrojoch a výrobkoch, ktoré inšpiroval.
2. Hansel
- Hansel je rozšírenie JUnit, ktoré pridáva kód do testovacej sady. Väčšina zdrojového kódu spoločnosti Hansel pochádza z vyššie uvedeného Gretel, ale Hansel je kompatibilný s JUnit, čo Gretel nemá.
- Hansel ponecháva vývojárom vedomosti o tom, koľko kódu test pokrýva nad rámec bežného nástroja na pokrytie kódu. Programovacím jazykom Hansela je java a bol vyvinutý Niklasom Mehnerom.
3. PITest
- V prípade Java a JVM vykonáva PITest mutačné testy, ktoré sú deklarované ako „pokrytie štandardným zlatým štandardom. Pre každý riadok, vyhlásenie alebo vetvu kódu je väčšina nástrojov pre kódy pokrytia uvedená v tomto dokumente testovacím pokrytím.
- To znamená, že môžu označovať iba to, ktoré kódové riadky neboli testované. Testy mutácií vám však môžu nielen ukázať, koľko kódových riadkov sa testuje, ale aj to, aké sú vaše automatické testy chýb. PITest to urobí zmenou kódu a vykonaním modifikovaných testov jednotky kódu. Ak po zmene kódu zlyhá test jednotky, test je užitočný.
- Ak však test jednotky nie je neúspešný, zmena kódu sa nezistila, a preto sa musí zmeniť. PItest je integrovaný a opensource s Eclipse, IntelliJ a Maven. Programovacím jazykom programu PItest je Java a vyvinutý spoločnosťou Henry Coles.
4. Serenity BDD
- Serenity BDD je interaktívna metóda pre akceptačné testovanie a tiež kódy ako jedna z jej funkcií. Umožňuje vám písať históriu a eposy pre každý priebeh správania a monitorovať testy pokrytia pre každý príbeh a epos.
- Výsledok je omnoho užitočnejší ako zistenie, koľko riadkov kódu je pokrytých, pretože pokrytie kódu je mapované na vaše užívateľské správanie. Integruje tradičné stavebné nástroje, ako aj ďalší softvér QA ako Sauce Labs, Appium, BrowserStack a ešte viac ako Jira a Jenkins.
- Serenity BDD poskytuje integrovanú testovaciu sadu založenú na seléne. Ak plánujete používať celý balík, softvérové pokrytie je bonus. Programovacím jazykom Serenity BDD je Groovy a java a organizáciou Serenity BDD je konzultácia Wakaleo.
5. Testovací CTC ++
- Nástroj na pokrytie kódu C +, C #, Java a C je CTC ++, ako naznačuje jeho názov.
- Zahŕňa riadok, príkaz, funkciu, rozhodnutie, modifikované pokrytie podmienky, viac podmienok / rozhodnutie (MC / DC) a podmienky. Je to zrelý výrobok, ktorý sa používa už viac ako 25 rokov.
- Používa sa v letectve, doprave a zdravotníctve, a to kvôli jeho skorému začiatku a obchodným prvkom. Je ľahké sa prispôsobiť rôznym potrebám a môže sa používať s doplnkom hostiteľ-cieľ vo vstavaných aplikáciách. A programovacím jazykom zariadenia Testwell CTC ++ sú C #, Java a C.
6. Parasoft Jtest
- Parasoft ponúka celý rad testovacích prístrojov pre rôzne aplikácie, ako je testovanie záťaže, testovanie bezpečnosti, atď. Jtest robí pokrytie kódu riadkom, blokom, vetou, MC / DC, smerom a vetvou / rozhodnutím.
- Toto je vynikajúca voľba, keď sa zaujímate o presadzovanie a ochranu softvéru. Ako jeden zo starších nástrojov je vyspelý a integruje všetky kľúčové nástroje, ako sú stavebné nástroje, IDE a nástroje CI. Táto správa podáva informácie o širokom spektre faktorov, ako sú chyby, neefektívnosť a porušovanie pravidiel.
- Spôsob, akým je doručený, je však skôr uzavretý a musíte sa zaregistrovať, aby ste si mohli prečítať dokumenty alebo lepšie porozumieť službe.
Odporúčané články
Toto je príručka k nástrojom Coverage Tools. Tu diskutujeme úvod a nástroje na pokrytie 6 najlepších kódov spolu s podrobným vysvetlením. Ďalšie informácie nájdete aj v nasledujúcich článkoch -
- Nástroje na testovanie GUI
- Nástroje IPS
- Java Deployment Tools
- Pokrytie testu
- Ako vytvoriť faktor v R s výhodami