Naucz się QTP (UFT)

Nasz założyciel, Ankur Jain, rozpoczął tę stronę internetową około 14 lat temu w 2006 roku. Dzięki swojemu bogatemu doświadczeniu z narzędziem QTP (QTP było pierwotnie narzędziem do automatycznego testowania oprogramowania firmy Mercury. QTP jest obecnie znany jako UFT One), chciał, aby ta strona stała się punktem kompleksowej obsługi dla uczących się QTP. To właśnie dzięki Waszej miłości i motywacji, strona wciąż jest silna i odwiedzana przez kilka tysięcy początkujących i zaawansowanych użytkowników UFT każdego dnia.

Od czasu uruchomienia tej strony, kilka rzeczy zmieniło się w świecie QTP. HP przejęło Mercury – oryginalną firmę, która stworzyła QTP. QTP stało się UFT, kiedy HP zdecydowało się połączyć testowanie GUI i API w jedno narzędzie. Przeczytaj pełną historię QTP i UFT. HP podzieliło się na dwie firmy HP Inc i HPE. W międzyczasie, przez te wszystkie lata, HPE wprowadziło kilka nowych innowacji w oprogramowaniu UFT. We wrześniu 2017 roku, HPE połączyło się z Micro Focus.

Zespół LearnQTP zdał sobie sprawę, że – podczas gdy nasze starsze artykuły były nadal aktualne – istnieje potrzeba nowego zestawu tutoriali UFT dla najnowszych wersji UFT. Tak więc uruchomiliśmy nowy zestaw samouczków UFT dla początkujących i zaawansowanych użytkowników UFT. Zaczniemy od podstaw i powoli będziemy rozwijać zaawansowane tematy.

Te samouczki UFT będą skonstruowane w taki sposób, że nawet zupełnie początkujący użytkownik automatycznego testowania oprogramowania będzie w stanie za nimi podążać. Tutoriale będą w Twoim własnym tempie, nie będzie żadnej presji. Możesz zaznaczyć link i wracać do nich, kiedy tylko poczujesz chęć nauki. Możesz nawet pobrać darmowy PDF z samouczkami UFT, który będzie dostępny na dole każdego artykułu, tak abyś mógł się uczyć nawet kiedy jesteś w podróży lub nie masz działającego połączenia z Internetem.

Zanim zanurkujemy w UFT, pozwól nam przejść przez elementarz testowania oprogramowania oraz jak i kiedy automatyzujemy testowanie oprogramowania.

Co to jest testowanie oprogramowania?

Sławny ekspert w dziedzinie testowania oprogramowania, dr Cem Kaner, definiuje testowanie oprogramowania jako –

Badanie techniczne testowanego produktu prowadzone w celu dostarczenia zainteresowanym stronom informacji związanych z jakością

Testowanie oprogramowania to proces, w którym tester/zespół testerów oprogramowania uruchamia program lub system w celu znalezienia błędów lub usterek, aby utrzymać poprawność i niezawodność programu.

Testowanie oprogramowania również waliduje i weryfikuje program, aby sprawdzić, czy wymagania biznesowe i techniczne są spełnione, i czy działa zgodnie z oczekiwaniami.

W weryfikacji, testerzy zapewniają, że system spełnił standardy i procesy organizacji, i odpowiadają na pytanie „Czy zbudowaliśmy właściwy system?”. System oznacza jedną lub więcej aplikacji oprogramowania, które wspierają funkcję biznesową. Testerzy zapewniają, że oprogramowanie, sprzęt, dokumentacja i personel są zgodne ze sobą poprzez poleganie na metodach przeglądowych lub niewykonalnych.

W walidacji, testerzy fizycznie upewniają się, że system spełnił wszystkie wymagania biznesowe i wymagania użytkownika, oraz że cechy i funkcjonalności działają zgodnie z projektem. Walidacja jest wykonywana poprzez wykonywanie funkcji systemu za pomocą serii testów, które mogą być obserwowane i oceniane przez testerów. Ponadto, walidacja koncentruje się na pytaniu „Czy zbudowaliśmy system poprawnie?”

Dlaczego powinniśmy przeprowadzać testy oprogramowania?

W testowaniu oprogramowania, głównym celem jest znalezienie defektów. Możemy uznać, że pewien stan jest wadliwy, jeżeli nie spełnia tego, czego się od niego oczekuje. Znalezienie defektów w testach na wczesnym etapie rozwoju oprogramowania zmniejszy lub pozwoli uniknąć ryzyka niepowodzenia, kosztów utrzymania, kosztów usuwania defektów i dostarczy lepszy program dla użytkownika.

Przykład: Docket Number powinien akceptować 12 znaków numerycznych. Jeżeli wprowadzone znaki są mniejsze lub większe niż wymagane, pojawi się komunikat „Invalid Entry. Please re-enter the Docket Number”, ale użytkownik wprowadził 10 znaków dla numeru sprawy i program zwrócił błąd wyjątku zamiast monitu informującego użytkownika o minimalnej wymaganej ilości znaków.

Innym powodem jest tworzenie programów wysokiej jakości. W testowaniu oprogramowania, tester/zespół nie może poprawić jakości, może ją tylko zmierzyć. Z punktu widzenia IT, Jakość oznacza zgodność i cechy programu z wymaganiami biznesowymi i technicznymi, które są spełnione. Z punktu widzenia użytkownika, jakość oznacza, że oprogramowanie jest zdatne do użytku. Jakość oprogramowania różni się w zależności od programu, ponieważ mają one swoją własną funkcjonalność i użyteczność. Tester oprogramowania musi zapewnić, że poglądy IT i użytkownika na jakość są spełnione.

Co to jest zautomatyzowane testowanie oprogramowania?

Zautomatyzowane testowanie oprogramowania polega na zautomatyzowaniu procesu manualnego poprzez pisanie skryptów testowych, które wykonują testy i mogą być uruchamiane wielokrotnie.

Automatyzacja testów jest używana do kontrolowania wykonania testów, porównywania rzeczywistych i oczekiwanych wyników, ustanawiania warunków wstępnych i innych funkcji kontroli i raportowania testów poprzez użycie oprogramowania.

Kiedy zautomatyzować testowanie oprogramowania?

Powszechnym przekonaniem, które widzimy wśród profesjonalistów zajmujących się testowaniem, jest to, że automatyzacja, za pomocą jakiejś magii, zwiększy jakość testowania.

Na wszystko jest czas i miejsce. Jeżeli test MOŻE być zautomatyzowany, nie oznacza to, że POWINIEN być zautomatyzowany. Mimo, że jest to strona poświęcona testowaniu automatycznemu, można by pomyśleć, że będziemy potępiać testowanie manualne. Jednak tak nie jest.

Kliknij na Tweet: If a test CAN be automated, it does not mean it SHOULD be automated http://ctt.ec/bLk49+ via @LearnQTP

Testy manualne i automatyczne idą ręka w rękę i powinny być komplementarne. Prosimy naszych stażystów i czytelników, aby upewnili się, że automatyzują test tylko wtedy, gdy jest to naprawdę potrzebne.

Oto kilka scenariuszy, w których automatyzacja jest uważana za świetną opcję:

  • Testy regresji/testy powtarzalne: Zasada kciuka dla testów ręcznych do automatycznych jest taka, że jeśli twoje testy muszą być wykonywane okresowo, są dobrym kandydatem do automatyzacji. Jednak wiąże się to z kilkoma zastrzeżeniami. Musisz rozważyć koszty stworzenia testów automatycznych w porównaniu z testami manualnymi. Koszty te obejmują złożoność automatyzacji, czas potrzebny na zbudowanie i utrzymanie skryptów automatyzacji i oczywiście czas i pieniądze potrzebne na przeszkolenie testerów w zakresie danego narzędzia.
  • Wielokrotne dane: Musisz uruchomić ten sam zestaw akcji dla kilku wartości danych.
  • Testy niewykonalne manualnie: Twoja aplikacja musi być przetestowana pod kątem miliona wejść w ciągu kilku godzin. To nie może być zrobione ręcznie, potrzebujesz narzędzia do testowania obciążenia.
  • Te same testy różne przeglądarki lub OS: Chciałbyś, aby Twoja aplikacja wyglądała dobrze na wszystkich powszechnie używanych przeglądarkach i systemach operacyjnych. Jeśli masz zestaw testów zawierający 50 przypadków testowych, które muszą być przetestowane z 20 różnymi zestawami wartości na 3 różnych zestawach przeglądarek i 2 systemach operacyjnych. To sprowadza całkowitą liczbę wykonywanych testów do 50*20*3*2= 6000. Ma sens automatyzacja takich przypadków testowych.
  • Testy mobilne: Przy tonach telefonów komórkowych dostępnych na rynku, wykonanie testów manualnych na wszystkich urządzeniach byłoby prawie niemożliwe. Firmy takie jak Amazon wymyśliły innowacyjne podejście do tego problemu, dzięki któremu umieszczają rzeczywiste urządzenia w chmurze, a Ty możesz testować swoją aplikację na urządzeniach za pomocą zautomatyzowanych skryptów. Ponownie, idealny kandydat do automatyzacji testów.

Ufamy, że spodobał Ci się ten elementarz testowania oprogramowania i zrozumiałeś jak decydujemy się zautomatyzować testowanie oprogramowania dla danego scenariusza. W następnym tutorialu zaczniemy od instalacji UFT i omówienia podstaw tego narzędzia – Tutorial 2: Wprowadzenie do UFT.

Możesz zapoznać się z kompletem dotychczasowych samouczków UFT, korzystając z poniższych linków:

  • Samouczek 1: Wprowadzenie do testowania oprogramowania
  • Samouczek 2: Wprowadzenie do UFT
  • Samouczek 3: Dodatki do UFT i Menedżer Dodatków
  • Samouczek 4: Wszystko o menu UFT
  • Tutorial 5: Kompletny przewodnik po panelach UFT
  • Tutorial 6: Nagraj swój pierwszy skrypt UFT

Podaj poniżej swoje imię i e-mail, a my postaramy się wysłać Ci tutoriale, jak tylko będą gotowe!

Do ciebie. Jak zdecydować się na testy automatyczne?

Jeśli chcesz być na bieżąco z kolejnymi artykułami na temat UFT (QTP). I recommend you to subscribe by Email and have new UFT articles sent directly to your inbox.