W User Acceptance Testing (UAT), oprogramowanie jest testowane przez prawdziwych użytkowników w ich siedzibach. Jest również nazywany innymi nazwami, takimi jak testowanie beta i testowanie użytkownika końcowego. Jest on zasadniczo wykonywany w celu potwierdzenia, że opracowany system jest zgodny z wymaganiami użytkownika, które były dzielone z programistami przed rozpoczęciem rozwoju systemu.
- Co to jest Testowanie Akceptacji Użytkownika?
- Lista kontrolna testów akceptacji użytkownika (UAT)
- Inicjowanie projektu User Acceptance Testing
- Planowanie Testów Odbioru Użytkownika
- Projekt testów akceptacji użytkownika
- Wykonanie testów akceptacji użytkownika
- Testy akceptacji użytkownika Decyzje o wydaniu
- Działania po zakończeniu testów akceptacji użytkownika
- User Acceptance Testing Best Practices
- Znaj użytkowników, którzy ostatecznie będą używać oprogramowania
- Przygotuj plan Testów Akceptacji Użytkownika z dużym wyprzedzeniem
- Dobrze skonstruowany system zarządzania Testami Akceptacji Użytkownika
- Tworzenie scenariuszy opartych na wymaganiach biznesowych
- Jasno zdefiniuj kryteria akceptacji
- Etap, w którym przeprowadzane są testy akceptacji użytkownika
- Rozwój sekwencyjny
- Rozwój iteracyjny
- Podejście do testowania akceptacji użytkownika
- Przypadki testowe oparte na wymaganiach
- Przypadki testowe oparte na procesach biznesowych
- Przypadki testowe oparte na interfejsie użytkownika
- Setting priorities through Risk Based Testing
- Na przykład
- Przykłady testów akceptacji użytkownika
- Testy alfa
- Testowanie beta
- Wniosek
- Inne popularne artykuły:
Co to jest Testowanie Akceptacji Użytkownika?
Jest to rodzaj testów, które są wykonywane przez rzeczywistych użytkowników w ostatnim etapie testowania, przed wypuszczeniem produktu lub aplikacji do środowiska produkcyjnego lub na rynek.
Środowisko używane do przeprowadzania testów akceptacji użytkownika (UAT) jest podobne do środowiska produkcyjnego i nie jest środowiskiem deweloperskim.
Lista kontrolna testów akceptacji użytkownika (UAT)
W celu zapewnienia optymalnych wyników UAT ważne jest, aby zapewnić, że poniższe etapy i ich czynności testowe są objęte jako część testów akceptacji użytkownika.
- Inicjowanie projektu Testów Akceptacji Użytkownika
- Planowanie Testów Akceptacji Użytkownika
- Projektowanie Testów Akceptacji Użytkownika
- Wykonanie Testów Akceptacji Użytkownika
- Decyzje o wydaniu
- Działania po Testach Akceptacji Użytkownika
Działania, które są częścią każdego z powyższych etapów są podane poniżej.
Inicjowanie projektu User Acceptance Testing
Następujące czynności powinny być idealnie wykonane w ramach inicjowania projektu UAT.
- Identyfikacja kluczowych interesariuszy
- Wybór lidera zespołu
- Komunikowanie intencji biznesowych, celów i kryteriów akceptacji systemu
- Uzgodnić zasoby zespołu Testów Odbioru Użytkownika
- Uzgodnić dokumentację wspierającą Testy Odbioru Użytkownika
- Uzgodnić struktury podejmowania decyzji
- Uzgodnić na zespół Testów Odbioru Użytkownika
- Wprowadź szkolenie z zakresu Testów Odbioru Użytkownika
- Uformuj wstępny plan projektu dla Testów Odbioru Użytkownika
Planowanie Testów Odbioru Użytkownika
Podczas planowania UAT, należy wykonać poniższe zadania.
- Zidentyfikować metodę nabycia systemu w celu określenia najlepszego podejścia do Testów Akceptacji Użytkownika.
- Określić, czy intencje biznesowe i oczekiwania użytkowników zostały uchwycone i są mierzalne.
- Weryfikować, czy wymagania biznesowe zostały uchwycone.
- Sprawdź, czy wszystkie typy wymagań zostały uwzględnione.
- Zapisz kryteria akceptacji i sprawdź, czy są one odpowiednie.
- Zapewnij, że zakres jest jasny i istotny.
- Zachwyć i zweryfikuj procesy biznesowe.
- Oceń aktualną dokumentację i jej trwałość, aby służyła jako podstawa testowa.
Projekt testów akceptacji użytkownika
Ważne jest, aby zapewnić, że projekt testów dla UAT podąża za poniższymi krokami w celu zapewnienia, że UAT zapewnia pożądany wynik.
- Ustalenie kryteriów wejściowych dla Testów Akceptacji Użytkownika.
- Przegląd skryptów testowych, gdzie są dostępne.
- Zdefiniowanie strategii Testów Akceptacji Użytkownika.
- Przegląd istniejących warunków testowych, gdzie są dostępne i napisanie nowych.
- Przegląd istniejących przypadków testowych, gdzie są dostępne i napisanie nowych na podstawie warunków testowych.
- Napisanie skryptów testowych na podstawie przypadków testowych.
- Upewnienie się, że testy obejmują wszystkie wymagania.
Wykonanie testów akceptacji użytkownika
Następujące zadania muszą zostać wykonane w ramach wykonania testów UAT.
- Sprawdzenie dostępności środowiska testowego.
- Zdefiniowanie wysokopoziomowego harmonogramu testów względem strategii Testów Akceptacji Użytkownika w celu osiągnięcia priorytetów.
- Zdefiniowanie szczegółowego harmonogramu testów w celu osiągnięcia najlepszego wykorzystania zasobów.
- Pewność, że dziennik testów jest aktualizowany.
- Pewność, że incydenty są zgłaszane dokładnie i w odpowiednim czasie.
- Kontroluj regularnie rozwiązywanie defektów z zespołem deweloperskim i upewnij się, że nie ma wąskich gardeł.
- Generuj regularne raporty podsumowujące testy.
Testy akceptacji użytkownika Decyzje o wydaniu
Następujące elementy pomogą zespołowi w podjęciu decyzji, czy kontynuować wydanie, czy nie, po UAT.
- Identyfikacja statusu względem kryteriów akceptacji.
- Identyfikacja wysiłku i czasu wymaganego do spełnienia kryteriów akceptacji w szczegółach.
- Badanie alternatyw opartych na pozostałym ryzyku.
- Kryteria awaryjnego wydania, aby umożliwić kontrolowane wydanie.
- Przedstawienie statusu kluczowym interesariuszom wraz z alternatywnymi propozycjami wydania.
- Przygotowanie raportu z zakończenia testów akceptacji użytkownika wraz z zaleceniami.
Działania po zakończeniu testów akceptacji użytkownika
Następujące działania należy wykonać po zakończeniu UAT.
- Projekt i plan szkolenia użytkowników.
- Post release support.
- Testy ciągłe
- Post User Acceptance Testing raport z często zadawanymi pytaniami itp.
User Acceptance Testing Best Practices
Znaj użytkowników, którzy ostatecznie będą używać oprogramowania
Znaj swoją grupę docelową. Jakie są ich problemy/potrzeby? Jaka jest ich motywacja? Jak możesz do nich dotrzeć? Kiedy masz wszystkie te informacje przed rozpoczęciem Testów Akceptacji Użytkownika, to oszczędza Ci zmarnowanego wysiłku i pomaga Ci uzyskać ukierunkowane wyniki.
Przygotuj plan Testów Akceptacji Użytkownika z dużym wyprzedzeniem
Zwykle Testy Akceptacji Użytkownika są przeprowadzane przed wprowadzeniem oprogramowania na rynek i na tym etapie jesteś już pod presją dotrzymania terminów i jesteś podekscytowany reakcją użytkownika końcowego w odniesieniu do Twojego oprogramowania stąd planowanie Testów Akceptacji Użytkownika na tym etapie może skutkować pominięciem niektórych rzeczywistych przypadków użycia, które są częste. Dostępność zasobów może być również ograniczeniem na tym etapie.
Dobrze skonstruowany system zarządzania Testami Akceptacji Użytkownika
Dobrze skonstruowany system zarządzania Testami Akceptacji Użytkownika to taki, który zawiera łatwe opcje filtrowania, wydajne raportowanie, matrycę śledzenia, funkcje śledzenia błędów i bezpieczeństwo.
Tworzenie scenariuszy opartych na wymaganiach biznesowych
Zawsze dobrą praktyką jest przygotowanie scenariuszy testowych opartych na wymaganiach biznesowych w celu ukierunkowania na użytkownika końcowego.
Jasno zdefiniuj kryteria akceptacji
O tym, czy produkt przejdzie czy nie po rozwoju, decydują kryteria akceptacji, więc najlepiej jest jasno zdefiniować kryteria akceptacji.
Etap, w którym przeprowadzane są testy akceptacji użytkownika
Istnieje wiele sposobów rozwijania systemu, ale są one szeroko sklasyfikowane w 2 kategoriach:
- Rozwój sekwencyjny
- Rozwój iteracyjny
Rozwój sekwencyjny
Rozwój sekwencyjny wykorzystuje sekwencję etapów rozwoju, które zazwyczaj podążają w kształcie litery V. UAT jest końcowym poziomem testów, który testuje ukończony system w odniesieniu do wymagań biznesowych.
Rozwój iteracyjny
W podejściu iteracyjnym (takim jak rozwój Agile), projektowanie i testowanie odbywa się podczas krótkich sprintów, więc funkcjonalność systemu staje się dostępna przyrostowo na końcu każdego sprintu. UAT będzie wymagany przed uruchomieniem każdego sprintu.
Podejście do testowania akceptacji użytkownika
Podejście UAT opiera się na 3 elementach:
- Wymagania biznesowe
- Procesy biznesowe
- Oczekiwania użytkownika
Powinno istnieć podejście, które podąża za tymi 3 elementami.
Przypadki testowe oparte na wymaganiach
Przypadki testowe muszą obejmować wymagania biznesowe, każdy przypadek testowy powinien być powiązany z konkretnym wymaganiem na podstawie numeru ID. Przypadki testowe mogą być pisane krótko po zdefiniowaniu specyfikacji wymagań i jest to nazywane testami sterowanymi wymaganiami. Wadą tego podejścia jest to, że jeśli wymagania zawierają błędy, to przypadki testowe również będą błędne.
Przypadki testowe oparte na procesach biznesowych
Przypadki testowe oparte na procesach biznesowych są pisane w celu upewnienia się, że system, który jest dostarczany, będzie działał konkretnie we wspieraniu procesów biznesowych. Przypadki testowe muszą być w stanie pokazać, że wymagania zostały spełnione w sposób, który odzwierciedla jak organizacja będzie używać systemu.
Przypadki testowe oparte na interfejsie użytkownika
Przypadki testowe oparte na interfejsie użytkownika są zorganizowane wokół formularzy lub ekranów, które muszą być wypełnione. Przypadki testowe opierają się na wprowadzaniu danych, interakcji poprzez ekran i raportowaniu. User Interface driven test cases can be embedded within business process based test cases where the business process involves data entry, interaction or reporting.
Setting priorities through Risk Based Testing
UAT is usually performed in pressure because it is done just before the system is released to the end users for them to use it, so there is a need to find a way to do the best within the limited time available. W tym celu stosuje się technikę priorytetyzacji, aby najpierw przeprowadzić najważniejsze testy, tak aby każdy test, który jest pozostawiony niekompletny był mniej ważny niż ten, który jest zakończony. Testowanie oparte na ryzyku może być używane w połączeniu z innymi podejściami.
Na przykład
Testowanie oparte na ryzyku może być włączone do testowania opartego na wymaganiach, aby zapewnić, że najważniejsze obszary są testowane w pierwszej kolejności.
Jeśli system robi to, co jest wymagane, ale brakuje mu jakiejś szczegółowej części specyfikacji technicznej, to taki wynik powinien być zgłoszony, ale nie jest to 'show-stopper’.
Z drugiej strony, jeśli system spełnia każdy element specyfikacji technicznej, ale jest kłopotliwy w użyciu, to jest to powód do niepokoju.
Przykłady testów akceptacji użytkownika
Każde oprogramowanie z dowolnej dziedziny, takiej jak motoryzacja, podróże/turystyka itp. powinno przejść przez odpowiednie testy akceptacji użytkownika przed dostarczeniem do produkcji.
Załóżmy, że istnieje mobilne oprogramowanie śledzące, w którym administrator zarządza zasobami mobilnymi i jest to aplikacja oparta na sieci Web. Przeszła ona przez wiele różnych form testowania, takich jak testy funkcjonalne, testy integracyjne, testy systemowe, testy wydajnościowe itp., a teraz przychodzi kolej na najważniejszy poziom testowania i jest to test akceptacji użytkownika. Idealnie, powinno być wykonywane na dwóch poziomach:
Testy alfa
Ten rodzaj testów akceptacji użytkownika jest wykonywany przez testerów w siedzibie deweloperów w celu sprawdzenia ostatnich problemów przed dostarczeniem oprogramowania do użytkowników końcowych do testów beta.
Testowanie beta
Testowanie to jest wykonywane przez użytkowników końcowych w ich siedzibach i sprawdza wszelkie problemy przed wydaniem oprogramowania do produkcji.
Wniosek
Korzyść z testowania akceptacji użytkownika jest taka, że nie będzie żadnych niespodzianek, kiedy produkt zostanie wydany do produkcji/rynku do rzeczywistego użytku.
Inne popularne artykuły:
- Co to jest testowanie akceptacyjne lub User Acceptance Testing (UAT)?
- Co to jest Acceptance Test-Driven Development w metodyce Agile?
- Co to jest piramida testowa i kwadranty testowe w metodologii Agile?
- Co to są produkty pracy projektu w testowaniu Agile?
- Co to jest testowanie przypadków użycia w testowaniu oprogramowania?