eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingpl. usenet o agileRe: pl. usenet o agile
  • Data: 2013-07-23 00:09:56
    Temat: Re: pl. usenet o agile
    Od: Edek <e...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Szarym od mżawki świtem Sat, 20 Jul 2013 10:53:26 +0200, Sebastian Biały
    wyrzucił pustą ćwiartkę i oznajmił:

    > On 2013-07-19 21:53, Roman W wrote:
    >> Test może byc typu
    >> x = 4.5;
    >> expected = 10.4;
    >> assertEquals (expected, f (x));
    >> I jaka ma wtedy wartość jako dokumentacja?
    >
    > Przypuszczam że zbliżoną do:
    >
    > // funkcja f
    > // przyjmuje: double - pierwszy parametr
    > // zwraca: double
    > int f( int, char* ) { }
    >
    > Czyli żadną.
    >
    > Ale już taki test:
    >
    > assert( parseDouble( "1.0" == 1.0 ) );
    > assert( parseDouble( "1E0" == 1.0 ) );
    > expect_throw( parseDouble( "1e0" ) );
    > expect_throw( parseDouble( "1,0" ) );
    >
    > ... ślicznie dokumentuje.

    Obawiam się, że nie zrozumiałęś przykładu. Unit testy tylko pokazują,
    że dla *tych wybranych przypadków* działa. Jest wiele przypadków
    kodu gdzie to wystarcza, ale jest też wiele przypadków, gdzie
    albo nie ma skończonej liczby przypadków (czyli też unitów), albo
    nic się w ten sposób nie dokumentuje - bo to trochę tak jakby zamiast
    książki z przykładami mieć same przykłady.

    I nie, unit testy w praktyce ani nie są pewne ani też praktycznie
    nigdy nie pokrywają wszystkich przypadków. Pokrycie 100% linii bywa
    górną granicą, a często nawet nie. Unit testy pisze się głównie
    dla szybkiego wyłapania oczywistych regresji.

    --
    Edek

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: