Środowisko testowe sklepu: jak odizolować płatności, e-maile i integracje

Porady, WooCommerce, WordPress
Bezpieczne testy sklepu

Środowisko testowe bez skutków ubocznych

Środowisko testowe sklepu powinno być oddzielną kopią plików i danych, która nie może pobierać płatności, wysyłać wiadomości ani przekazywać testowych zdarzeń do produkcyjnych systemów. Sama kopia strony pod innym adresem nie wystarcza. Przed pierwszym testem trzeba sprawdzić bramki płatności, SMTP, zadania cykliczne, webhooki, ERP, marketplace i druk etykiet.

Dzięki temu można sprawdzić aktualizację, nowy moduł albo integrację na prawdziwym przebiegu zakupu bez ryzyka, że klient otrzyma e-mail, magazyn dostanie fałszywe zamówienie albo płatność trafi na konto firmy.

Co należy odłączyć przed testem

Obszar Ryzyko przy skopiowaniu produkcji Bezpieczny kierunek
Płatności Obciążenie prawdziwej metody lub powstanie niejednoznacznej transakcji. Wyłącz bramkę albo użyj jej potwierdzonego trybu testowego i osobnych danych testowych.
E-mail i SMS Wiadomości o zamówieniu, zmianie statusu lub haśle trafiają do klientów. Zablokuj wysyłkę na poziomie aplikacji i dostawcy; przechwyć ją do skrzynki testowej.
Zadania cykliczne Klony uruchamiają importy, odnowienia, przypomnienia lub synchronizacje. Wyłącz harmonogramy i Action Scheduler do czasu świadomego testu.
ERP, Allegro i kurierzy Testowe dane tworzą dokument, rezerwację stanu albo przesyłkę. Odłącz produkcyjne klucze, użyj sandboxa albo zapisz zdarzenia wyłącznie w dzienniku testowym.
Indeksowanie Kopia pojawia się w wyszukiwarce jako duplikat sklepu. Ogranicz dostęp i ustaw blokadę indeksowania; po wdrożeniu usuń lub zabezpiecz kopię.

Kopia danych nie jest neutralna

W kopii sklepu znajdują się adresy e-mail klientów, zamówienia i konfiguracja połączeń. Dlatego dostęp do niej powinien być ograniczony, a dane wykorzystywane tylko w zakresie potrzebnym do odbioru zmiany. W zależności od zadania można zastosować częściowo zanonimizowaną bazę albo ograniczony zestaw danych reprezentatywnych dla katalogu i zamówień.

Najważniejsze jest zachowanie relacji między produktem, wariantem, ceną, dostawą i statusem. Pusty sklep nie pokaże błędu, który pojawia się dopiero w rzeczywistym procesie.

Test płatności nie oznacza testu na żywo

Tryb testowy bramki płatniczej pomaga sprawdzić koszyk i odpowiedź systemu, ale nie zwalnia z odłączenia pozostałych integracji. WooCommerce wskazuje, że testowe zamówienia mogą nadal tworzyć zamówienia i uruchamiać wiadomości, a rozszerzenia różnie rozpoznają scenariusze testowe.

Dlatego dla każdego testu zapisujemy: jaki kanał płatności jest używany, gdzie trafia wiadomość, czy uruchamia się webhook oraz co wolno usunąć po odbiorze.

Minimalny scenariusz odbioru

  1. Otwórz kopię na osobnym adresie. Potwierdź, że nie odsyła klienta do produkcji.
  2. Sprawdź blokady. Płatność, wysyłka wiadomości, harmonogramy i produkcyjne klucze muszą być wyłączone lub zastąpione testowymi.
  3. Przejdź krytyczną ścieżkę. Produkt, wariant, rabat, koszyk, dostawa, płatność testowa i zmiana statusu.
  4. Oceń integracje. Zamiast wysyłać dane dalej, potwierdź ich format w logu albo sandboxie.
  5. Zapisz wynik oraz sposób wycofania. Dopiero wtedy przygotuj przełączenie na produkcji.

Jeżeli test wymaga prawdziwej integracji, ustalamy wąski zakres i dane testowe. Nie traktujemy produkcji jako miejsca eksperymentów.

Od testu do wdrożenia

Panther przygotowuje środowiska odbiorowe oraz scenariusze dla sklepów rozwijanych etapami. W ZUT Uszczelnienia ważna jest ciągłość danych między katalogiem a ERP, a Robiwood pokazuje proces, w którym zamówienie trafia dalej do produkcji. W takich wdrożeniach test dotyczy całego przepływu, nie tylko wyglądu strony.

Zakres izolacji dobieramy do używanych systemów, aby odbiór nowej funkcji nie zatrzymał bieżącej sprzedaży.

Źródło

WooCommerce opisuje, że testy zamówień należy wykonywać poza produkcją oraz sprawdzić sposób działania każdej integracji.

Dokumentacja WooCommerce: Testing orders