scriptless test automation framework
Wszystko, co musisz wiedzieć o bezkodowej lub bezskryptowej strukturze automatyzacji testów i najlepszych narzędziach. Lista najpopularniejszych i najpopularniejszych bezskryptowych narzędzi do automatyzacji testów dla telefonów komórkowych z funkcjami i porównaniami:
Ten artykuł zawiera pełne omówienie struktury automatyzacji bez skryptów w prostych słowach.
Cele projektowe, wymagania wdrożeniowe, korzyści i mity automatyzacji bezskryptowej są wyjaśnione za pomocą doskonałych przykładów ułatwiających zrozumienie.
Kończąc ten artykuł, uzyskasz dobry wgląd we wszystkie odpowiedzi na pytania „dlaczego”, „co”, „kiedy” i „jak” związane z tym schematem.
Czego się nauczysz:
- Poziomy automatyzacji
- Ogólne funkcje platform bez skryptów
- Najlepsze bezskryptowe narzędzia do automatyzacji testów
- Cele projektowe
- Wgląd w wymagania dotyczące implementacji
- Zalety bezskryptowej automatyzacji testów
- Mity o automatyzacji bez skryptów
- Przykłady bez skryptów
- Wniosek
Poziomy automatyzacji
Rzućmy okiem na poziomy automatyzacji, zanim zagłębimy się w bezkodową strukturę automatyzacji testów.
# 1) Skrypty / kodowanie
Jak sama nazwa wskazuje, wymaga to stworzenia programu / oprogramowania do automatyzacji testów lub procesów.
Przykład: Jeśli musisz wykonać testy jednostkowe określonej funkcji lub klasy, musisz utworzyć programy testowe, aby przetestować swoją funkcję lub klasę. Nie ma sposobu na zautomatyzowanie testów jednostek bez kodowania.
Ogólnie rzecz biorąc, jeśli plik narzędzie do automatyzacji lub framework nakłada na testerów obowiązek stworzenia kodu lub skryptu zapewniającego dane wejściowe do testów, wykonanie i raportowanie testów automatycznych, a następnie takie narzędzia są klasyfikowane na tym poziomie.
# 2) Bez skryptów
Na tym poziomie nie potrzebujesz żadnej wiedzy z zakresu kodowania ani skryptów, aby tworzyć testy automatyczne. Jednak jako ramy dobrą praktyką jest zapewnienie możliwości dostosowywania.
W przypadku zaawansowanych użytkowników dostosowanie można przeprowadzić, pisząc własny kod obejmujący niektóre unikalne scenariusze testowe.
# 3) Zaawansowana automatyzacja z wykorzystaniem sztucznej inteligencji (AI)
To najwyższy poziom automatyzacji, jaki można osiągnąć:
- Twórz skrypty testowe z dokumentów przypadków testowych (prawdopodobnie przy użyciu technologii przetwarzania języka naturalnego).
- Automatyczne skrypty testowe oparte na zmianach aplikacji w celu efektywnego testowania regresji.
- Automatycznie generuj skrypty testowe na podstawie działań użytkownika / przypadków użycia w testowanej aplikacji. To jest zaawansowana wersja tradycyjnej funkcji nagrywania i odtwarzania.
- Automatyczna walidacja wyników testów oparta na uczeniu maszynowym bez wprowadzania danych przez użytkownika na temat tego, co wymaga walidacji i analizy testów.
W tym artykule skupimy się na automatyzacji poziomu 2, która jest pozbawiona skryptów.
Wcześniej zobaczmy listę niektórych z najlepszych narzędzi do automatyzacji bez skryptów.
Ogólne funkcje platform bez skryptów
Tradycyjnie testowanie automatyczne wymaga tworzenia złożonych skryptów, często wymagając silnych umiejętności inżynieryjnych. Co więcej, te skrypty testowe są zazwyczaj „kruche”, tj. Psują się, gdy aplikacja się zmienia lub gdy aplikacja jest wykonywana na różnych urządzeniach.
Na tym polega atrakcyjność platform automatyzacji bez skryptów. Oferują organizacjom mało złożoną i opłacalną możliwość wykorzystania mocy testowania automatycznego bez związanej z tym złożoności i kosztów tworzenia skryptów.
Dlatego przy wyborze mobilnej platformy Scriptless Automation należy upewnić się, że:
- Skrypty testowe można tworzyć w intuicyjny sposób „bez kodu”.
- Skrypty testowe mogą być wykonywane na szerokiej gamie urządzeń i systemów operacyjnych bez przerywania pracy
- Skrypty testowe można eksportować w otwartym standardzie (np. Appium), aby zapobiec uzależnieniu od dostawcy.
Weryfikacja faktów: Według Kobiton 36% organizacji wydało w zeszłym roku ponad 100 000 USD na testowanie aplikacji mobilnych. Z ankiety przeprowadzonej przez organizacje ds. Kontroli jakości w zakresie testowania aplikacji mobilnych wynika, że 84% organizacji testujących ufa, że testowanie na prawdziwym urządzeniu zapewni im lepszy wskaźnik sukcesu niż używanie emulatora lub symulatora.
różnica między C C ++ i JavaWskazówka dla profesjonalistów: Oceniając platformy do automatyzacji testów bezskryptowych, należy wziąć pod uwagę opcje wdrażania (chmura publiczna, chmura prywatna, lokalnie), obsługiwane platformy, testowanie na rzeczywistych urządzeniach, obsługę testów automatyzacji (Selenium lub Appium), dostosowywanie skryptów i koszty . Narzędzie powinno mieć mniej czynności konserwacyjnych, łatwą konfigurację i zapewniać lepszą wydajność. Narzędzie powinno zostać wybrane z uwzględnieniem wymagań biznesowych. = >> Skontaktuj się z nami zasugerować listę tutaj.
Najlepsze bezskryptowe narzędzia do automatyzacji testów
Porównanie najlepszych platform bezskryptowych do testowania aplikacji mobilnych
Rozlokowanie | Testowanie automatyczne | Platforma | Bezpłatna wersja próbna | Cena £ | |
---|---|---|---|---|---|
TestCraft | SaaS | Selen | Testy można przeprowadzać na wielu platformach. | Dostępny. | Uzyskaj wycenę. |
Selenium IDE | Hostowane w chmurze | Selen | Windows, Mac i Linux. | - | Darmowy |
Zap Test | Oparta na chmurze. | - | Wieloplatformowy | Dostępny | Uzyskaj wycenę. |
Kobiton | Lokalnie i w chmurze. | Pełne wsparcie dla Appium i Selenium | Urządzenia z systemem iOS i Android. | Bezpłatna wersja próbna dostępna przez 15 dni z 50 urządzeniami. | Zespół: 40 USD / miesiąc Organizacja: 415 USD / miesiąc Przedsiębiorstwo: Uzyskaj wycenę. |
Ranorex | Zainstalowany system Windows. | Selen lub kątomierz | Ranorex Studio: Windows. Ranorex Webtestit: platformy Windows, Mac i Linux | 30 dni | Zaczyna się od 2990 USD. |
Odkryjmy!!
Najważniejsze narzędzia należące do tej kategorii są wymienione poniżej w celach informacyjnych.
# 1) TestCraft
TestCraft to bezskryptowa platforma do automatyzacji testów Selenium. Jego rewolucyjna technologia sztucznej inteligencji i unikalne modelowanie wizualne pozwalają na szybsze tworzenie i wykonywanie testów, eliminując jednocześnie koszty utrzymania testów.
Testerzy tworzą w pełni zautomatyzowane scenariusze testów bez kodowania. Klienci szybko znajdują błędy, publikują częściej, integrują się z CI / CD, zatwierdzają i poprawiają ogólną jakość swoich produktów cyfrowych.
Kluczowe cechy:
- Nie są wymagane żadne umiejętności programistyczne. Wykorzystaj wiedzę biznesową testerów manualnych i pozwól im tworzyć bezkodowe scenariusze testów automatycznych.
- Znacząco obniż koszty utrzymania. Skrypty są automatycznie dostosowywane do zmian dzięki naszemu algorytmowi AI. Główne zmiany są dostosowywane za pomocą kilku kliknięć.
- Na bazie selenu. Szybko integruj i wykorzystuj moduły opracowane przez społeczność.
- Zapewnia natychmiastową wartość. Nic do zainstalowania (SaaS). Łatwe do opanowania.
=> Odwiedź witrynę TestCraft
# 2) ACCELQ
Prosta w użyciu, wydajna platforma automatyzacji testów oparta na sztucznej inteligencji.
ACCELQ to jedyna platforma ciągłego testowania oparta na chmurze, która bezproblemowo automatyzuje testowanie API i sieci bez pisania nawet jednej linii kodu. Zespoły IT różnej wielkości używają accelQ do przyspieszenia testów poprzez automatyzację krytycznych aspektów cyklu życia, takich jak projektowanie testów, planowanie, generowanie testów i wykonywanie.
Przeczytaj także = >> Recenzja AccelQ
Klienci accelQ zazwyczaj oszczędzają ponad 70% kosztów związanych ze zmianami i konserwacją podczas testów, rozwiązując jeden z głównych problemów w branży. accelQ umożliwia to dzięki rdzeniowi opartemu na sztucznej inteligencji, który zapewnia automatyzację samonaprawiania się wśród innych unikalnych możliwości.
Koncentracja na projektowaniu i doświadczeniu użytkownika leży u podstaw ciągłego innowacyjnego podejścia accelQ z nieustannym dążeniem do przyspieszenia testów i poprawy jakości dostarczanej klientom.
Kluczowe możliwości:
- Wizualne modelowanie aplikacji na potrzeby projektowania i automatyzacji cyklu życia.
- Bezkodowa automatyzacja API i UI w tym samym przepływie.
- Automatyczne generowanie przypadków testowych i planowanie danych.
- Automatyzacja w sprincie z wieloma warstwami abstrakcji.
- Wbudowane funkcje zarządzania testami i planowania.
- Bezproblemowa integracja CI / CD i Jira / ALM z naturalną identyfikowalnością.
- Moc samonaprawiania dzięki silnikowi analitycznemu w czasie wykonywania zapewniającej niezawodną automatyzację.
- Brak blokady dostawcy, rozszerzalna struktura dostosowana do oprogramowania typu open source.
# 3)ZapTest
Najlepszy dla Małe i duże firmy lub start-upy.
Cena £: Uzyskaj wycenę szczegółów cenowych.
ZapTest to rozwiązanie dla przedsiębiorstw, które optymalizuje automatyzację testów dzięki mniejszej liczbie skryptów, automatycznej dokumentacji i równoległym wykonywaniu. Obsługuje skrypt VB i JavaScript. Może testować dowolny interfejs użytkownika i interfejs API.
Funkcje:
- Skrypt wygenerowany za pośrednictwem tej platformy może być używany na komputerze, telefonie lub tablecie.
- Może być używany do automatyzacji testów UI i API.
- Dokumentacja testowa zostanie wygenerowana automatycznie.
- Skrypty testowe można tworzyć dla aplikacji na żywo, makiet, scenariuszy wideo i odniesień tekstowych.
Werdykt: Narzędzie pozwoli na automatyczne uruchamianie skryptów na wszystkich środowiskach testowych jednocześnie. Usprawni to automatyzację testów dzięki scenariuszom wideo i odniesieniom tekstowym.
Stronie internetowej: ZapTest
# 4) Selenium IDE
Najlepszy dla Startupy i freelancerzy.
Cena £: Selenium IDE jest darmowe i open-source.
Selenium IDE to narzędzie typu open source do automatyzacji testów. Działa poprzez nagrywanie i odtwarzanie. Jest używany jako wtyczka do przeglądarek Chrome lub Firefox. Obsługuje wykonywanie w różnych przeglądarkach przy użyciu narzędzia Command-line Runner for Selenium IDE.
Ma możliwość rejestrowania wielu lokalizatorów dla każdego elementu, z którym współdziała. Przypadki testowe utworzone w Selenium IDE będą wielokrotnego użytku.
Funkcje:
- Obsługuje struktury przepływu sterowania, takie jak if, while i times.
- Narzędzie można rozbudowywać za pomocą wtyczek.
- Pozwoli ci to stworzyć zestaw testów.
- Umożliwi to również dostosowanie skryptu testowego.
Werdykt: Selenium IDE działa na funkcji nagrywania i odtwarzania. Chociaż narzędzie to ma ograniczone funkcje, może być doskonałym podstawowym narzędziem do automatyzacji testów bez użycia skryptów.
Stronie internetowej: Selenium IDE
# 5)Ranorex Studio
Ranorex Studio zawiera kompletny zestaw narzędzi do automatyzacji testów bez użycia skryptów do testowania komputerów stacjonarnych, witryn internetowych i aplikacji mobilnych. Zautomatyzuj testy w czasie o połowę krótszym niż w przypadku innych podejść.
Kluczowe funkcje obejmują:
- Rejestrator Ranorex : Uchwyć każdą interakcję z aplikacją. Wstrzymaj i wznów nagrywanie, edytuj kroki i dodawaj akcje sprawdzania poprawności bezpośrednio w oknie przechwytywania.
- Ranorex Spy : Zidentyfikuj elementy interfejsu użytkownika jednym kliknięciem, a następnie przeciągnij i upuść je do swojego przypadku testowego. Ranorex Studio automatycznie obsługuje wszelkie dynamiczne elementy internetowe.
- Edytor akcji : Edycja zarejestrowanych kroków, dodawanie walidacji, określanie warunków wykonania (instrukcje IF) i wykorzystanie danych z pliku Excel lub bazy danych - wszystko bez kodowania.
- Wbudowany Selenium WebDriver . Wykonuj testy w różnych przeglądarkach na punkcie końcowym WebDriver, lokalnym Selenium Grid lub dostawcy w chmurze.
- Wbudowany raport z przebiegu testu i raport wideo z wykonania testu . Jeśli krok testowy się nie powiedzie, po prostu odtwórz wideo, aby zobaczyć, co się stało. Kliknij nieudany krok w raporcie z testu, aby przejść bezpośrednio do przypadku testowego i go zdebugować.
- Integruje się z wiodącymi narzędziami do śledzenia defektów, w tym Jira i Bugzilla , Narzędzia CI / CD, w tym Jenkins i Bambus , TestRail do zarządzania przypadkami testowymi i nie tylko.
Ranorex Studio ma również pełne środowisko IDE, dzięki czemu możesz w razie potrzeby rozszerzyć przypadki testowe o kod.
# 6) Kobiton
Najlepszy dla Małe i duże firmy.
Cena £: Kobiton oferuje bezpłatny okres próbny przez 15 dni. Ma trzy plany cenowe, tj. Zespół (40 USD miesięcznie), Organizacja (415 USD miesięcznie) i Przedsiębiorstwo (Uzyskaj wycenę) . Podane ceny dotyczą rozliczenia rocznego. Dostępne są również miesięczne plany rozliczeniowe.
Dziedzictwem Kobiton jest oferowanie wszechstronnej platformy do testowania aplikacji na prawdziwych urządzeniach i zarządzania farmą urządzeń.
Kobiton udostępnia na swojej platformie funkcję o nazwie Intelligent Test Automation, która jest bezskryptową możliwością automatyzacji testów Appium. Kobiton będzie monitorować test ręczny lub eksploracyjny i zaoferuje opcję przekształcenia go w test automatyczny.
Te automatyczne testy wykorzystują Appium pod maską. Dodatkowo Kobiton używa AI i Nauczanie maszynowe aby rozwiązać problem kruchych skryptów, tj. Kobiton jest w stanie dynamicznie aktualizować strategie lokalizatora Appium, aby znaleźć elementy w aplikacji, nawet gdy zmienia się ścieżka x.
Wreszcie, chociaż nie musisz znać Appium, Kobiton oferuje możliwość eksportowania automatycznych testów jako otwartych standardowych skryptów testowych Appium.
Funkcje:
- Wygenerowany kod można dostosować, uruchomić na konkurencyjnej platformie testowej urządzeń lub zintegrować z procesami DevOps.
- Wygenerowane skrypty będą obsługiwać zmiany aplikacji, podstawowe zmiany urządzeń i zmiany systemu operacyjnego.
- Jego centra danych są również zabezpieczone i zgodne z SOC2, SOC3 i HIPPA.
- Może automatycznie przechwytywać etapy testu, zrzuty ekranu i filmy.
Werdykt: Wygenerowany kod można uruchomić na nieograniczonej liczbie urządzeń i dostosować do własnych potrzeb. Kobiton umożliwia twojemu zespołowi szybsze i bardziej wydajne testowanie, tym samym drastycznie skracając czas między kolejnymi wydaniami.
Stronie internetowej: Kobiton
Inne narzędzia:
Cele projektowe
Poniżej przedstawiono niektóre z ważnych celów projektowych, które należy wziąć pod uwagę.
# 1) Sterowanie danymi wejściowymi
Wszelkie dane wejściowe, które trzeba wprowadzić, aby uruchomić testy automatyczne, powinny wykraczać poza część „kodowania” struktury automatyzacji. Dane wejściowe mogą obejmować etapy testu, warunki testowe, dane testowe, oczekiwane wyniki itp.
Dla każdego typu danych wejściowych struktura powinna obsługiwać w postaci słów kluczowych, które są łatwe w użyciu, a tym samym również rozumieją kontekst.
# 2) Zezwalaj na dostosowywanie
Oznacza to wyraźnie, że należy zapewnić opcje dostosowywania obsługi skryptów testowych dla zaawansowanych użytkowników, tak aby mogli oni uwzględniać unikalne scenariusze. Zaawansowani użytkownicy mogą podłączyć swoje skrypty testowe (w postaci programu) do testowych danych wejściowych platformy.
# 3) Prostota
Jest to naprawdę ważny cel projektowy, ponieważ zrozumienie, jak skonfigurować, skonfigurować i używać ramy automatyzacji, nie powinno być bardzo trudne niż kodowanie.
Jeden taki przykład polegałoby na dostarczeniu szablonu, który zawiera wszystkie wymagane dane wejściowe testowe z wartościami domyślnymi (ale odpowiednimi do kontekstu).
W ten sposób użytkownicy szybko zrozumieliby, jak zapewnić dane wejściowe do testów w oparciu o potrzeby ich aplikacji. Innym sposobem byłoby zapewnienie wysokiego poziomu abstrakcji na wejściach testowych.
Przykład: Rozważmy symulację kliknięcia przycisku. Tutaj jako użytkownika interesuje mnie tylko prosta czynność zwana kliknięciem przycisku.
Struktura powinna być zdolna do wykonania tej czynności poprzez wewnętrzną obsługę różnych metod identyfikacji kontrolki przycisku, po której następuje akcja. W rzeczywistości jest to trochę związane z celem opartym na danych wejściowych, w którym musisz zdefiniować słowa kluczowe, które są łatwe do zrozumienia, jak w tym przykładzie: ClickButton .
# 4) Platforma Agnostic
Musi działać na różnych platformach PC i mobilnych. Różne przeglądarki w przypadku automatyzacji bez skryptów opracowanej dla aplikacji internetowych. W ramach tego celu należy również rozważyć obsługę typowych wejść testowych na różnych platformach.
# 5) Technologia Agnostic
W dzisiejszym scenariuszu wszyscy wiemy, że technologie są rozległe i istnieje wiele opcji tworzenia aplikacji.
Bez względu na technologię używaną do tworzenia testowanej aplikacji (w ramach danego typu aplikacji, na przykład internetowej lub mobilnej), rozszerzenie ramy automatyzacji Powinien mieć możliwość testowania tych aplikacji z niewielkimi zmianami lub bez zmian w wejściach testowych i samym silniku frameworka.
# 6) Agnostyk środowiska testowego
Powinien być zdolny do działania w chmurze i lokalnym środowisku wirtualnym.
# 7) Możliwość rozszerzenia
Powinniśmy zapewnić opcje podłączenia innych składników oprogramowania, aby pokryć złożone scenariusze testowe.
Weźmy przykład witryny e-commerce, która zawiera zarówno aplikację zewnętrzną, jak i usługi internetowe i chcesz przetestować funkcjonalność swojej aplikacji wraz z wydajnością. Ten wymóg z pewnością wymagałby wtyczek do narzędzi, które mogą testować usługi internetowe i wydajność witryny.
Wgląd w wymagania dotyczące implementacji
Zanim przyjrzymy się szczegółom implementacji, najpierw zapoznajmy się z wysokopoziomowymi elementami architektonicznymi Framework automatyzacji bez skryptów.
Istnieją 3 podstawowe komponenty (oczywiście komponenty można dalej podzielić na niższy poziom, ale na razie nie taki jest cel!), Które zobaczymy, aby uzyskać pełny obraz frameworka:
# 1) Framework Core Engine: Jest to podstawowy komponent frameworka, który wykonuje wszystkie ciężkie zadania związane z logiką automatyzacji, walidacjami, interfejsami do pozostałych komponentów architektury i aplikacjami / skryptami stron trzecich w celu dostosowania konfiguracji testów i wykonywania.
Wszystkie czynności wejściowe do testów są przekazywane do programu obsługi akcji w celu przetworzenia działań na AUT (testowana aplikacja). Podczas opracowywania tego silnika ważne jest, aby wybrać odpowiednią wiedzę programistyczną i technologię, biorąc pod uwagę cele projektowe wymienione powyżej.
jaki jest najlepszy system operacyjny na PC
W zależności od mądrego wyboru technologii, będziesz w stanie spełnić większość swoich celów projektowych, zapewniając tym samym możliwie najlepsze korzyści konsumentom platformy automatyzacji.
# 2) Testowy interfejs wejściowy: To jest komponent frontendowy z punktu widzenia konsumenta i tutaj zapewnisz wszystkie dane wejściowe testowe, takie jak etapy przypadków testowych, warunki testowe, dane testowe, oczekiwane wyniki itp.
Pamiętaj o celu projektowym, jakim jest prostota, ten komponent powinien być zaprojektowany w taki sposób, aby konsumenci mogli szybko dostosować się i zacząć używać twojego frameworka. Niespełnienie tego celu spowodowałoby mniejsze wykorzystanie samego frameworka.
Interfejsem do podstawowego silnika jest interpreter, który zazwyczaj stosuje pewien protokół w celu wymiany informacji o wejściach testowych.
# 3) Testuj interfejs wyjściowy: Jest to komponent odpowiedzialny za wyświetlanie wyników testów, dzienników testów, rejestrowania defektów, raportowania i pulpitów nawigacyjnych. Podstawowy silnik platformy przekaże wyniki do rejestratora danych wyjściowych, który jest następnie renderowany przez interfejs wyjściowy.
Spośród powyższych komponentów, konsumenci zazwyczaj łączą się z interfejsem wejścia testowego i interfejsem wyjścia testowego. Dlatego zamierzamy zbadać tylko te 2 składniki.
Testowy interfejs wejściowy
Wejścia testowe mogą być dostarczane na różne sposoby. Zależy to jednak całkowicie od typu konsumentów, do których kierujemy te ramy.
- Pliki takie jak XML, Excel; Schemat, taki jak pola danych testowych, kroki testowe, typy danych i tak dalej, byłby definiowany przez silnik platformy i należy go przestrzegać podczas dostarczania danych wejściowych do testów.
- Dane wejściowe oparte na graficznym interfejsie użytkownika, w których podasz odpowiednie pola testowe, aby klienci mogli podać wszystkie szczegóły testu do wykonania.
- Dane wejściowe oparte na edytorze wizualnym, gdzie konsumenci mogą dostarczać w postaci schematów blokowych (obsługujących podstawową logikę, taką jak warunki i pętle). W rzeczywistości jest to najbardziej modny sposób dostarczania interfejsu wejściowego, chociaż jego opracowanie jest stosunkowo czasochłonne.
Typowy zestaw funkcji, który należy zapewnić, to:
- Możliwość grupowania przypadków testowych na podstawie typów testów, priorytetu testów i tak dalej.
- Musi mieć możliwość tworzenia niestandardowych zestawów testów do przeprowadzania testów dymu i regresji, testów selektywnych itp.
- Testuj dane wejściowe, które są niezależne od platformy.
- Możliwość wielokrotnego wykonywania pojedynczego przypadku testowego.
- Powinniśmy być w stanie wykonać pojedynczy przypadek testowy dla różnych wartości testowych.
- Możliwość uruchomienia innego pliku wykonywalnego dla określonego kroku testowego lub przypadku testowego. Na przykład. Interfejs do Jenkinsa w celu automatycznego uruchamiania wykonywania testów.
- Konfiguracje testowe do wykonywania i rejestrowania danych wyjściowych. Przykład: Limity czasu.
- Możliwość skonfigurowania „biblioteki skryptów testowych” do ponownego wykorzystania w zespołach i projektach, które zostaną uznane za konieczne.
- Możliwość importowania danych testowych z szablonów utworzonych w przeszłości.
- Możliwość importowania dokumentów przypadków testowych i mapowania ich na dane wejściowe testowe. Pamiętaj o celu projektowym „Rozszerzalność”. Tak, to pierwszy krok do następnego poziomu automatyzacji!
Testuj interfejs wyjściowy
Z punktu widzenia automatyzacji bez skryptów musisz również upewnić się, że jesteś w stanie wyświetlić wyniki wykonania testu w płynny sposób, bez konieczności pisania specjalnego kodu.
Typowy zestaw funkcji, który należy zapewnić, to:
- Możliwość przeglądania wyników testów, dzienników testów, dzienników frameworka itp.
- Generowanie różnych raportów z testów i dashboardów.
- Możliwość tworzenia niestandardowych raportów w oparciu o określone wymagania.
- Musi mieć możliwość przesyłania strumieniowego wyników testów w czasie wykonywania przez GUI.
- Możliwość współpracy ze standardowymi narzędziami do zarządzania przypadkami testowymi.
- Powinien móc eksportować wyniki testów, raporty i pulpity nawigacyjne w różnych formatach, takich jak Excel, doc, pdf itp.
- Możliwość filtrowania i analizowania dzienników testów pod kątem określonych wymagań, takich jak inżynieria testów wydajności itp.
- Możliwość wypychania wszystkich danych testowych (wyniki, dzienniki, wybrane punkty danych) do zaawansowanych modułów, takich jak analityka. Pamiętaj o celu projektowym „Rozszerzalność”. Tak, to kolejny pierwszy krok w kierunku kolejnego poziomu automatyzacji!
Zalety bezskryptowej automatyzacji testów
Poniżej wymieniono główne korzyści płynące z tworzenia struktury bezskryptowej:
- Testerzy nie muszą posiadać żadnych umiejętności programistycznych ani skryptowych.
- Oprócz testerów (którzy są głównymi konsumentami automatyzacji bez skryptów), zastosowany framework może zostać rozszerzony na właścicieli produktów (w świecie Agile), a także analityków biznesowych w celu skonfigurowania i wykonania testów akceptacji użytkownika (UAT).
- Szybsze tworzenie automatycznych testów, które idealnie pasują do Zwinny proces .
- Oferuje elastyczność zarówno dla użytkowników natywnych, jak i zaawansowanych.
- Mniej błędów związanych z „testowaniem”, ponieważ podstawowy framework bez skryptów zostałby dokładnie przetestowany. To z kolei skraca czas poświęcany na debugowanie i naprawianie problemów związanych z testami.
- Łatwiejsza konserwacja całego pakietu automatyki.
Mity o automatyzacji bez skryptów
Poniżej podano kilka mitów na temat tego schematu.
# 1) SAF jest w 100% bez skryptów: W rzeczywistości nie jest to w 100% prawda. Chociaż celem jest uczynienie go w 100% bezkodowym, osiągnięcie tego wyczynu jest praktycznie niemożliwe.
Głównym tego powodem jest obecność różnych zawiłości w testowanej aplikacji (AUT), technologiach i językach programowania, które są używane przy tworzeniu oprogramowania. Dlatego jednym z celów projektowych, o których wspomnieliśmy, jest zapewnienie elastyczności w dostosowywaniu.
# 2) Aby korzystać z SAF, testerzy nie potrzebują żadnej wiedzy programistycznej ani kodowania: Ponownie, nie jest to w 100% prawda. W rzeczywistości wymagają one podstawowych pojęć z zakresu programowania i umiejętności logicznych.
Jeśli chodzi o aplikacje internetowe lub mobilne, testerzy muszą również znać podstawy obiektów i klas, które muszą być zawarte w niestandardowych skryptach.
Istnieją narzędzia, takie jak TestCraft, które w rzeczywistości nie potrzebują specjalisty ds. Kontroli jakości, aby mieć wiedzę o kodowaniu. Ich funkcje przeciągania i upuszczania oraz funkcje w locie pozwalają każdemu zrozumieć, jak przeprowadzać testy.
# 3) SAF dotyczy nagrywania i odtwarzania, na których można polegać: Nie. Nagrywanie i odtwarzanie da użytkownikowi działający skrypt z zakodowaną na stałe wartością danych wejściowych i przepływów, które należy później dostosować.
W żaden sposób NIE obejmuje wszystkich możliwych scenariuszy wprowadzania danych przez użytkownika i kroków testowych.
Przykłady bez skryptów
Poniżej podano kilka przykładów automatyzacji bez skryptów, ułatwiających zrozumienie.
# 1) Oto przykład wykonania testu
- Openwebpage
- Wprowadź użytkownika w polu Nazwa użytkownika
- Wprowadź hasło w polu Hasło
- Kliknij przycisk Zaloguj
Każde z powyższych to słowa kluczowe, które są obsługiwane przez frameworki bez skryptów.
Jako tester musisz po prostu przekazać wartości, jak pokazano poniżej:
Openwebpage „Www.linkedin.com”
Enteruser dummyuser
Wprowadź hasło dummypwd, maska = prawda
Kliknij Zaloguj sie
Słowa zapisane kursywą to słowa kluczowe, które akceptują argumenty do wykonywania działań.
Uwaga: EnterPassword akceptuje 2 argumenty. Drugi to flaga wskazująca maskowanie znaków podczas wpisywania w polu hasła.
# 2) Powiedzmy, że chcesz zautomatyzować przepływ transakcji płatności:
- Wybierz typ konta
- Wprowadź kwotę za zakupione towary
- Wpisz PIN
- Wydrukuj pokwitowanie
Wybierz Konto Kredyt
Wprowadź ilość 1000 INR
Wpisz PIN 1234, maska = prawda
PrintReceipt Customercopy = false, Merchantcopy = true
Słowa zapisane kursywą to słowa kluczowe, które akceptują argumenty do wykonywania działań.
Uwaga: EnterPIN akceptuje 2 argumenty. Drugi to flaga wskazująca maskowanie cyfr kodu PIN podczas wpisywania go w polu wprowadzania kodu PIN. PrintReceipt ma również 2 argumenty.
Jeśli zauważysz powyższy przepływ, jest to typowy przepływ transakcji. Możesz użyć całego przepływu jako „szablonu testu transakcji” dla różnych przypadków testowych. W ten sposób ułatwiasz testerom generowanie kroków testowych i wejść testowych.
Wielokrotne użycie słów kluczowych, grup słów kluczowych i słów kluczowych opartych na przepływie można wykonać w Scriptless Automation Framework (SAF).
Wniosek
Z tego artykułu można dojść do wniosku, że tworzenie frameworku automatyzacji bez kodu lub skryptów jest trudnym i równie interesującym zadaniem.
Możesz tworzyć takie frameworki dla dowolnego rodzaju testowania aplikacji, np. Aplikacji internetowych, aplikacji mobilnych, usług internetowych, GUI, baz danych, aplikacji na urządzenia wbudowane itp.
Należy jednak dołożyć wszelkich starań, aby opracować stabilne, niezawodne i wydajne narzędzie. To tylko słowo przestrogi, aby wybrać odpowiednią technologię i język skryptowy / programowania, aby opracować wspaniały i użyteczny framework.
Czy masz jakieś doświadczenie w automatyzacji bez skryptów? Zapraszam do podzielenia się z nami swoimi przemyśleniami w sekcji komentarzy poniżej.
rekomendowane lektury
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Dlaczego potrzebujemy platformy do automatyzacji testów?
- 11 najlepszych narzędzi automatyzacji do testowania aplikacji na Androida (narzędzia do testowania aplikacji na Androida)
- Ponad 20 najlepszych narzędzi do testowania automatyzacji Open Source w 2021 roku
- Top 10+ najlepszych narzędzi testowych SAP (narzędzia automatyzacji SAP)
- Samouczek Selendroid: Android Mobile Test Automation Framework (część 1)
- 10 najlepszych narzędzi oprogramowania do automatyzacji marketingu w 2021 r
- 20 najlepszych narzędzi do testowania automatyzacji w 2021 roku (pełna lista)