Cześć wszystkim,
Chciałbym usłyszeć, co inni dostarczają klientom kompleksowe rozwiązania nieblogowe z WordPress jako platformą używaną do automatycznego testowania regresji ?
Dla tych, którzy nie są zaznajomieni z terminem „testowanie regresji” Wikipedia definiuje go jako:
Testowanie regresyjne to każdy rodzaj testowania oprogramowania, którego celem jest wykrycie błędów oprogramowania po wprowadzeniu zmian w programie (np. Poprawki błędów lub nowa funkcjonalność) poprzez ponowne przetestowanie programu. Celem testów regresji jest upewnienie się, że zmiana, taka jak poprawka błędu, nie wprowadziła nowych błędów.
Bardziej wymowne Wikipedia mówi, co jest dokładnie tym, czego obecnie doświadczam w projekcie:
Doświadczenie pokazuje, że gdy oprogramowanie jest naprawione, pojawienie się nowych i / lub ponowne pojawienie się starych usterek jest dość powszechne. Czasami pojawia się ponowny powrót, ponieważ poprawka gubi się w wyniku złych praktyk kontroli wersji (lub zwykłego błędu ludzkiego w kontroli wersji). Często naprawa problemu będzie „delikatna”, ponieważ rozwiązuje problem w wąskim przypadku, w którym po raz pierwszy go zaobserwowano, ale nie w bardziej ogólnych przypadkach, które mogą pojawić się w trakcie życia oprogramowania. Często naprawa problemu w jednym obszarze nieumyślnie powoduje błąd oprogramowania w innym obszarze. Wreszcie, często zdarza się, że gdy jakaś funkcja jest przeprojektowywana, niektóre z tych samych błędów, które popełniono w oryginalnej implementacji funkcji, zostały popełnione w przeprojektowaniu.
Biorąc pod uwagę globalny charakter akcji i filtrów, stwierdzam, że złożoność zaczyna rosnąć wraz z dodawaniem większej liczby żądanych przez klienta funkcji i trudno jest uzyskać stabilną złożoną wtyczkę, szczególnie jeśli używa ona wielu wywołań WP_Query
i często aktualizuje bazę danych .
Moim zdaniem rozwiązaniem byłoby skonfigurowanie testowania regresyjnego z serią „przypadków testowych” w celu utworzenia „zestawu testowego”. Z założenia nie jest to takie trudne, gdy testujesz wyjście HTML żądań HTTP GET. Ale staje się to trochę bardziej skomplikowane, gdy musisz przetestować rzeczy po zalogowaniu za pomocą konsoli administracyjnej i / lub przetestować interakcje jQuery.
Ustawiam to jako wiki społeczności, w nadziei, że możemy tutaj zebrać najlepsze praktyki, ale naprawdę chcę usłyszeć procesy, jeśli korzystają z nich inni specjaliści WordPress.