-
Data: 2011-12-21 23:29:20
Temat: Re: Pytanie do fanow Test Driven Design i XP
Od: Andrzej Jarzabek <a...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 21/12/2011 14:11, Roman W wrote:
> On Wednesday, December 21, 2011 2:07:09 PM UTC, Paweł Kierski wrote:
>> Na post-commit taki test się nie nadaje, ale w nocy masz z reguły kilka
>> godzin do dyspozycji. W skrajnym przypadku można tego rodzaju testy
>> zapuszczać tylko wtedy, kiedy to naprawdę niezbędne - np. przed
>> wdrażaniem wersji na produkcję. Pozostaje też kwestia różnic
>> w wydajności maszyn produkcyjnych i testowych/buildowych (jak ustawić
>> górne ograniczenie czasu wykonania testu).
>
> Do czego zmierzam: ze jezeli wymaganiem jest *formalna gwarancja* ze
> procedura implementuje algorytm wykonujacy sie w czasie liniowym, to
> zaden test tego adekwatnie nie dokumentuje. Tylko zwykla dokumentacja
> moze to, well, udokumentowac.
Trochę pół żartem, mogę powiedzieć, że można to testować jakimś testem typu:
void testProvedLinearComplexityOfCalculateStuff() {
fail(); // remove this line once proof is checked by customer
}
Trochę poważniej - jeśli klient wymaga formalnego dowodu złożoności
algorytmu, to prawdopodobnie możesz to obsłużyć poza metodologią
tworzenia oprogramowania - tam, gdzie masz proces do zapewnienia
odpowiednich 'deliverables'. Przecież nie sprawdzasz też automatycznymi
testami, czy została stworzona i dostarczona instrukcja dla użytkownika,
albo czy dział prawny sprawdził tekst licencji.
Natomiast samo wymaganie, żeby złożoność była liniowa, można bardzo
łatwo udokumentować testem, np. takim:
void testCalculateStuffComplexityIsLinear() {
assertThat(timeComplexityOf(claculate_stuff).is(line
ar()));
}
Wewnątrz implementacja oczywiście będzie robiła jakieś heurystyki, można
też sparametryzować ten test tak, żebyś miał prosty wariant który się
testuje z każdym buildem i wariant dla realnych zakresów użytkowania,
który się testuje przez noc, przez weekend albo nawet przez tydzień,
jeśli tego właśnie potrzebujesz.
Następne wpisy z tego wątku
- 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
- 22.12.11 08:58 Roman W
- 22.12.11 09:02 Roman W
- 22.12.11 09:06 Roman W
- 22.12.11 09:08 Roman W
- 22.12.11 09:19 Stachu 'Dozzie' K.
- 22.12.11 09:29 Andrzej Jarzabek
- 22.12.11 09:40 bartekltg
Najnowsze wątki z tej grupy
- 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ą."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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
Najnowsze wątki
- 2025-04-27 czy nieroby zablokują znowu Zakopiankę
- 2025-04-26 e-Doręczenia w praktyce.
- 2025-04-26 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-04-26 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-04-26 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-04-26 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-04-26 Patrole obywatelskie.
- 2025-04-26 Warszawa => Presales Engineer IT <=
- 2025-04-26 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-04-26 Rudno => IT network administrator <=
- 2025-04-26 Dęblin => Node.js / Fullstack Developer <=
- 2025-04-25 Sprawdzić czy spółka ma sprawy w sądzie
- 2025-04-25 Solarny Palnik Wodorowy
- 2025-04-25 amperomierz w plusie
- 2025-04-25 nie wyłączam silnika