abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:11 | Zajímavý software

    Vývojáři dekompilátoru rev.ng otevřeli jeho backend revng-c. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | Komunita

    Poněvadž Redis už není svobodný, konsorcium Linux Foundation a Amazon Web Services (AWS), Google Cloud, Oracle, Ericsson a Snap Inc. společně představili svobodný fork Redisu s názvem Valkey.

    Ladislav Hagara | Komentářů: 1
    včera 18:55 | IT novinky

    Sam Bankman-Fried, zakladatel zkrachovalé kryptoměnové burzy FTX, byl dnes odsouzen k 25 letům vězení [Yahoo Finance].

    Ladislav Hagara | Komentářů: 3
    včera 18:33 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Byla vydána nová verze 2.53.18.2 svobodného multiplatformního balíku internetových aplikací SeaMonkey (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 00:22 | Zajímavý článek

    Na blogu programovacího jazyka Swift byl publikován příspěvek Psaní aplikací pro GNOME v programovacím jazyce Swift. Používá se Adwaita pro Swift.

    Ladislav Hagara | Komentářů: 7
    27.3. 17:44 | Zajímavý software

    egui je GUI knihovna pro programovací jazyk Rust běžící na webu i nativně. Vydána byla verze 0.27.0.

    Ladislav Hagara | Komentářů: 0
    27.3. 16:22 | Nová verze

    Byla vydána nová verze 6.1 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.13. Thunderbird na verzi 115.9.0.

    Ladislav Hagara | Komentářů: 0
    27.3. 14:44 | IT novinky

    Linka STOPonline.cz v roce 2023 přijala 3700 hlášení závadného obsahu na internetu, 22 bylo předáno PČR, 23 bylo předáno ISP a 944 závadových domén zobrazujících dětskou nahotu či pornografii bylo nahráno do mezinárodního systému ICCAM, který je spravován asociací INHOPE.

    Ladislav Hagara | Komentářů: 6
    26.3. 20:44 | Zajímavý článek

    Byla publikována podrobná analýza v upstreamu již opravené bezpečnostní chyby CVE-2024-1086 v Linuxu v nf_tables.

    Ladislav Hagara | Komentářů: 0
    Steam
     (24%)
     (29%)
     (14%)
     (9%)
     (24%)
    Celkem 384 hlasů
     Komentářů: 10, poslední včera 17:31
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    12.2.2011 20:19 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Unit Tests
    Nejlepší definice unit testu, kterou jsem kdy četl, zní (přibližně): unit test je test, který doběhne do 0,1 vteřiny a ukáže přesně na místo, kde je problém. Tohle rozdělení na jednotkové testy, integrační testy a čert ví jaké testy nedává pro začátečníky žádný smysl, zvlášť když se píšou úplně stejně a s pomocí stejných nástrojů.

    Pro tazatele: Asi nejlepší knížka o testování, kterou jsem četl (i když jsem jich moc nečetl), nemá vůbec testování v názvu (Working Effectively with Legacy Code, vyšlo i v češtině, zběžně jsem prolítl a překlad se mi nezdál špatný), i když o ničem jiném než testování není. Nejsem si jistý, ale ta definice unit testu výše myslím pochází z téhle knížky.

    Ale spíš než čtení bych doporučil: Drapněte nějaký testovací framework a zkuste napsat test, který něco ověří. Nemusí ověřit hned všechno, podstatné je, abyste zjistil, že na tom nic není. Až tohle zjistíte, začnete přemýšlet, jak strukturovat kód tak, aby byl testovatelný (a Working Effectively with Legacy Code je celá o tom, jak z netestovaného a netestovatelného kódu udělat testovatelný a testovaný). Ledacos mimochodem zvládnou vyřešit mockovací frameworky. (Příklad z Javy: potřebujete otestovat chování metody, která se řídí podle nějaké systémové proměnné čtené přes System.getProperty? Okay, tu metodu nemusíte vůbec měnit, můžete si nadiktovat posloupnost návratových hodnot té metody System.getProperty a nechat bajtkódovou magii mockovacího frameworku, ať se postará.)

    Pokud používáte Javu, můžu doporučit kombinaci JUnit+Mockito+PowerMock, pokud Céčko, dobře vypadá Cmockery od Googlu (ale nezkoušel jsem), pokud něco jiného, možná poradí někdo jiný.

    Až to zmáknete, tak časem zjistíte, že by bylo dobré pouštět testy automaticky při každém commitu do repozitáře a nainstalujete si nějaký continuous integration server (z javovského světa můžu doporučit TeamCity, které je do určitého omezení zdarma, ale není open-source, příp. je docela oblíbený Hudson, jehož nekorporátní verze se teď kvůli nějakým rozmíškám v Oraclu jmenuje Jenkins; Céčkaři tuším používají Buildbot, ale neznám).

    Ještě později zjistíte, že některé testy běží výrazně pomaleji než jiné (typicky ty, které sahají na disk nebo do databáze, komunikují přes síť apod.) a že by nebyl špatný nápad pouštět je méně často, třeba v noci. Takové testy přesunete do vedlejšího adresáře, nazvete je integrační testy, a to, co zůstane v původním adresáři, budou unit testy. Gratuluju, jste na vyšším levelu a můžete poučovat začátečníky, jako jste byl sám. Konec dobrý, všechno dobré.

    Poznámka pro odborněji zaměřené: V textu výše jsem úplně ignoroval "mimofunkční" testy (nevím, jak to líp nazvat, možná "testy mimofunkčních požadavků"?), a to prostě proto, že by to byl ještě další rozměr bordelu navíc.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.