Testowanie GUI – przypadki testowe UI (przykłady)

Aby zrozumieć testowanie GUI, najpierw należy zrozumieć:

Co to jest GUI?

Istnieją dwa typy interfejsów aplikacji komputerowych. Interfejs wiersza poleceń to miejsce, w którym wpisujesz tekst, a komputer reaguje na to polecenie. GUI oznacza graficzny interfejs użytkownika, w którym wchodzisz w interakcję z komputerem za pomocą obrazów, a nie tekstu.

Poniżej przedstawiono elementy graficznego interfejsu użytkownika, które można wykorzystać do interakcji pomiędzy użytkownikiem a aplikacją:

GUI

Testowanie GUI to weryfikacja powyższych elementów.

Co to jest testowanie GUI?

Testowanie GUI to rodzaj testowania oprogramowania, który sprawdza graficzny interfejs użytkownika oprogramowania. Celem testowania graficznego interfejsu użytkownika (GUI) jest zapewnienie, że funkcjonalność aplikacji działa zgodnie ze specyfikacjami, poprzez sprawdzenie ekranów i elementów sterujących, takich jak menu, przyciski, ikony itp.

GUI to to, co widzi użytkownik. Powiedzmy, że jeśli odwiedzisz guru99.com, zobaczysz stronę główną, czyli GUI (graficzny interfejs użytkownika) witryny. Użytkownik nie widzi kodu źródłowego. Interfejs jest widoczny dla użytkownika. Szczególnie nacisk kładziony jest na strukturę projektu i obrazy, czy działają poprawnie, czy nie.

Testowanie GUI

W powyższym przykładzie, jeśli musimy przeprowadzić testowanie GUI, najpierw sprawdzamy, czy obrazy powinny być całkowicie widoczne w różnych przeglądarkach.

Dostępne są również linki, a przycisk powinien działać po kliknięciu.

Ponadto, jeśli użytkownik zmieni rozmiar ekranu, ani obrazy, ani treść nie powinny się zmniejszać, przycinać ani nakładać.

Potrzeba testowania GUI

Teraz podstawowa koncepcja testowania GUI jest jasna. Oto kilka pytań, które pojawią się w Twojej głowie

  • Po co testować GUI?
  • Czy to naprawdę potrzebne?
  • Czy testowanie funkcjonalności i logiki aplikacji to za mało? Więc po co tracić czas na testowanie interfejsu użytkownika.

Aby uzyskać odpowiedź, myśl jako użytkownik, a nie jako tester. Użytkownik nie ma żadnej wiedzy na temat oprogramowania/aplikacji XYZ. To interfejs użytkownika Aplikacji decyduje o tym, czy użytkownik będzie dalej korzystał z Aplikacji, czy nie.

Zwykły użytkownik najpierw zwraca uwagę na projekt i wygląd Aplikacji/Oprogramowania oraz na to, jak łatwo jest mu zrozumieć UI. Jeśli użytkownik nie czuje się komfortowo z Interfejsem lub uważa Aplikację za skomplikowaną do zrozumienia, nigdy więcej nie będzie z niej korzystał. Dlatego GUI jest przedmiotem zainteresowania i należy przeprowadzić odpowiednie testy, aby upewnić się, że GUI jest wolne od błędów.

Co testujesz podczas logowania GUI?

Poniższa lista kontrolna zapewni szczegółowe testowanie interfejsu graficznego podczas testowania oprogramowania.

  • Sprawdź wszystkie elementy GUI pod kątem rozmiaru, położenia, szerokości, długości i akceptacji znaków lub liczb. Na przykład musisz być w stanie dostarczyć dane wejściowe do pól wejściowych.
  • Sprawdź, czy możesz wykonać zamierzoną funkcjonalność aplikacji za pomocą GUI
  • Sprawdź, czy komunikaty o błędach są wyświetlane poprawnie
  • Sprawdź wyraźne rozgraniczenie różnych sekcji na ekranie
  • Sprawdź, czy czcionka używana w aplikacji jest czytelna
  • Sprawdź, czy wyrównanie tekstu jest prawidłowe
  • Sprawdź, czy kolor czcionki i komunikatów ostrzegawczych jest estetyczny
  • Sprawdź, czy obrazy mają dobrą klarowność
  • Sprawdź, czy obrazy są prawidłowo wyrównane
  • Sprawdź położenie elementów GUI dla różnych rozdzielczości ekranu.

Techniki testowania GUI

Techniki testowania GUI można podzielić na trzy części:

Testowanie ręczne

W tym podejściu ekrany graficzne są sprawdzane ręcznie przez testerów zgodnie z wymaganiami określonymi w dokumencie wymagań biznesowych.

Testowanie ręczne

Nagrywaj i odtwarzaj ponownie

Testowanie GUI można przeprowadzić za pomocą narzędzi do automatyzacji. Odbywa się to w 2 częściach. Podczas nagrywania kroki testowe są rejestrowane przez narzędzie do automatyzacji. Podczas odtwarzania zapisane kroki testowe są wykonywane w testowanej aplikacji. Przykład takich narzędzi – QTP.

Nagrywaj i odtwarzaj ponownie

Testowanie oparte na modelu

Testowanie oparte na modelu

Model to graficzny opis zachowania systemu. Pomaga nam zrozumieć i przewidzieć zachowanie systemu. Modele pomagają w generowaniu wydajnych przypadków testowych przy użyciu wymagań systemowych. W przypadku tego testowania opartego na modelu należy wziąć pod uwagę następujące kwestie:

  • Zbuduj model
  • Określ dane wejściowe dla modelu
  • Oblicz oczekiwany wynik dla modelu
  • Uruchom testy
  • Porównaj rzeczywistą moc wyjściową z oczekiwaną
  • Decyzja co do dalszych działań w sprawie modelu

Niektóre techniki modelowania, z których można wyprowadzić przypadki testowe:

  • Wykresy – przedstawiają stan systemu i sprawdzają stan po wprowadzeniu danych.
  • Tabele decyzyjne – tabele używane do określenia wyników dla każdego zastosowanego wkładu

Testowanie oparte na modelach to rozwijająca się technika generowania przypadków testowych na podstawie wymagań. Jego główną zaletą w porównaniu z powyższymi dwiema metodami jest to, że może określić niepożądane stany, które może osiągnąć Twój GUI.

Poniżej znajdują się narzędzia typu open source umożliwiające przeprowadzanie automatycznych testów interfejsu użytkownika.

Produkt Licencjonowane pod
AutoHotkey LPG
Selenium Apache
Sikuli MIT
Robot Framework Apache
Uzdatnianie wody BSD
Zestaw narzędzi Dojo BSD

Przykładowe przypadki testowe do testowania GUI

Testowanie GUI zasadniczo obejmuje

  1. Badanie wymiarów, położenia, szerokości, wysokości elementów.
  2. Testowanie wyświetlanych komunikatów o błędach.
  3. Testowanie różnych sekcji ekranu.
  4. Testowanie czcionki pod kątem jej czytelności.
  5. Testowanie ekranu w różnych rozdzielczościach z wykorzystaniem funkcji powiększania i pomniejszania, np. 640 x 480, 600×800 itd.
  6. Testowanie wyrównania tekstów i innych elementów, takich jak ikony, przyciski itp., czy są na właściwym miejscu, czy nie.
  7. Testowanie kolorów czcionek.
  8. Testowanie kolorów komunikatów o błędach i ostrzeżeń.
  9. Testowanie, czy obraz ma dobrą klarowność, czy nie.
  10. Testowanie wyrównania obrazów.
  11. Testowanie ortografii.
  12. Użytkownik nie może się denerwować podczas korzystania z interfejsu systemu.
  13. Testowanie, czy interfejs jest atrakcyjny, czy nie.
  14. Testowanie pasków przewijania w zależności od rozmiaru strony, jeśli takie istnieją.
  15. Testowanie wyłączonych pól, jeśli takie istnieją.
  16. Testowanie rozmiaru obrazów.
  17. Testowanie nagłówków, czy są prawidłowo wyrównane, czy nie.
  18. Testowanie koloru hiperłącza.

Demo: Jak wykonać test GUI

Tutaj użyjemy kilku przykładowych przypadków testowych dla poniższego ekranu.

Demo: Jak wykonać test GUI

Poniżej znajduje się przykład przypadków testowych, które składają się ze scenariuszy testów interfejsu użytkownika i użyteczności.

Przypadek testowy 01 — sprawdź, czy pole tekstowe z etykietą „Folder źródłowy” jest prawidłowo wyrównany.

Przypadek testowy 02 – Sprawdź, czy pole tekstowe z etykietą „Pakiet” jest prawidłowo wyrównany.

Przypadek testowy 03 – Sprawdź tę etykietę o nazwie „Przeglądaj” to przycisk znajdujący się na końcu tekstuBox z nazwą „Folder źródłowy".

Przypadek testowy 04 – Sprawdź tę etykietę o nazwie „Przeglądaj” to przycisk znajdujący się na końcu tekstuBox z nazwą „Pakiet".

Przypadek testowy 05 – Sprawdź, czy pole tekstowe z etykietą „Imię” jest prawidłowo wyrównany.

Przypadek testowy 06 – Sprawdź, czy etykieta „modyfikatory” składa się z 4 przycisków opcji o nazwach publiczny, domyślny, prywatny, chroniony.

Przypadek testowy 07 – Sprawdź, czy etykieta „modyfikatory” składa się z 4 przycisków opcji, które są odpowiednio ułożone w rzędzie.

Przypadek testowy 08 – Sprawdź, czy etykieta „Nadklasa”pod etykietą”modyfikatory” składa się z listy rozwijanej, która musi być odpowiednio wyrównana.

Przypadek testowy 09 – Sprawdź, czy etykieta „Nadklasa” składa się z przycisku z etykietą „Przeglądaj”, które muszą być odpowiednio wyrównane.

Przypadek testowy 10 – Sprawdź, czy kliknięcie dowolnego przycisku opcji powoduje zmianę domyślnego wskaźnika myszy na ręczny wskaźnik myszy.

Przypadek testowy 11 – Sprawdź, czy użytkownik nie może wpisać w menu rozwijanym „Nadklasa".

Przypadek testowy 12 – Sprawdź, czy w przypadku błędnego wyboru musi zostać wygenerowany odpowiedni błąd.

Przypadek testowy 13 – Sprawdź, czy błąd musi być wygenerowany w kolorze CZERWONYM tam, gdzie jest to konieczne.

Przypadek testowy 14 – Sprawdź, czy w komunikatach o błędach muszą zostać użyte odpowiednie etykiety.

Przypadek testowy 15 – Sprawdź, czy za każdym razem domyślnie muszą być wybrane pojedyncze przyciski opcji.

Przypadek testowy 16 – Sprawdź, czy przycisk TAB musi działać poprawnie podczas przeskakiwania na kolejne pole obok poprzedniego.

Przypadek testowy 17 – Sprawdź, czy wszystkie strony muszą zawierać właściwy tytuł.

Przypadek testowy 18 – Sprawdź, czy tekst strony musi być odpowiednio wyrównany.

Przypadek testowy 19 – Sprawdź, czy po zaktualizowaniu dowolnego pola musi zostać wyświetlony odpowiedni komunikat potwierdzający.

Przypadek testowy 20 – Sprawdź, czy można zaznaczyć tylko jeden przycisk radiowy i czy można zaznaczyć więcej niż jedno pole wyboru.

Wyzwania w testowaniu GUI

W inżynierii oprogramowania najczęstszy problem podczas wykonywania Testy regresji jest to, że interfejs GUI aplikacji często się zmienia. Bardzo trudno jest przetestować i określić, czy jest to problem, czy ulepszenie. Problem pojawia się, gdy nie masz żadnych dokumentów dotyczących zmian w GUI.

Narzędzia do testowania GUI

Poniżej znajduje się lista popularnych Narzędzia do testowania GUI :

  1. Selenium
  2. QTP
  3. Cucumber
  4. Jedwabny test
  5. Test ukończony
  6. Tester GUI Squisha

Kliknij tutaj, aby dowiedzieć się Selenium, QTP & Cucumber.

Podsumowanie

Sukces oprogramowania w ogromnym stopniu zależy od interakcji GUI z użytkownikiem i łatwości korzystania z jego różnych funkcji. Dlatego testowanie GUI jest bardzo ważne. Ręczne testowanie GUI może czasami być powtarzalne i nudne, a zatem podatne na błędy. W przypadku testowania GUI zdecydowanie zaleca się automatyzację.