step step guide jubula open source automated functional testing tool
(Szczegółowy samouczek z dużą ilością obrazów, więc pozwól mu się załadować)
Dziś nauczymy się popularnego narzędzie do testowania funkcjonalnego open source - Jubula.
Jest to projekt Eclipse do zautomatyzowanego testowania funkcjonalnego interfejsu GUI dla wielu aplikacji. Jest to pomocne przy pisaniu testów automatycznych z punktu widzenia użytkownika z niewielkimi lub brak umiejętności kodowania , oszczędzając czas i poprawiając czytelność i obsługę testów.
brama domyślna nie jest dostępna Windows 10
Szeroki wybór narzędzia do automatyzacji open source są dostępne na rynku z dużą ilością pomocy online.
Jeśli chodzi o Jubula , pomoc elektroniczna zawiera wiele informacji na temat wbudowanej struktury. Te informacje są bardzo przydatne dla tych nietechnicznych testerów, którzy nie są zaangażowani w kodowanie i chcą tworzyć skrypty automatyzacji za pomocą GUI Jubuli.
Ale testerzy automatyzacji technicznej, którzy chcą stworzyć dostosowany struktura używając Jubula, trudno jest uzyskać pomoc.
Ten szczegółowy samouczek został stworzony w celu podzielenia się wiedzą, którą zdobyłem w Jubula, aby pomóc Ci stworzyć dostosowane, solidne i elastyczne ramy testowania automatyzacji.
Przyjrzyjmy się najpierw temu s wbudowane ramy (Ta sekcja samouczka pomoże ci zrozumieć podstawy), a następnie kontynuuj Budowa frameworka w Jubula z wykorzystaniem kodu Java.
Czego się nauczysz:
- Podstawy - wbudowany framework:
- Przykładowe AUT:
- Projekt demonstracyjny
- Jak testować:
- Punkty, na które należy zwrócić uwagę
- Budowa frameworka w Jubula z wykorzystaniem kodu Java:
- LUB
- Tworzenie klasy mapowania obiektów
- Wykonywanie czynności testowych
- Praca z wieloma AUTami
- Wniosek
- rekomendowane lektury
Podstawy - wbudowany framework:
Instalacja i uruchomienie:
(Uwaga: kliknij dowolny obraz, aby wyświetlić powiększenie)
1) Przejdź do strony pobierania tutaj .
Uwaga - możesz sprawdzić tę stronę pobierania dla różnych opcji w zależności od funkcji, które Cię interesują.
dwa) Zarejestruj się i zaloguj.
3) Kliknij Pobierz instalatory.
4) Kliknij na strona pobierania pod Pliki do pobrania Jubula Sekcja.
5) Pobierz odpowiedni instalator (zgodnie z systemem operacyjnym).
6) Zainstaluj go za pomocą pobranego pliku exe plik i zapisz folder w preferowanej lokalizacji (zapisałem go w formacie C: Program Files ).
7) Po zakończeniu instalacji powinno być możliwe uruchomienie narzędzia ze „Wszystkie programy”.
8) Podczas uruchamiania utwórz obszar roboczy w preferowanej lokalizacji.
9) Ekran główny będzie wyglądał jak poniżej:
Przykładowe AUT:
Imponującą rzeczą w tym narzędziu jest to, że zawiera przykładowe AUT (testy aplikacji). AUT będą znajdować się w examples AUTs.
W tym przypadku znajduje się w C: Program Files jubula_8.2.0.021 examples AUTs
Projekt demonstracyjny
Teraz, gdy Jubula jest zainstalowana i dostępne są przykładowe AUT, spróbujmy zautomatyzować plik prosta funkcjonalność dodawania za pomocą aplikacji „swing” o nazwie „SimpleAdder”.
Tę aplikację można wywołać za pomocą pliku:
„C: ProgramFiles jubula_8.2.0.021 examples AUTs SimpleAdder swing SimpleAdder.cmd ”I wygląda jak poniżej:
Zadanie polega na wpisaniu „wartość1”, wprowadzeniu „wartości2”, kliknięciu przycisku „=” i zweryfikowaniu „wyniku”.
Jak testować:
Poniżej znajdują się kroki, które należy wykonać, aby zautomatyzować zadanie:
Krok 1 - Utwórz projekt.
Krok 2 - Utwórz bajty.
Krok 3 - Utwórz przypadek testowy, dołącz kroki testowe i dane map.
Krok 4 - Utwórz zestaw testów.
Krok 5 - Przypisz AUT do zestawu testów.
Krok 6 - Zamapuj przypadek testowy na zestaw testów.
Krok 7 - Mapuj logiczne obiekty testowe z technicznymi identyfikatorami obiektów.
Krok 8 - Uruchom zestaw testów.
Zobaczmy, jak szczegółowo wykonać każdy krok:
Krok # 1 - Utwórz projekt
Projekt w Jubula można traktować jako logiczną przestrzeń roboczą, w której wszystkie wymagane komponenty są gromadzone w celu wykonania zadania testowego.
Tworzenie projektu przebiega jak poniżej:
1) Idź do Test> Nowy.
dwa) Wpisz nazwę projektu, np. „DemoProject” i kliknij „Finish” (po kliknięciu „Next” powinieneś być w stanie utworzyć AUT. Ale „Finish” tutaj i spójrz na tworzenie AUT w kroku 2).
3) Przeglądarka Test Suite wyświetla utworzony projekt.
Krok # 2 - Utwórz AUT
Instancja testowanej aplikacji (SimpleAdder) musi zostać utworzona w Jubula w celu mapowania obiektów i uruchomienia zestawu testów.
1) Przejdź do Test> Właściwości.
dwa) Wybierz „AUT”.
3) Wprowadź nazwę AUT (może to być dowolna wartość zdefiniowana przez użytkownika, np. DemoAUTSimpleAdder).
4) Wybierz technologię, na której jest rozwijany AUT. (W tym przypadku jest to „swing”).
5) Kliknij „Dodaj” pod konfiguracją AUT.
6) Wprowadź AUT ID (może to być ponownie dowolna wartość zdefiniowana przez użytkownika, np. DemoAUTSimpleAdderID).
7) Wprowadź nazwę pliku wykonywalnego, tj. Plik wywołujący, który AUT zostanie otwarty. Jak wspomniano wcześniej, użyłem „C: ProgramFiles jubula_8.2.0.021 examples AUTs SimpleAdder swing SimpleAdder.cmd” .
Należy pamiętać, że aby wywołać AUT za pośrednictwem Jubuli, musi on być połączony z „agentami AUT”. Istnieją dwóch agentów AUT, z którymi Jubula może się połączyć:
- Wbudowany agent AUT zainstalowany na „localhost: 60001”
- Zewnętrzny agent AUT zainstalowany na „localhost: 60000”
Po połączeniu Jubuli z jednym z agentów AUT, powinno być możliwe wywołanie aplikacji za jego pośrednictwem. Poniższy zrzut ekranu przedstawia sposób łączenia się z agentami AUT. Tutaj łączę się z wbudowanym agentem AUT.
Poniższy zrzut ekranu przedstawia sposób łączenia się z agentami AUT. Tutaj łączę się z wbudowanym agentem AUT.
Gdy agent AUT jest połączony z Jubulą, można wywołać AUT (DemoAUTSimpleAdder) jak poniżej:
AUT zostanie wywołany jak poniżej. Aplikacja może działać w tle. Ale na tym etapie wolę zamknąć aplikację, aby wygodnie wykonać pozostałe kroki.
Krok # 3 - Utwórz przypadek testowy, dołącz kroki testowe i dane map
Jest to kluczowy krok, na którym odbywa się faktyczny rozwój skryptów automatyzacji (bez kodowania).
W lewej dolnej części narzędzia znajduje się przeglądarka przypadków testowych, w której można opracowywać przypadki testowe użytkowników.
1) Kliknij prawym przyciskiem myszy i przejdź do opcji Nowy, aby utworzyć nowy przypadek testowy.
dwa) Wpisz nazwę przypadku testowego i kliknij „OK” (np. DemoTestCase).
3) Przeglądarka przypadków testowych powinna teraz zawierać przypadek testowy utworzony przez użytkownika wraz z przypadkami testowymi wbudowanymi w Jubula.
4) Kliknij dwukrotnie utworzony przypadek testowy. Pusty przypadek testowy zostanie otwarty w środkowym panelu.
5) Przeciągnij i upuść odpowiednie działania testowe z „akcji podstawowych Jubuli” do przypadku testowego.
Jak pokazano na poniższych zrzutach ekranu:
- Aby wprowadzić wartość1 i wartość2, użyj opcji „Komponent z wprowadzaniem tekstu - zamień tekst”.
- Aby kliknąć przycisk równa się, użyj „Kliknij lewy pojedynczy”.
- Aby sprawdzić wartość, użyj opcji „Komponent z wprowadzaniem tekstu - sprawdź tekst”.
6) Teraz dla każdego etapu testu wprowadź poniższe, jeśli ma to zastosowanie (np. Kliknięcie przycisku nie wymaga żadnych danych):
- Nazwa referencyjna przypadku testowego (opis etapu testowego).
- Nazwa komponentu (nazwa logiczna, na którą będzie mapowany identyfikator techniczny).
- Dane - Dane można wprowadzić jako wartość bezpośrednią, np. 10, 20 lub parametryzowane za pomocą zmiennych np. = Wartość1, = Wartość2 lub podane przez arkusz programu Excel. W tym przypadku parametryzuję dane).
do)
b)
do)
re)
7) Jak wspomniano w poprzednim kroku, kiedy wartości danych są sparametryzowane, zaznacz przypadek testowy jak poniżej. Powinieneś być w stanie zobaczyć siatkę, w której można zdefiniować wartości zmiennych. Użyj przycisku „Dodaj”, aby wstawić wiersz danych. Możesz mieć n liczby wierszy danych dla n liczby iteracji wykonania.
do)
b)
Krok # 4 - Utwórz zestaw testów
Zestaw testów Jubula to możliwy do uruchomienia komponent w ramach projektu, w którym przypadki testowe zdefiniowane przez użytkownika są sekwencjonowane w celu wykonania.
1) Kliknij projekt prawym przyciskiem myszy i przejdź do opcji Nowy, aby utworzyć nowy zestaw testów.
dwa) Wprowadź nazwę zestawu testów i kliknij OK (np. DemoTestSuite).
3) Powinieneś być w stanie zobaczyć utworzony zestaw testów w projekcie.
Krok # 5 - Przypisz AUT do zestawu testów
Jeśli istnieje tylko jeden AUT zdefiniowany w Jubula, AUT zostanie automatycznie wybrany dla zestawu testów. Ale gdy istnieje wiele AUT, bardzo ważne jest, aby upewnić się, że zestaw testów działa na poprawnym AUT.
1) Kliknij dwukrotnie zestaw testów i zaznacz to samo na środkowym panelu.
dwa) Wybierz AUT z listy rozwijanej.
Krok # 6 - Zamapuj przypadek testowy na pakiet testowy
Przeciągnij i upuść przypadek testowy do zestawu testów. Podobnie w zestawie testów można sekwencjonować wiele przypadków testowych.
Podczas zapisywania powinieneś być w stanie zobaczyć przypadek testowy w zestawie testów, jak poniżej:
Krok # 7 - Zmapuj logiczne obiekty testowe za pomocą technicznych identyfikatorów obiektów
1) Kliknij prawym przyciskiem myszy zestaw testów i otwórz za pomocą edytora mapowania obiektów.
dwa) Zostaną wyświetlone wszystkie logiczne komponenty w zestawie testów, dla których mają być odwzorowane nazwy techniczne.
3) Wywołaj AUT.
4) Kliknij ikonę mapowania obiektów dla konkretnego AUT.
5) Przesuń kursor na pole, dla którego musisz zidentyfikować nazwę techniczną. Pole zostanie podświetlone na zielono.
6) Naciśnij Ctrl + Shift + Q, aby mieć nazwę techniczną odpowiedniego pola w sekcji nieprzypisanych nazw technicznych. Powtórz te czynności dla wszystkich pól w zestawie testów.
7) Teraz mapuj nieprzypisane nazwy komponentów z nieprzypisaną nazwą techniczną poprzez proste przeciąganie i upuszczanie.
8) Zapisz obszar roboczy i wyjdź z trybu mapowania obiektów.
Krok # 8 - Uruchom zestaw testów
Teraz zestaw testów jest gotowy do uruchomienia. Upewnij się, że AUT jest wywoływany za pomocą Jubula.
Kliknij przycisk Uruchom w przeglądarce zestawu testów.
(Możesz również aktywować aplikację jako pierwszy krok. Jeśli jednak jej nie masz, upewnij się, że aktywujesz aplikację po uruchomieniu zestawu testów).
Wyniki można zobaczyć jak poniżej:
Punkty, na które należy zwrócić uwagę
Przesyłając dane do zestawu testów za pomocą programu Excel, podaj lokalizację pliku programu Excel w przykładowym formacie:
C: //Data//Data.xls
W powyższej demonstracji dane są parametryzowane przy użyciu zmiennych „= Wartość1”, = „Wartość2” i = „Wynik”.
W takim przypadku, gdy wartości muszą zostać przekazane przez plik Excela, upewnij się, że plik zawiera odpowiednie kolumny o nazwach dokładnie pasujących do zmiennych, a nazwa arkusza jest ustawiona na język wybrany w momencie tworzenia projektu.
Zewnętrznego agenta AUT (localhost: 60000) można podłączyć po uruchomieniu agenta z poziomu „Wszystkie programy”, gdzie można znaleźć opcje uruchamiania i zatrzymywania agenta.
W ramach zadania testowego można utworzyć wiele zestawów testów. Byłoby to pomocne, gdy testowanie dotyczy więcej niż jednej aplikacji (różne AUT można przypisać do różnych zestawów testów).
To wyjaśnia podstawy korzystania z narzędzia. Bardzo ważne jest, aby zapoznać się z podstawowymi działaniami Jubuli, aby zautomatyzować złożone funkcje i radzić sobie z różnymi obiektami testowymi.
Jubula może również zautomatyzować aplikacje opracowane przy użyciu różnych technologii, a nie tylko aplikacji typu swing.
Budowa frameworka w Jubula z wykorzystaniem kodu Java:
Dzięki powyższej podstawowej wiedzy zobaczmy teraz, jak zbudować niestandardowy framework w Jubula przy użyciu kodu Java.
Niektórzy mogą nie uznać automatyzacji w obszarze roboczym Jubula za elastyczną i wielokrotnego użytku. Rozległa automatyzacja może nie być możliwa. Ale dla każdej akcji, którą wykonaliśmy przy użyciu interfejsu GUI Jubula, istnieje odpowiednia metoda Java.
W tej sekcji zobaczymy podstawy takich metod Java, za pomocą których można zbudować dowolny skomplikowany framework.
Słoiki
Jary wymagane do tych metod są dostępne w folderze instalacyjnym Jubuli:
C: Program Files jubula_8.2.0.021 development api
LUB
Najpierw zobaczmy, jak połączyć się z agentem AUT i jak wywołać AUT, tworząc identyfikator AUT przy użyciu konfiguracji AUT
Potrzebujemy poniższych zmiennych:
AUTAgent autagent = null; AUTConfiguration autconfiguration = null; AUTIdentifier autidentifier = null; AUT aut = null;
Łączenie się z agentem AUT:
autagent = MakeR.createAUTAgent('localhost',60000); autagent.connect();
Uruchomienie AUT:
autconfiguration = new SwingAUTConfiguration('Autidentifier', 'Autidentifier','runlocal.bat', 'C:\Application',null,Locale.getDefault()); autidentifier = autagent.startAUT(autconfiguration); aut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); aut.connect();
Gdzie runlocal.bat to plik wykonywalny, a C: \ Aplikacja to lokalizacja, w której znajduje się plik wykonywalny.
Możemy również stworzyć konfigurację dla innych zestawów narzędzi.
Np. JavaFXAUTConfiguration, RCPAUTConfiguration, HTMLAUTConfiguration.
Czynności testowe można teraz wykonać przy użyciu instancji 'Lub' . Ale musimy mieć identyfikatory obiektów, aby wykonać czynności testowe.
Tworzenie klasy mapowania obiektów
Kliknij prawym przyciskiem myszy edytor mapowania obiektów, wybierz „Export Object Mapping to File” od „Użyj w API” i wyeksportuj szczegóły mapowania obiektów do klasy Java.
testy jednostkowe vs testy funkcjonalne vs testy integracyjne
Uwzględnij tę klasę w projekcie. Zapisałem go jako OM.java, gdzie jest obecna identyfikacja techniczna każdego obiektu w edytorze mapowania obiektów.
Wykonywanie czynności testowych
Czynności testowe można wykonać w dwóch krokach:
Krok 1: Zdefiniuj komponent, na którym ma zostać wykonane działanie testowe.
TextInputComponent input1 = SwingComponents.createJTextComponent(OM.txtValue1); TextInputComponent input2 = SwingComponents.createJTextComponent(OM.txtValue2); ButtonComponent equals = SwingComponents.createAbstractButton(OM.btnEquals); TextComponent result = SwingComponents.createJLabel(OM.txtResult);
Krok 2 : Wykonaj akcję.
aut.execute(input1.replaceText(“10”), 'jubula'); aut.execute(input2.replaceText(“15”), 'jubula'); aut.execute(equals.click(1,InteractionMode.primary), 'jubula'); aut.execute(result.checkText(“25',Operator.equals), 'jubula');
Gdzie „Jubula” to tylko fikcyjny tekst, który najlepiej powinien zawierać opis działania.
Instrukcja „execute” zawiera CAP (C - Component, A-Action, P-Parameter (Data)).
Akcja i parametr odpowiadają tym samym przypadkom testowym w obszarze roboczym Jubula.
Praca z wieloma AUTami
Praca z wieloma aplikacjami i przełączanie się między nimi jest nieco trudne, gdy tworzysz własny framework przy użyciu metod Jubula Java.
Mając do czynienia z wieloma aplikacjami, upewnij się, że AUT jest aktywowany przed wykonaniem czynności, a to samo jest dezaktywowane po zakończeniu.
Podczas aktywacji:
- Połącz autagent.
- Lub połącz.
Podczas dezaktywacji:
- Połącz albo.
- Odłącz autagenta.
na przykład
Activate(autidentifier1); //perform actions on aut1 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier1); Activate(autidentifier2); //perform actions on aut2 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier2); Activate(autidentifier1); //perform actions on aut1 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier1);
Funkcje Aktywuj i Dezaktywuj powinny wyglądać mniej więcej tak:
public static void Activate(AUTIdentifier autidentifier){ if(autagent.isConnected()) { autagent.disconnect(); autagent.connect(); } else autagent.connect(); if(Currentaut==null){ Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } else{ if(Currentaut.isConnected()){ Currentaut.disconnect(); Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } else{ Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } } } public static void DeActivate(AUTIdentifier autidentifier){ if(Currentaut.isConnected()) Currentaut.disconnect(); if(autagent.isConnected()) autagent.disconnect(); }
Wniosek
Na końcu tego artykułu trzeba było posiadać dobrą wiedzę w zakresie korzystania z istniejącego frameworka Jubuli i tworzenia własnego frameworka przy użyciu metod Jubuli w języku Java.
Tutaj badaliśmy automatyzację komponentów swingowych Java. Jednak Jubula może pracować na wielu technologiach.
Automatyzacja wielu aplikacji (tej samej i różnych technologii) w tym samym czasie to najtrudniejszy obszar. Kroki opisane w sekcji Praca z wieloma AUTami powinny naprawdę pomóc.
Myśląc o zbudowaniu niestandardowego frameworka przy użyciu Jubuli, musisz się zastanawiać, jak zdefiniować różne komponenty testowe (np. Przycisk, tekst, tekst, drzewo, tabela itp.), Jakie są wszystkie różne akcje, które można wykonać na tych komponentach i jakie dane są wymagane dla każdego działania.
Aby dowiedzieć się, jak definiować różne komponenty i jak wykonywać różne czynności testowe za pomocą polecenia „wykonaj”, zapoznaj się z „Podręcznikiem Jubula” tutaj .
Spróbuj!
O autorze: To jest poradnik dla gości autorstwa Geethalakshmi. Pracuje jako główny inżynier techniczny w wiodącej organizacji testującej oprogramowanie, z dużym zainteresowaniem badaniem funkcjonalnych narzędzi automatyzacji.
Zapraszam do zgłaszania uwag / zapytań dotyczących narzędzia Jubula.
rekomendowane lektury
- Samouczek dotyczący narzędzia do testowania dostępności WAVE
- Testy funkcjonalne a testy niefunkcjonalne
- Samouczek Parrot QA: Przegląd narzędzia do testowania funkcjonalnego w różnych przeglądarkach
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Różnice między testowaniem jednostkowym, testowaniem integracyjnym i testowaniem funkcjonalnym
- Testy funkcjonalne a testy wydajnościowe: czy należy je wykonywać jednocześnie?
- Przewodnik krok po kroku dotyczący wdrażania Proof of Concept (POC) w testowaniu automatyzacji
- Przewodnik krok po kroku, jak uzyskać pierwszy płatny projekt testowania w ramach crowdsourcingu