abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 17:11 | Nová verze

    Byl vydán Debian 13.1, tj. první opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.12, tj. dvanáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    včera 23:44 | IT novinky

    Evropská komise potrestala Google ze skupiny Alphabet pokutou 2,95 miliardy eur (71,9 miliardy Kč) za porušení antimonopolní legislativy. Podle EK, která mimo jiné plní funkci antimonopolního orgánu EU, se Google dopustil protisoutěžních praktik ve svém reklamním byznysu. Google v reakci uvedl, že rozhodnutí považuje za chybné a hodlá se proti němu odvolat. EK ve věci rozhodovala na základě stížnosti Evropské rady vydavatelů. Podle

    … více »
    Ladislav Hagara | Komentářů: 7
    včera 23:11 | Komunita

    Podpora 32bitového Firefoxu pro Linux skončí v roce 2026. Poslední podporované 32bitové verze budou Firefox 144 a Firefox 140 s rozšířenou podporou, jehož podpora skončí v září 2026.

    Ladislav Hagara | Komentářů: 2
    včera 19:33 | IT novinky

    Společnost Raspberry Pi nově nabízí Raspberry Pi SSD s kapacitou 1 TB za 70 dolarů.

    Ladislav Hagara | Komentářů: 7
    včera 15:55 | Zajímavý software

    Microsoft BASIC pro mikroprocesor 6502 byl uvolněn jako open source. Zdrojový kód je k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 5
    včera 15:33 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) se připojil k dokumentu „A Shared Vision of Software Bill of Materials (SBOM) for Cybersecurity“, který vydala americká Agentura pro kybernetickou a infrastrukturní bezpečnost (CISA) s Národní bezpečnostní agenturou (NSA), spolu s dalšími mezinárodními partnery. Dokument vznikl v rámci globálního expertního fóra pro SBOM, které má za cíl motivovat k širšímu využívání … více »

    Ladislav Hagara | Komentářů: 3
    4.9. 21:22 | IT novinky

    Švýcarská AI centra EPFL, ETH Zurich a CSCS představila otevřený vícejazyčný velký jazykový model (LLM) s názvem Apertus. Vyzkoušet lze na stránce Public AI Inference Utility.

    Ladislav Hagara | Komentářů: 24
    4.9. 17:22 | Nová verze

    Byl vydán Linux Mint 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 1
    4.9. 12:55 | IT novinky

    Čínská společnost Tencent uvolnila svůj AI model HunyuanWorld-Voyager pro generování videí 3D světů z jednoho obrázku a určené trajektorie kamery. Licence ale nedovoluje jeho používání na území Evropské unie, Spojeného království a Jižní Koreje.

    Ladislav Hagara | Komentářů: 1
    4.9. 12:11 | Komunita

    Blender Studio se spojilo s kapelou OK Go a výsledkem je videoklip k písni Impulse Purchase. Stejně jako samotný 3D software Blender je i ve videoklipu použitý animovaný chlápek open source. Kdokoli si jej může stáhnout a upravovat.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (3%)
     (2%)
    Celkem 149 hlasů
     Komentářů: 11, poslední 4.9. 16:12
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    27.8.2009 13:02 Tomáš
    Rozbalit Rozbalit vše Re: Jednotkové testy času
    Nebylo by lepší používat anglický název unittest? Programátorům to řekne víc.

    K tomu času: pokud se to nedá jednoduše oblafnout, tak to bych to řešil tak, že hodnotu zkontroluji jenom jestli tam něco je a nechám to být. Případně v testu se někdy dá načíst stejná hodnota nezávisle, a pak se dá porovnat. Má to výhodu, že člověk zjistí, co mu tam vlastně chodí (ono se to liší podle platformy a člověk pak nevěřícně kouká, co to tam je za blbost).
    zoul avatar 27.8.2009 13:51 zoul | skóre: 43 | blog: | Boskovice
    Rozbalit Rozbalit vše Re: Jednotkové testy času
    Když je k dispozici pěkný český překlad, dávám mu přednost. Jednak se většinou líp skloňuje a jednak výsledný text nevypadá jako výstup z automatického překladače :) Kontrolovat jen jestli funkce vůbec něco vrací je blbý, protože alespoň v tom mém případě je podrobná kontrola parsovaného data hlavní pointa testu. Nezávislé načtení hodnoty (tj. nějaké testovací rozhraní nezávislé na zbytku systému, globálním stavu) je samozřejmě ideální, to se shodneme. Přesně to ale v podstatě dělá právě Test::MockTime.
    Marek Bernát avatar 27.8.2009 20:52 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Jednotkové testy času

    Sorry, že si musím zasa rýpnuť, ale mne to práve ako z automatického prekladača pripadá. Vždy som unit testy bral tak, že slovo unit tam znamená najmenšia časť kódu, ktorá robí niečo užitočné v danom kontexte. Takže "testovanie častí" je podľa mňa oveľa lepší preklad. Jednotkový test znie skôr ako keby tam išlo o nejakú jednotku v zmysle čísla, alebo o fyzikálne jednotky. Málokto si slovo jednotka predstaví ako časť celku.

    A btw, ten tvoj problém som absolútne nepochopil, zbytočne v blogu šetríš slovami. Mohol by si to vysvetliť trochu lepšie, že čo sa snažíš dosiahnuť, a prečo by to v iných jazykoch nefungovalo?

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    zoul avatar 27.8.2009 22:01 zoul | skóre: 43 | blog: | Boskovice
    Rozbalit Rozbalit vše Re: Jednotkové testy času
    (1) Jde o zavedený překlad, to jsem si nevymyslel. (2) „Unit“ se jako „jednotka“ překládá i v jiných kontextech, takže je to dobré dodržet i tady. (3) Výraz „jednotka“ mi jako označení základních stavebních bloků nepřipadne zlý. „Testování částí“ by klidně mohlo být testování složitejších částí systému, například autentizačního systému a podobně. Ve výrazu „unit“ jde právě o tu nedělitelnost.

    V blogu šetřím, protože ho používám především jako poznámkový blok. Na víc nemám čas ani ambice. Pokud se někdo s problémem času v jednotkových testech setkal, bude vědět, o čem mluvím, takže článek přeci jen není pouze pro mě. (Doufám.)

    Jeden ze základních problémů jednotkových testů je izolace testovaných komponent od zbytku systému. Pokud se kus kódu nedá rozumně izolovat, nedá se rozumně testovat. Ideální je, když může člověk testovanou komponentu samostatně zapojit v „laboratorním“ prostředí, kde má všechny vstupy pod kontrolou. Test je pak deterministický a jednoduchý. Pokud komponenta pracuje s reálným časem, závisí na nějakém globálním stavu systému, a tahle závislost komplikuje testování.

    Jedna možnost, jak tuhle závislost vyřešit, je připsat testovací rozhraní. Nějakou „diagnostickou konzoli“, která umožní nahradit reálný čas laboratorním časem, na kterém se dají dobře odzkoušet všechny hraniční případy. Pokud tomu dobře rozumím, ve statických jazycích se to často řeší pomocí inversion of control. Pokud je jazyk dynamičtější, nabízí se jednodušší řešení, kterému se říká monkey patching – člověk prostě nahradí část testovaného kódu nebo runtimu svým vlastním kódem, který poslouží jako potřebné testovací rozhraní.

    V postu jsem chtěl především upozornit na šikovný perlový modul, který umožňuje v testech nafixlovat reálný čas. Pokud někdo pracuje v Perlu a potřebuje testovat nějaký kód, který si hraje s časem, možná mu přijde vhod. Na ukázce zdrojáku je pak vidět, jak jednoduše se dá takový monkey patching provést.
    Marek Bernát avatar 28.8.2009 00:44 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Jednotkové testy času

    Ok, to znie vcelku rozumne. Ale ja, ak dovolíš, sa budem držať názvu unit test :-)

    Jj, viem presne o čo ide v unit testoch, len som nepochopil ten tvoj problém kvôli tomu, že sám už pracujem prakticky výlučne v dynamických jazykoch a tam je to, ako hovoríš, triviálne, takže ani nemá cenu to rozoberať :-) A ešte jednoduchšie je to, ak človek pracuje vždy s REPLom a len si naťahuje skompilovaný kód (bežná práca s Lispom cez SLIME), a ešte oveľa viac v Squeaku, kde nič ako program ani neexistuje, ale všetok kód stále beží -- to je tá tvoja diagnostická konzola, len dotiahnutá ešte oveľa ďalej.

    V statických jazykoch je to holt ťažké a človek si bez nejakých nadbytočných hookov a patternov asi neporadí. Samozrejme, záleží od toho, v ktorých statických jazykoch. Napríklad taký Haskell je čisto funkcionálny, takže pojem stav neexistuje a stačí kontrolovať len vstupy/výstupy každej funkcie -> ideálna situácia pre testera :-)

     

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    default avatar 29.8.2009 16:08 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: Jednotkové testy času

    Já tohle řešil. Při analýze jsem vycházel ze zkušeností se špatně napsanou aplikací. Ta aplikace má totiž rozdělenou business logiku. Jedna část je v Javě a druhá — na jiném stroji — v databázi. Aplikace zahazuje čas; ukládá jen datum. To se jeví jako elegantní obejití problému s vyhledáváním (netřeba porovnávat na rozsahy). Co už ale hoši nedomysleli, je způsob práce této aplikace. Ta totiž největší práci dělá přes noc. A v noci se děje co? No láme se datum. :-D

    Takže já ve svých komponentách zavedl pojem business date. Naprogramovat pro to provider je triviální. Na první pohled si člověk řekne, co že to je za hovadinu: obalovat SYSDATE. Ale těch providerů může být několik. Jeden vytáhne datum z aplikáče, druhý z databáze, třetí odněkud odjinud. Navíc to business date je konstantní pro všechny komponenty po celou doby noční dávky.

    Ale ta hlavní výhoda spočívá právě v těch tvých jednotkových testech času (mimochodem — až z diskuze jsem pochopil, co ten termín skutečně znamená). Prostě napíšu Mock Provider, kterej to datum tahá z konfiguráku. :-D Klidně si ten Mock objekt můžeš předat pomocí IoC. :-D

    Osobně si troufám tvrdit, že když nějaký proces potřebuje ke své činnosti datum, pak to datum má být parametrem. Takže je to spíš takový workaround na špatně navrženou (naimplementovanou) aplikaci.

    Ale jinak je to všechno v pořádku. Občas potřebuješ otestovat něco, co prostě není úplně ready. Jako to tady děláme my pořád dokolečka s tou aplikací, kterou jsem popsal v úvodu. A jako že je to zábava udržovat testovací datum na několika strojích, když by stačil konfigurák. :-D

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.