Mam bardzo dużą aplikację PHP. Zwykle pracuje nad nim 2-3 programistów i dochodzimy do punktu, w którym wprowadzamy zmiany i robimy błędy (funkcje kaszlu!). Oprogramowanie nie jest skomplikowane, powiedzmy, po prostu wiele się dzieje (35 ~ kontrolerów, o tych samych modelach itp.).
Nawet uważając, zmiana tego widoku (poprawianie identyfikatora elementu) jest łatwa, aby zniszczyć kwerendę ajax, która ma miejsce pod pewnymi specjalnymi warunkami (wylogowany, stojąc na jednej nodze).
Testy jednostkowe są pierwszymi rzeczami, które przychodzą mi na myśl, ale wypróbowaliśmy je w innej aplikacji i tak łatwo je zapomnieć / lub poświęcić więcej czasu na pisanie testów niż na wykonywanie testów. Mamy środowisko przejściowe, w którym kod jest sprawdzany przed przekazaniem na żywo.
Może potrzebujemy osoby zatrudnionej w niepełnym wymiarze czasu?
Każdy ma jakieś sugestie / przemyślenia.
źródło
Odpowiedzi:
Tak, potrzebujesz personelu Q / A. Niektóre z wielu powodów to
To powiedziawszy, nic nie przebije produktywnej współpracy między deweloperem a testerem w zakresie jakości systemu prowadzenia przez dach. Deweloper często zauważa objawy, że coś jest nie tak, zanim zrobi to tester. Deweloper często może doradzić testerowi, jak znacznie skuteczniej odtworzyć problem i jak napisać odpowiedni raport o problemie, tj. Podać szczegóły niezbędne do rozwiązania problemu. Ale wszystko to wymaga co najmniej jednego testera, z którym możesz współpracować.
źródło
Najprawdopodobniej potrzebujesz więcej lub lepszych testów regresji (a nie testów jednostkowych ). Jakiego rodzaju testy powinieneś przeanalizować sam, ale powinny wykryć błędy, o których mówisz. Sugeruję, aby rozpocząć tworzenie planu testów i nadać priorytet tym testom - a kiedy to zrobisz, początkowo nie myśl zbyt dużo o automatyzacji testów.
Następnie zadaj sobie pytanie, czy możesz zautomatyzować niektóre lub większość testów przy rozsądnym wysiłku. Jeśli odpowiedź brzmi „tak”, należy je zaprogramować. Jeśli odpowiedź brzmi „nie” i uważasz, że „osoba w niepełnym wymiarze czasu Q / A” jest tańsza, to powinno być to, czego potrzebujesz. W większości przypadków dobrym pomysłem jest posiadanie zarówno - osoby odpowiedzialnej za testy manualne i wymyślanie nowych testów, jak i wielu zautomatyzowanych testów regresji.
źródło
Zatrudnij profesjonalną kontrolę jakości
Należy to zrobić, jeśli rozwijasz projekt komercyjny. Przygotowywanie produktu bez solidnej strategii testowania kosztowałoby cię więcej dzięki naprawianiu błędów. Ponadto pozyskanie lub utrzymanie nowych klientów będzie również zależeć od tego, jak dobrze Twoja aplikacja jest testowana.
Mówiąc ogólnie, do bazy kodu należy zastosować testowanie jednostkowe, jednak nie należy odrzucać testów integracji i testów ręcznych.
źródło
Testy jednostkowe to naprawdę dobry pomysł, szczególnie jeśli Twój projekt się rozwija. Jeśli pisanie testów jednostkowych stanie się nawykiem, znacznie ułatwi ci to pracę. Na YouTube znajduje się wideo na temat pisania czystego kodu, który jest łatwiejszy w utrzymaniu i przetestowaniu.
Inżynier ds. Kontroli jakości jest również koniecznością. Dobry tester kontroli jakości nie tylko znajdzie błędy w działaniu, ale również sprawdzi, czy aplikacja jest przyjazna dla użytkownika (co jest prawie niemożliwe do przetestowania przez siebie). Oto fajny artykuł wyjaśniający, w jaki sposób zespół kontroli jakości pozwoli Ci zaoszczędzić czas i pieniądze oraz pomóc w dostarczaniu lepszego oprogramowania.
źródło
15 kontrolerów i modeli nie jest bardzo dużych. Zajmuje trochę czasu, aby testowanie pisania stało się nawykiem, kopanie się do niego (najpierw w przyjazny sposób) bardzo pomaga.
Istnieją narzędzia, które mogą w pewnym stopniu kontrolować zasięg testu. Narzędzia pokrycia kodu dla PHP
źródło