• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    TENCOKACISTROMY: asi nepsal. Ja to myslel spis obecne - ze psat test az po psani logiky nedava uplne smysl a test pak casto vypada zbytecne.. a nakonec i tak trochu zbytecnej je :)

    TENCOKACISTROMY: neznam presne to tvoje prostredi, ale pokusil bych se izolovane testovat to volani WS a oddelene tu DB cast. Kazdopadne s klasickym pristupem, kdy mas otevrenou transakci pres test a pak rollbacknes bys nemel mit poblem myslim. Druha vec je, kde vezmes tu testovaci DB - to nevim, jestli mas vyreseny, resp. jestli je to soucasti otazky..
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    BUTHRAKAUR: Mam spis koncepcni problem. Jde o to, ze vlastne cely to prostredi se mi z jedny tridy a par objektu rozroste na DB a sitovou sluzbu. Pricemz potrebuju otestovat X situaci, a nektery jsou typu vytvorit pocatecni situaci, nechat spocitat a zapsat, upravit situaci (simulace vstupu od uzivatele), spocitat a zapsat (jeste treba dvakrat). Vysledny data by mely byt zhruba XY.

    A to vsechno bych byl rad, aby se setupovalo nejak rozumne rychle a aby mi to netimeoutovalo na dlouho bezici test apod...
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    BUTHRAKAUR: Cili na takovejhle kus kodu bys psal test?
    clas BlaBlaBlaConverter : IValueConverter {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
            return (value as bool?).GetValueOrDefault() ? 1 : 0;
        }
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
             return (value as int?).GetValueOrDefault() == 0 ? false : true;
        }
    }

    BUTHRAKAUR
    BUTHRAKAUR --- ---
    TENCOKACISTROMY: integracni MSTesty proti DB + WS pouzivam. Co s tim mas konkretne za problem? Ja jen nesnasim MSTest a jeho nedomyslenosti, ale jinak vsechno beha :)
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    NECROMAN: tak ono to takhle na prvni pohled vypada, ze je test zbytecnej.. Kdo ale pise testy az po tom, co napise testovanou logiku, tak to dela spatne ;) A samozrejme to pak casto pusobi zbytecne/dementne.

    Jinak na lepsi pochopeni testu byla prednaska T.Hercega IMO naprosto k nicemu a misty i zavadejici, co si tak matne vzpominam. Osobne doporucuju http://srazy.info/coderetreat/2638 , ktery se blizi milovymi kroky.
    H_U_N_T_E_R
    H_U_N_T_E_R --- ---
    Kdo jdete na MS Fest afterparty, byla spuštěna závazná registrace, uzávěrka je v pondělí, takže moc času nezbývá:
    Microsoft Fest 2012 | Registrace na afterparty
    http://www.ms-fest.cz/Afterparty.aspx
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MICTECH: Tak takovejch veci je vic zejo. Treba On[EventName], jednoduchy konstruktory, atd...

    Kdyz bych si mel psat testy uplne na vsechno, tak bych nejspis z vetsi casti opustil imperativni jazyky a zacal pouzivat nejakej deklarativni zapis. Mnozstvi napsanyho kodu (= mist, kde muzu udelat bug) by se vyrazne snizil.
    MICTECH
    MICTECH --- ---
    TENCOKACISTROMY: Zalezi jak ma clovek nastavene filtery na Code Coverage :)

    Samozrejmne do Code Coverage se nepocitaji get/set a tak podobne.
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: koukam, ze ma prednasku i na MS festu:
    Microsoft Fest 2012 | Program konference
    http://www.ms-fest.cz/Program/Sobota

    Jinak ja tam budu prednaset neco o Windows Phone 8, pokud dorazi i NFC tagy a podari se zajistit i pouzitelnou kameru pro promitani z telefonu, tak to bude parada :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Byla dobra. Po dvou letech pokusu pouzivat unit testy jsem je opravdu zacal pouzivat a maji pro me prinos.



    btw. nikdo mi na ten kod nekouknete?
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: zrovna na tu prednasku jsem chtel jit, Tomas je v pohode
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Kdyz jsem byl v na prednasce o testech v akvarku u MS, tak tam ten prednasejici (myslim ze Tomas Herceg) rikal, ze v pripade ze mate vysinuteho sefa, tak mu nemate rikat o code-coverage. Ze se pak snadno stane, ze chce mit 100% a ze je to cesta do zahuby :).
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: tak nadrizeny rekl - proste napises na to testy, jasny?
    Takze copypastuju kod z converteru do testovacich metod a vymyslim k nim vstupy, to je produktivita :D
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Tak tam bych se na testy normalne vyprdnul.
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: vetsina konvertoru je jen jednoradkova vec, co zkontroluje vstupni typ a vrati string.Format(xy, value)
    popripade variace na BoolToVisibilityConverter
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Udelal jsem si extension metody pro tridu ReaderWriterLockSlim, aby se mi s tim dobre pracovalo. Neustaly volani EnterReadLock(), ExistReadLock(), uzavirano do try-finally bloku me fakt nebavi.

    Kouknete se mi prosim na ten kod a zrevidujte mi ho, jestli jsem na neco nahodou nezapomnel.
    Kdyz se vam bude libit, tak ho muzete pouzit ;).

    ReaderWriterLockSlimExtensions
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Pokud je Convertor jednoduchej, tak imho nema. Pokud je slozitej, tak mi to zacina davat smyls. Pokud hodlas nejakej Convertor refaktorovat, tak mi to dava smysl taky.
    NECROMAN
    NECROMAN --- ---
    Ma smysl psat unit testy na Convertery pro XAML? Prijde mi to jako naprosta zbytecnost, kde psanim testu stravim 10x tolik casu a vetisnou jen zopakuji xkrat pod sebe kod samotneho converteru.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Pouzivate nekdo MSTest projekt pro integracni testy?
    V mym pripade bych potreboval se pripojit k DB, v DB si zavolat metodu (ta se pres ruzny peripetie pripoji na moji sitovou sluzbu), sitova sluzby neco spocita, a ja chci ted otestovat, ze to spocitala. Nemam ambice presne kontrolovat jaky jsou data. To je unreal, ale chci vedet, ze to nevyprodukovalo nekonzistaneni data (napr. vim ze nekde nikdy nesmi byt NULL, kdyz nekde je priznak TRUE, atd...).
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    FRANKVFX: v zavislosti na tom co konkretne chces se tady najdou asi i lepsi diskuze (byt teda s vyjimkou unity diskuze jsou uz relativne nemrtve)
    [ OpenGL, Direct3D, rendering :: programování grafických aplikací :: otázky a odpovědi ]
    [ UNITY 3D ]
    [ 3D herní enginy, technologie, efekty a grafická kouzla ]
    Kliknutím sem můžete změnit nastavení reklam