Testing

Automatyczne testy aplikacji mobilnych – część 2

Marzec 22, 2016 0
Podziel się:

Dostępne aplikacje mobilne nie przypominają już aplikacji znanych z dawnych telefonów komórkowych. Wraz z rozwijającym się rynkiem i postępem technologicznym zmieniają się wymagania i oczekiwania odbiorców względem produktu. Dlatego ważne jest, aby aplikacje spełniały wiele oczekiwań jak np. synchronizacja z chmurą czy nowoczesny design. Dlatego dziś dalej rozważać będziemy frameworki ułatwiające sprawdzanie, czy aplikacja stawia na jak najlepszy user experience oraz na optymalizację.

2. Calabash

calabash testing

Calabash jest frameworkiem umożliwiającym pisanie automatycznych testów akceptacyjnych UI w Cucumber na platformy iOS i Android. Dopóki Calabash jest ściśle zintegrowany z Xamarinem to może być używany w projektach Javy i Objective-C.

Calabash działa poprzez umożliwienie automatycznych interakcji UI w aplikacji, takich jak naciskanie przycisków, wprowadzanie tekstu, sprawdzanie poprawności odpowiedzi itd. Choć sam w sobie jest dobrym pierwszym krokiem w automatyzacji UI testów akceptacyjnych, to rzeczywista użyteczność Calabash staje się oczywista, kiedy jest podłączony do Xamarin Test Cloud. Z Test Cloud testy Calabasha mogą być skonfigurowane i uruchamiane na setkach urządzeń, informacje zwrotne są dostarczane w czasie rzeczywistym a walidacja przeprowadzana jest na wielu odmiennych formach i wersjach systemów operacyjnych. Zaletą Calabsha jest łatwość w utrzymaniu testów, które są projektowane w języku Gherkin, łączone z kodem Ruby i uruchamiane w kontekście frameworka Cucumber. Testy Calabash wpisują się w filozofię BDD (Behavior Driven Development.

Przykładowy kod:

Feature: Login feature Scenario:

As a valid user I can log into my app I wait for text “Hello”

Then I press view with id “Sign in”

Then I enter text “username” into “login_username”

Then I enter text “password” into “login_password”

Then I wait for activity “HomeTabActivity”

Then I press view with id “menu_compose_tweet”

Then I enter text “Testdroid”into field with id “edit”

Then I press view with id “composer_post”

Jak widać testy są bardzo high levelowe a to wszystko poprzez użycie Gherkina.

Oficjalna strona Calabash

Oficjalna strona Xamarina

3. UIAutomator

UIAutomator jest frameworkiem Google’a wspierającym aplikacje natywne oraz dostęp do innych procesów w systemie. Działa tylko na urządzeniach z API większym niż 18 (minimalna wersja Androida 4.3) i nie wspiera web view.

Framework UIAutomator dostarcza zestawu funkcji API do budowania testów interfejsu użytkownika a także do testów systemowych. API pozwala na wykonywanie takich operacji jak otwieranie menu ustawień systemowych lub uruchamianie ustawień aplikacji na testowanym urządzeniu. UIAutomator dobrze pasuje do pisania testów czarnoskrzynkowych, gdzie kod testowy nie opiera się na wewnętrznych szczegółach implementacji aplikacji docelowej.

Kluczowe cechy frameworka UIAtomator obejmują:

  • Wgląd w hierarchię layoutu
  • API do uzyskiwania informacji o stanie i wykonywanych operacjach na urządzeniu docelowym
  • API obsługujące testy czarnoskrzynkowe

Strona główna frameworka

4. Espresso

Espresso

Espresso

Espresso jest frameworkiem dla Androida pozwalającym na pisanie rzetelnych testów interfejsu użytkownika pojedynczej aplikacji. Google wydało Espresso w październiku 2013 roku. Od momentu wypuszczenia Espresso 2.0 jest on częścią Android Support Repository. Wspiera on API poziom 8 (Froyo), 10 (Gingerbread) oraz 15-19 (IJK). Testy pisane są w Javie i co najważniejsze – nie ma konieczności używania sleepów w testach., bowiem Espresso automatycznie synchronizuje testy z GUI. Framework zapewnia również, że aktywność wystartuje przed testami i że testy będą działały tak długo, dopóki ostatnia aktywność w tle się nie zakończy.

Espresso posiada trzy komponenty:

  • ViewMatchers – pozwala na odnalezienie widoku w aktualnej hierarchii widoków
  • ViewActions – pozwala na wykonywanie akcji na widoku
  • ViewAssertions – pozwala na potwierdzić stan widoku przy użyciu asercji

Strona Google

Strona z tutorialem Vogella, gdzie pokazana jest cała instalacja i sposób wykorzystania Espresso

Oceń ten post
Kategorie: Testing
Paulina Łojszczyk
Autor: Paulina Łojszczyk
W Sii pracuję od niemalże 5 lat, moją specjalizacją są testy aplikacji mobilnych. Ponadto zajmuję się także poznawaniem i rozwijaniem testów w narzędziu Tosca. Prywatnie jestem szczęśliwą żoną i mamą rocznej Hani.

Imię i nazwisko (wymagane)

Adres email (wymagane)

Temat

Treść wiadomości

Zostaw komentarz