| Termin | Definicja |
|---|---|
| formularz dostępny w środowisku produkcyjnym bez testów | Formularz dostępny w środowisku produkcyjnym bez testów to ryzykowna praktyka wdrożenia elementu rejestracyjnego bez wcześniejszej weryfikacji. Formularz dostępny w środowisku produkcyjnym bez testów – czym jest to zjawiskoOkreślenie „formularz dostępny w środowisku produkcyjnym bez testów” opisuje sytuację, w której użytkownik otrzymuje możliwość wpisania i wysłania danych w działającej witrynie, aplikacji lub panelu, mimo że sam formularz nie został wcześniej sprawdzony w kontrolowanych warunkach. Może dotyczyć formularza kontaktowego, rejestracyjnego, zgłoszeniowego, zakupowego, ankietowego albo pola służącego do przesyłania dokumentów. Istotą problemu nie jest wyłącznie brak formalnego scenariusza testowego. Chodzi o udostępnienie elementu, który przyjmuje dane, uruchamia dalsze procesy i wpływa na użytkowników, zanim zostanie potwierdzone, że działa zgodnie z założeniami. Formularz jest punktem styku kilku obszarów jednocześnie. Odpowiada za prezentację pól, walidację wpisywanych wartości, przesłanie żądania, obsługę odpowiedzi oraz często zapis danych w bazie. Po wysłaniu może również wywołać wiadomość e-mail, utworzyć zgłoszenie, zmienić status klienta, przekazać dane do innego systemu lub rozpocząć proces wymagający dalszego działania. Jeżeli choć jeden z tych etapów nie został sprawdzony, pojawia się ryzyko, że formularz będzie wyglądał poprawnie, lecz w praktyce nie zrealizuje oczekiwanego celu. W środowisku produkcyjnym każda pomyłka jest widoczna dla rzeczywistych użytkowników. Puste pole może zostać zaakceptowane, nieprawidłowy adres może przejść bez ostrzeżenia, a poprawne zgłoszenie może zniknąć bez potwierdzenia. Niekiedy formularz działa tylko w jednej przeglądarce albo wyłącznie dla określonego typu urządzenia. Brak testów utrudnia rozróżnienie pojedynczego błędu od problemu dotyczącego wszystkich przesyłanych danych. Formularz dostępny w środowisku produkcyjnym bez testów a kontekst techniczny i porównaniaWarto odróżnić testowanie formularza od samego sprawdzenia, czy strona się otwiera. Widoczny przycisk oraz możliwość wpisania tekstu nie oznaczają jeszcze prawidłowego działania całego procesu. Podstawowa kontrola interfejsu obejmuje układ pól, opis wymaganych informacji, komunikaty walidacyjne, obsługę klawiatury i czytelność na różnych ekranach. Kontrola funkcjonalna sprawdza natomiast, czy dane są rzeczywiście przekazywane, zapisywane oraz kierowane do właściwego odbiorcy. Można porównać trzy sytuacje. W pierwszej formularz nie został jeszcze opublikowany, więc błędy mogą zostać wykryte bez wpływu na osoby korzystające z usługi. W drugiej formularz znajduje się w środowisku testowym, gdzie używa się przykładowych danych i kontroluje kolejne warianty działania. W trzeciej formularz jest już dostępny w środowisku produkcyjnym bez testów. Wtedy każde sprawdzenie może pozostawić ślad w prawdziwym obiegu informacji, wysłać niezamierzoną wiadomość albo utworzyć niepotrzebne zgłoszenie. Istotna jest także różnica między testem pozytywnym i negatywnym. Test pozytywny potwierdza, że poprawnie wypełniony formularz może zostać wysłany. Test negatywny sprawdza reakcję na brak danych, zbyt długi tekst, niedozwolone znaki, błędny format, wielokrotne kliknięcie przycisku oraz przerwanie połączenia. Bez drugiej grupy kontroli można przeoczyć sytuacje, które w rzeczywistym użyciu zdarzają się często. Nie należy utożsamiać braku testów z brakiem dokumentacji. Dokumentacja może opisywać oczekiwane zachowanie, lecz nie potwierdza, że wdrożony formularz rzeczywiście je realizuje. Z kolei test przeprowadzony tylko raz nie daje pełnej pewności po zmianie kodu, konfiguracji, wyglądu strony lub sposobu obsługi przesyłanych informacji. Każda modyfikacja może wprowadzić nową zależność, dlatego zakres kontroli powinien obejmować również elementy, które wcześniej działały prawidłowo. Formularz dostępny w środowisku produkcyjnym bez testów – typowe problemyJednym z częstych problemów jest brak spójności między komunikatem dla osoby wypełniającej formularz a stanem po stronie systemu. Użytkownik może zobaczyć informację o pomyślnym wysłaniu, chociaż dane nie zostały zapisane. Może też otrzymać komunikat o błędzie mimo poprawnego utworzenia zgłoszenia. Taka rozbieżność prowadzi do ponawiania wysyłki i powstawania duplikatów. Problemem bywa niewłaściwe działanie pól wymaganych. Formularz może wymagać informacji, których nie oznaczono jako obowiązkowe, albo odrzucać wartości zapisane w prawidłowym formacie. Dotyczy to między innymi numerów telefonu, adresów poczty elektronicznej, kodów pocztowych, dat oraz załączników. Równie ważna jest długość danych. Zbyt krótki limit może uniemożliwić opisanie sprawy, a zbyt długi może powodować błędy zapisu lub nieczytelne wyświetlanie. Na urządzeniach mobilnych może pojawić się zasłonięty przycisk, nieprawidłowo rozwijana lista albo pole, którego nie da się wygodnie zaznaczyć. Na mniejszym ekranie komunikat walidacyjny może zostać odcięty, przez co nie będzie wiadomo, co należy poprawić. W przypadku wolniejszego połączenia formularz może nie pokazać stanu wysyłania i zachęcać do wielokrotnego naciskania przycisku. Osobną grupę stanowią błędy związane z przekazywaniem informacji. Formularz może kierować zgłoszenia do nieaktualnego adresata, pomijać załącznik, zapisywać dane w niewłaściwym polu albo tracić polskie znaki. Czasem sama wiadomość dociera, lecz nie zawiera treści wpisanej przez użytkownika. Innym razem system przechowuje dane, ale nie powstaje powiadomienie, więc dalsza obsługa nie zostaje rozpoczęta. Nie można pomijać kwestii bezpieczeństwa. Formularz przyjmuje dane pochodzące z zewnątrz, dlatego powinien być odporny na nietypowe treści, próby przesłania niebezpiecznych plików, automatyczne wysyłanie oraz manipulowanie parametrami żądania. Testy powinny obejmować również uprawnienia, ochronę przed powtarzalnymi zgłoszeniami i sprawdzenie, czy dane nie są ujawniane osobom, które nie powinny ich odczytywać. Bez takiej kontroli błąd może dotyczyć nie tylko wygody obsługi, lecz także poufności informacji. Formularz dostępny w środowisku produkcyjnym bez testów – praktyczne wskazówkiNajbezpieczniej jest przygotować listę scenariuszy przed publikacją. Powinna obejmować co najmniej poprawne wypełnienie formularza, pominięcie każdego pola obowiązkowego, wpisanie wartości o nieprawidłowym formacie, użycie znaków specjalnych, przesłanie dłuższego opisu oraz próbę ponownego wysłania tego samego zgłoszenia. Warto sprawdzić także zachowanie po odświeżeniu strony, cofnięciu do poprzedniego kroku i chwilowej utracie połączenia. Do testów powinno używać się danych jednoznacznie oznaczonych jako przykładowe. Pozwala to łatwo odróżnić próbę kontrolną od prawdziwego zgłoszenia i ogranicza ryzyko kontaktu z przypadkowymi osobami. Po każdym scenariuszu należy ustalić, czy rezultat odpowiada oczekiwaniu: czy pojawił się właściwy komunikat, czy dane zostały zapisane, czy odbiorca otrzymał informację i czy użytkownik wie, co nastąpi dalej. Przydatne jest sprawdzenie formularza w kilku popularnych przeglądarkach oraz na ekranie o różnej szerokości. Nie chodzi o tworzenie nieograniczonej liczby wariantów, lecz o potwierdzenie podstawowej dostępności i spójności działania. Należy zwrócić uwagę na obsługę klawiaturą, kolejność przechodzenia między polami, kontrast komunikatów, czytelność etykiet oraz możliwość poprawienia błędnie wpisanej wartości bez utraty pozostałej treści. Po wdrożeniu dobrze jest ustalić sposób obserwowania działania formularza. Można rejestrować liczbę rozpoczętych i zakończonych wysyłek, błędy odpowiedzi, czas przetwarzania oraz przypadki, w których użytkownik wraca do formularza po nieudanej próbie. Same statystyki nie zastępują testów, ale ułatwiają wykrycie sytuacji, w której formularz formalnie działa, a mimo to wiele osób nie kończy procesu. Jeśli formularz już został opublikowany bez wcześniejszej kontroli, wskazane jest ograniczenie zmian wykonywanych równocześnie. Najpierw należy ustalić, co dokładnie jest dostępne, dokąd trafiają dane i jakie procesy uruchamia wysłanie. Następnie można przeprowadzić kontrolę na kopii lub w odseparowanym miejscu, a dopiero później wprowadzać poprawki na stronie działającej. Takie uporządkowanie zmniejsza ryzyko, że podczas naprawy jeden problem zostanie zastąpiony innym. Kiedy formularz dostępny w środowisku produkcyjnym bez testów wymaga zgłoszenia do serwisuZgłoszenie sprawy do serwisu jest uzasadnione, gdy formularz przestał wysyłać dane, działa tylko na wybranym urządzeniu, wyświetla niezrozumiałe błędy albo powoduje wielokrotne tworzenie tego samego zgłoszenia. Warto przekazać opis objawu, informację o używanym urządzeniu i przeglądarce oraz, jeśli to możliwe, dokładny moment wystąpienia problemu. Pomocne bywa również zachowanie komunikatu błędu lub zrzutu ekranu, o ile nie zawiera on poufnych danych. Wsparcie może być potrzebne także wtedy, gdy formularz przyjmuje dane, ale nie ma pewności, czy są one poprawnie zapisywane. Dotyczy to sytuacji, w której nie przychodzi potwierdzenie, odbiorca nie widzi zgłoszenia, załączniki nie docierają albo po wysłaniu nie pojawia się żaden jednoznaczny komunikat. Przed przekazaniem sprawy warto nie ponawiać wysyłki z prawdziwymi danymi, aby nie doprowadzić do duplikatów lub przypadkowego ujawnienia informacji. W Warszawie takie przypadki można skonsultować z firmą Warszawskie Pogotowie Komputerowe 24/7. Przy zgłoszeniu dobrze jest jasno zaznaczyć, że chodzi o formularz udostępniony w działającym środowisku bez wcześniejszych testów, a także opisać, jaki rezultat powinien zostać osiągnięty. Pozwala to rozpocząć od rozpoznania problemu, ustalenia miejsca występowania błędu i zaplanowania kontroli obejmującej zarówno stronę widoczną dla użytkownika, jak i dalsze przekazywanie danych. Nie każdy błąd formularza oznacza awarię całej witryny, ale każdy powinien zostać potraktowany jako sygnał do uporządkowania procesu wdrożenia. Im wcześniej zostaną sprawdzone walidacja, zapis, powiadomienia, obsługa błędów i działanie na różnych urządzeniach, tym łatwiej ograniczyć skutki dla użytkowników. Formularz powinien być uznany za gotowy dopiero wtedy, gdy potwierdzono nie tylko jego wygląd, lecz także pełną drogę informacji od wpisania danych do zakończenia obsługi. |