-
X-Received: by 10.49.3.104 with SMTP id b8mr1188432qeb.25.1374560000651; Mon, 22 Jul
2013 23:13:20 -0700 (PDT)
X-Received: by 10.49.3.104 with SMTP id b8mr1188432qeb.25.1374560000651; Mon, 22 Jul
2013 23:13:20 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!qx7no50365095pbc.1!
news-out.google.com!b2ni84830pby.1!nntp.google.com!cb17no57110qab.0!postnews.go
ogle.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Mon, 22 Jul 2013 23:13:20 -0700 (PDT)
In-Reply-To: <kski07$nqj$1@somewhere.invalid>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.71.48.10;
posting-account=mvBzhgoAAADiziO82aLj4VEpjexQv3Cn
NNTP-Posting-Host: 89.71.48.10
References: <kroiv1$p67$1@speranza.aioe.org>
<4...@4...com>
<51e5880e$0$1222$65785112@news.neostrada.pl>
<ks5dga$ei6$1@somewhere.invalid>
<51e84c47$0$1265$65785112@news.neostrada.pl>
<ks9sck$h0l$1@somewhere.invalid>
<3...@4...com>
<ksan9m$aue$1@node2.news.atman.pl>
<51e908d1$0$1467$65785112@news.neostrada.pl>
<ksb20l$9hd$1@node1.news.atman.pl>
<51e90fe1$0$1221$65785112@news.neostrada.pl>
<ksb5kv$p53$1@node2.news.atman.pl>
<m...@4...com>
<ksbguk$pgj$1@node1.news.atman.pl>
<a...@n...plus.net>
<ksdj68$2la$1@node2.news.atman.pl> <kskajk$d3h$3@node2.news.atman.pl>
<kski07$nqj$1@somewhere.invalid>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2...@g...com>
Subject: Re: pl. usenet o agile
From: Adam Klobukowski <a...@g...com>
Injection-Date: Tue, 23 Jul 2013 06:13:20 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:204175
[ ukryj nagłówki ]On Tuesday, 23 July 2013 02:16:02 UTC+2, Andrzej Jarzabek wrote:
> On 22/07/2013 23:09, Edek wrote:
>
> > Szarym od mżawki świtem Sat, 20 Jul 2013 10:53:26 +0200, Sebastian Biały
>
> > wyrzucił pustą ćwiartkę i oznajmił:
> >
> >> 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.
>
> Edek myli weryfikację z dokumentacją. Test, owszem, weryfikuje
> szczególne przypadki, ale dobrze napisany dokumentować może ogólne
> reguły które te przypadki reprezentują.
>
> Dokumentacyjną rolę w testach pełni przede wszystkim nazwa testu, ale
> też cały jej zapis:
>
> test parseDouble parses decimal integer representation {
> int integer = 83;
> string representation = "83";
> assert that parseDouble(representation) equals (double)integer;
> }
>
> Chcąc się dowiedzieć co robi parseDouble i dla jakich przypadków daje
> jakie wyniki, i korzystając z unit testów jako dokumentacji, jełop
> wyczyta z powyższego tylko informację, że dla wejścia "83" daje liczbę
> równą (double)83, ale inteligentny czytelnik wyczyta więcej.
Yhm. Dla takiego trywialnego przypadku jest to proste. Wyobraź sobie że masz
obliczenia gdzie możesz mieć sporo danych wejściowych, ok. 60 parametrów
konfiguracyjnych obliczeń a klient zwraca uwagę na 12 cyfrę po przecinku.
Udokumentować to możesz, ale ta dokumentacja nie sprawdzi Ci poprawności obliczeń dla
wszystkich przypadków. Unit testy, jak są dobrze napisane, maja taką szansę.
AdamK
Następne wpisy z tego wątku
- 23.07.13 09:26 Andrzej Jarzabek
- 23.07.13 10:30 Adam Klobukowski
- 23.07.13 11:40 Edek
- 23.07.13 11:41 Andrzej Jarzabek
- 23.07.13 12:28 slawek
- 23.07.13 13:14 slawek
- 23.07.13 13:16 Edek
- 23.07.13 14:35 Andrzej Jarzabek
- 23.07.13 21:21 Sebastian Biały
- 23.07.13 21:23 Sebastian Biały
- 23.07.13 22:22 Edek
- 24.07.13 10:36 slawek
- 24.07.13 20:49 Andrzej Jarzabek
- 27.07.13 18:42 Andrzej Jarzabek
- 27.07.13 18:47 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-11-09 Węże do tlenu medycznego
- 2025-11-09 Więcej miejsca na buspasach :-)
- 2025-11-08 kable zawieraja skrobie?
- 2025-11-08 Klip testowy, jak sie to używa
- 2025-11-08 Warszawa => Senior Cloud Engineer - AWS <=
- 2025-11-08 Pewnie za malo zarabial, to sie musial odstresowac
- 2025-11-08 Uszkodzenie na parkingu a odpowiedzialność sprawcy z OC
- 2025-11-08 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-11-08 Gdańsk => Senior Software Developer C++ <=
- 2025-11-08 Uszkodzenie na parkingu a odpowiedzialność sprawcy z OC
- 2025-11-08 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-11-07 Warszawa => International Freight Forwarder <=
- 2025-11-07 Warszawa => C Programmer <=
- 2025-11-07 Warszawa => Starszy Programista C <=
- 2025-11-07 Warszawa => Senior Programmer C <=




Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei