SoapUI Tutorial cz.1 – wprowadzenie

soapui2x

SoapUI jest stosunkowo prostym w obsłudze narzędziem do testów API. Mimo tego przy niedużym wysiłku może znacznie ułatwić przeprowadzanie testów lub też rozszerzyć ich zakres, co niesie za sobą oczywiste korzyści.

W trakcie tego kursu postaram się cyklicznie przedstawiać kolejne funkcje programu, a także przybliżę podstawowe pojęcia związane z testowaniem Web Serwisów.

Jest to jeden z wielu programów, które warto znać, jeżeli myślimy o pracy testera, zwłaszcza, jeżeli interesują nas aspekty techniczne.

Czym tak w ogóle jest Web Service? Dziwnie się czuję podając definicję czegoś, nad czym się zbytnio nie zastanawiam. Ale coś powiedzieć trzeba 🙂 Bazując na swoim doświadczeniu Wikipedii jest to:

realizowana programistycznie usługa świadczona poprzez sieć telekomunikacyjną, a w tym sieć komputerową, w szczególności przez Internet

Tego rodzaju usługi możemy spotkać niemal na każdym kroku. Udostępnienie tego artykułu też jest rozumiane jako pewnego rodzaju usługa, w końcu w pasku adresu przeglądarki widnieje adres, który mówi o tym, że ktoś (lub coś) ma Ci udostępnić treść tego wpisu.

Mogę zaryzykować i powiedzieć, że nie tworzy się teraz aplikacji, która nie ma potrzeby komunikacji z innymi modułami (zupełnie jak ludzie!). Nawet jeżeli jestem w błędzie, to przecież same aplikacje webowe posiadają najczęściej trzy warstwy. Zgodnie ze wzorcem MVC jest to:

  • Model – zazwyczaj baza danych, coś co reprezentuje wszystkie informacje, z których system korzysta
  • View – warstwa prezentacji, czyli to, co oglądamy w przeglądarce (Frontend)
  • Controller – to co zajmuje się logiką systemu (Backend).

Wszystkie warstwy są w pewnym stopniu niezależne. Jeżeli programujesz warstwę prezentacji, nie interesuje Cię, jak implementowany jest backend. Liczy się to, jak obie warstwy się komunikują.

W tym jak i w wielu innych przypadkach spotkacie się z faktem, że biblioteka, moduł, system posiada swoje API, czyli inaczej interfejs, za pomocą którego „porozumiewa” się ze światem. Znajdziemy to zarówno w prostym serwisie pogodowym, jak również w systemie obsługującym płatności internetowe. Aplikcacje takie z założenia mają być szeroko dostępne, wynika więc z tego, że przede wszystkim muszą działać niezależnie oraz, co ważne, posiadać jednolity zbiór metod pozyskiwania ich zasobów.

W trakcie procesu testowania, na pewnym etapie okazuje się, że mamy przed sobą system składający się z wielu różnych komponentów. Zależnie, na którym etapie testowania jesteśmy, musimy ocenić, czy  poszczególne moduły poprawnie komunikują się ze sobą. Często zdarza się też, że nie mamy dostępu do wszystkich modułów, jednak z uwagi na dobre praktyki testerskie, możliwie wcześnie testujemy to co już mamy, a brakujące elementy zastępujemy zaślepkami (stubs) oraz sterownikami (drivers). W tych, jak i wielu innych przypadkach przydaje się nam SoapUI.

W kolejnych częściach przejdziemy do konkretów. Jak większość nudnych tutoriali zaczniemy od testowania usług opartych na protokole SOAP (tak, tego sie też używa), pochylimy się chwilę nad RESTem, a później poznamy inne możliwości narzędzia. Nie zabraknie również wpisu o tym, co zrobić gdy jesteśmy biedni i nie stać nas na wersję PRO.

Pisząc ten kurs bazuję na własnych doświadczeniach, ale także na wiedzy zaczerpniętej z wielu źródeł. Te najcenniejsze postaram się umieścić w kolejnych wpisach. Jeżeli ktoś z Was uzna, że mijam się z prawdą, demoralizuję młodzież, nie znam się, zachęcam do pozostawienia komentarza pod artykułem. Zapewne w wielu przypadkach będziecie mieli rację. Wtedy na pewno ktoś z nas będzie miał okazję do zrewidowania swojej wiedzy i wyciągnięcia wniosków. Bo chyba o to tutaj chodzi 🙂

 

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s