-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed1.plix.pl!goblin1!gobli
n.stu.neva.ru!postnews.google.com!n6g2000vbz.googlegroups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Pytanie do fanow Test Driven Design i XP
Date: Wed, 21 Dec 2011 07:26:49 -0800 (PST)
Organization: http://groups.google.com
Lines: 47
Message-ID: <1...@n...googlegroups.com>
References: <13550949.64.1324464699954.JavaMail.geo-discussion-forums@vbjs5>
NNTP-Posting-Host: 77.65.97.192
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1324481209 28120 127.0.0.1 (21 Dec 2011 15:26:49 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Wed, 21 Dec 2011 15:26:49 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: n6g2000vbz.googlegroups.com; posting-host=77.65.97.192;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: HUALESNKRC
X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13)
Gecko/20101203 Firefox/3.6.13,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.comp.programming:194409
[ ukryj nagłówki ]On Dec 21, 11:51 am, Roman W <b...@g...pl> wrote:
> Na grupie padaly stwierdzenia, ze wymagania wobec programu mozna opisac w formie
testow.
>
> Zalozmy, ze mamy zaimplementowac funkcje (na przykladzie C++)
>
> double calculate_stuff(const std::vector<double>& data);
>
> z warunkiem "ma sie wykonywac w czasie liniowym w rozmiarze wektora data".
>
> Jak napisac test, ktory sprawdza czy ten wymog jest spelniony?
Nie pisać.
To jest jedna z tych rzeczy, którą łatwiej zrobić, niż sprawdzić
(podobnie, jak wspomniany pogłos z filharmonii w Koluszkach).
Pamiętajmy, że tworzenie testów też kosztuje, o czym zwolennicy TDD
często zapominają.
Przy okazji, powstaje również problem, jak sprawdzić, że test sprawdza
to co miał sprawdzać? Bo koszt testów nie sprowadza się tylko do ich
objętości, ale również do zrozumienia, jak zrobić test. Kto sprawdzi
test?
I w ogóle to dlaczego pisanie testów, których objętość może
przekroczyć właściwy projekt (co TDDowcy przyznają) nie odbywa się
według tej samej metody, która niby jest dobra do wszystkiego? Tzn.
dlaczego testów nie pisze się według TDD? :-)
Oprócz złożoności liniowej i pogłosu w filharmonii w Koluszkach,
takich przykładów jest znacznie więcej. Np. mamy napisać generator
liczb losowych o zadanym rozkładzie - jak to sprawdzić przez TDD?
Tutaj również łatwiej jest to zrobić poprawnie przez właściwą
konstrukcję, niż stworzyć poprawny test.
Takich przykładów może być nieskończenie wiele, a to oznacza, że jest
nieskończenie wiele projektów, dla których TDD jest niewłaściwym
podejściem.
Niespodzianka? Ani trochę.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 21.12.11 15:45 A.L.
- 21.12.11 16:18 Roman W
- 21.12.11 18:15 Adam Przybyla
- 21.12.11 19:37 Edek
- 21.12.11 19:56 Sebastian Biały
- 21.12.11 23:13 Maciej Sobczak
- 21.12.11 23:29 Andrzej Jarzabek
- 22.12.11 00:00 Andrzej Jarzabek
- 22.12.11 00:09 Andrzej Jarzabek
- 22.12.11 00:31 Andrzej Jarzabek
- 22.12.11 00:58 Michoo
- 22.12.11 01:28 A.L.
- 22.12.11 08:24 Paweł Kierski
- 22.12.11 08:28 bartekltg
- 22.12.11 08:47 Edek
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=