SoapUI jest to oprogramowanie do testowania aplikacji posługujących się protokołem SOAP (Simple Object Acces Protocol) polegającej na wymianie informacji między aplikacjami za pomocą WebService’ów komunikujących się poprzez komunikaty w formacie XML.
Od tego artykułu przez kilka następnych chciałbym zaprezentować proces tworzenia i wykorzystywania zewnętrznej biblioteki Java w projektach z wykorzystaniem narzędzia SoapUI.
Dzisiejszy wpis będzie omawiać następujące tematy:
- Tworzenie projektu java z biblioteką umożliwiającą wykonywanie operacji na testach SoapUI
- Tworzenie klasy generującej przykładowe dane do testów
- Wczytanie zewnętrznej biblioteki java do SoapUI
- Przykładowe wykorzystanie wcześniej napisanej klasy
W kolejnych wpisach będę starał się rozwinąć temat, tak aby użytkownik wiedział co dzięki takiemu rozwiązaniu jest w stanie uzyskać. Wpisy są skierowane głównie do osób z co najmniej podstawową znajomością narzędzia SoapUI oraz z dobrą znajomością Javy 1.6+.
Środowisko z którego korzystam to: Eclipse Mars 4.5.1, SoapUI 5.2.1 oraz JavaSE 1.7.
Interfejsy wykorzystywane w SoapUI podczas cyklu wpisów są napisane przeze mnie i nie są dostępne dla użytkowników zewnętrznych, stąd polecam skorzystać a przykładowych interfejsów dostępnych w internecie.
Na początek stwórzmy projekt Java:
Teraz do projektu załączamy biblioteki które umożliwią nam operowanie na elementach SoapUI:
Klikamy drugim klawiszem na projekt -> BuildPath – > Configure BuildPath…
A następnie przechodzimy do zakładki Libraries:
Naciskamy „Add External Jars…” i wybieramy ścieżkę „{SoapUI_Install_Folder}/Bin” i wskazujemy na bibliotekę o nazwie „SoapUI{versja }.jar” i załączamy ja do projektu.
W moim interfejsie mam metodę zarejestruj, dodaje ona do bazy danych użytkownika z określonymi przeze mnie danymi gdzie login oraz email muszą być unikatowe i chciałbym, aby te dwie wartości zmieniały się w danych testowych, a konkretniej w CustomProperties mojego Test Case’a przy każdym wywołaniu testu:
Dodałem zatem krok groovy script, tak jak na załączonym screenie:
Zwróćcie proszę uwagę na to, co wskazuje druga strzałka „Script is invoked with log, context and testRunner variables” te 3 zmienne odpowiadają za możliwość operowania Soapem z poziomu groovy scriptu i będą nam niezbędne podczas używania klasy zewnętrznej.
Teraz możemy utworzyć klasę java, która będzie nam generować odpowiednie dane. Napiszę w niej 2 metody, które będą odpowiedzialne za generowanie adresu email oraz loginu:
Powyższa klasa, tak jak napisałem wcześniej, ma dwie metody i kontruktor przyjmujący „MockTestRunner” ze względu na to że takiego właśnie typu jest testRunner znajdujący się w Groovy Script Test Step.
Za jego pomocą, jak widać w oznaczonych liniach, dostałem się do przypadku testowego i zedytowałem pola „email” oraz „Login”.
Aby użyć ww. klasy jako zewnętrznej biblioteki, należy wyexportować nasz projekt do jara:
Drugi klawisz myszy na projekt -> export -> java -> Jar File, dodajemy nazwę i wybieramy miejsce docelowe dla zapisu.
Tak przygotowaną bibliotekę, dodajemy do katalogu: „{SoapUI_Install_Folder}/bin/ext” i restartujemy soapUI’a ponieważ zaczytuje on biblioteki zewnętrzne tylko podczas startu.
Teraz z biblioteki możemy korzystać w następujący sposób:
W następnym artykule rozwinę naszą bibliotekę i pokażę jakie dodatkowe korzyści daje załączenie jej do swojego projektu.
Chcesz lepiej zrozumieć aplikacje i systemy, które testujesz? Dołącz do ModernTester, poznaj najpotrzebniejsze narzędzia, frameworki oraz języki programowania i ćwicz na specjalnie przygotowanych środowiskach testowych: Platforma e-learningowa ModernTester
Zostaw komentarz