![]() |
Tematy na forum Pro mogą zakładać jedynie moderatorzy. W otwartych tematach może pisać każdy, kto ma coś fachowego do powiedzenia. Wszystkie posty nie wnoszące nic do tematu będą natychmiast usuwane, a ich autorzy dostaną ostrzeżenie.
Jeśli uważasz, że jakiś temat jest warty dyskusji na tym forum, zgłoś go w temacie Propozycje.
![]() |
![]()
Post
#1
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Na wniosek ActivePlayera, zakładam temat o testowaniu aplikacji. O to treść wątku:
Chciałbym porozmawiać na temat testowania aplikacji php. Czy testujecie swoje aplikacje? Jeśli tak, to jakich narzędzi używacie? Czy w firmach w których pracujecie wdrożone jest continuous integration? Jak w praktyce wygląda praca nad testowaniem aplikacji? Czy używacie testów jednostkowych? Uważam że temat testowania aplikacji to coś ciekawego, o czym stosunkowo mało w polskim internecie - mysle ze moze to byc ciekawy temat do dyskusji. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 1.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Obecnie w konfiguracji:
+ jednostkowe - PHPUnit + funkcjonalne - Selenium + budowanie aplikacji - Phing + CI - Jenkins Zestaw sprawdza się fajnie, chociaż z wielu względów zastosowaliśmy SVN, zamiast któregoś z rozproszonych systemów kontroli wersji (git, bazaar). Przy pracy większego zespołu przy skomplikowanym projekcie nie wyobrażam sobie pracy bez testów. Jak to powiedział jeden ze współpracowników: testy udowadniają, że w danym czasie dana funkcjonalność działała. Przy zmiennych, skomplikowanych wymaganiach biznesowych są potrzebne i nie raz ratują przed poważną wpadką. Testy wymuszają także stosowanie pewnych dobrych wzorców np. ostatnio źle napisana, archaiczna autentykacja nie była testowana, trzeba było przepisać ten element, żeby wszystko dalej poszło zgodnie z planem i przy okazji załataliśmy poważną lukę bezpieczeństwa. TDD jest fajne w specyficznych przypadkach np. jeżeli piszesz API albo crawlera, to nie ma nic lepszego.. jednak jestem zwolennikiem dobierania trybu pracy do zadania tzn. zaawansowany i hardkorowy debuging - XP, crawlery / API - TDD, większość projektu - Scrum, traktujący test jako integralną część realizacji zadania (bez niego nie może zostać zamknięte). Cytat Powoli dochodzę do wniosku że selenium jest chyba najbardziej rozsądnym rozwiązaniem, ponieważ jeśli mądrze zrobimy testy, to wszystkie błędy "po środku" w kodzie zostaną wykryte. Testy funkcjonalne sprawdzają całość, testy jednostkowe poszczególne funkcje aplikacji. Oba są potrzebne np. freelancer do frontendu i AJAX (IMG:style_emoticons/default/wink.gif) , ale z drugiej strony crawlera nie przeklikasz. Ważnym zagadnieniem jest pokrycie kodu testami. 100% to utopia w polskich realiach biznesowych, sztuką jest wybór elementów aplikacji, które ewidentnie muszą być testowane. CI - odkąd zacząłem z nim pracę, nie wyobrażam sobie innej opcji w większym projekcie. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 21:21 |