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 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 7
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 12
    24.4. 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 770 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    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.