Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Testowanie oprogramowania, automatyzacja instalacji, Luźna dyskusja, narzędzia, ciekawe linki
patrycjusz
post
Post #1





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


Witam,

Od dłuższego czasu drąże temat Test Driven Development, powoli w oparciu o nowe narzędzia wdrażam z ciekawymi konsekwencjami metodologie opartą o testy.

Na bazie właśnie realizowanego projektu postanowiłem podzielić się swoimi spostrzeżeniami:
1. Dobra architektura aplikacji umożliwiająca testy jednostkowe to podstawa (dobry podział na model/akcje i BO).
2. Faktyczne pisanie testów zanim powstanie choćby jeden mm kodu - tzn. po stworzeniu dokumentacji funkcjonalnej (specyfikacji wymagań) piszemy pierwsze testy jednostkowe.
3. Zauroczyłem się w metodologii continues integration - praca tylko i wyłącznie w oparciu o system wersjonowania (cvs/svn) do tego pełna automatyzacja budowy aplikacji (ant, ew. phing) + testy - i to w całości codziennie, najlepiej co kilka minut.
4. Oszczędność czasu w późniejszyme etapie - dopóki nie napisze się pierwszej poważnej aplikacji w oparciu o TDD nie sposób zauważyć jej zalety, a są one nie wiarygodne, a szczególnie oszczędność czasu poświęcana na testowanie aplikacji przy wprowadzaniu zmian itp.

Dobra a teraz krótko, jak działamy:
- dla każdej metody piszemy test - im test dokładniejszy i ściślejszy tym lepiej,
- wersjonujemy aplikację,
- automatyzujemy proces instalacji aplikacji (ant, ew. phing),
- codzienne buildy,
- wykorzystujemy narzędzia wspierające proces testowania i automatycznego budowania aplikacji.

Z czego ja korzystam?
- continuum - automatyzacja całego procesu, raporty etc,
- cvs - wersjonowanie,
- PHPUnit 2, selenium - testy,

Dodatkowo ciekawe linki wprowadzające:
TDD
Ciekawe podejście
phpunit w wersji 3 w drodze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pytania, moje (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
1. Z jakich narzędzi wy korzystacie wspierających waszą pracę na etapie testów, wdrożenia?
2. Znacie jakieś dobre narzędzie testujące funkcjonalnie GUI, symulujące użytkownika? Tzn, wypełnia sobie formularz, sprawdza poprawnosc zwracanych danych, mierzy czas generowania kolejnego ekranu itd - oczywiście wszystko ja definiuje w postaci testu (dane ktore ma wrzucic do forma, pola w formie itp).
3. Automatyzacja instalacji, w php znalazłem tylko phinga, póki co korzystam z Anta (tak jak w jednym z linków jest wspomniane - dobrze integruje się z pewnymi narzędziami),ale interesuje mnie pełna automatyzacja tego procesu - defacto pełne paczki (coś na kształt plików .war) samoinstalujące się (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Chętnie poczytam wasze spostrzeżenia.

Pozdrawiam,
Patrycjusz Szydło
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 18.09.2025 - 11:10