SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Hyperion - wystarczy jeden
shake
Kim jestem?
Dorota Tadych
Linkedin
Twitter
Github
2
W czym problem?1
3
Narzędzia wspomagające testowanie manualne aplikacji mobilnych
4
2
Przykładowe narzędzia
5
3
Layout Inspector
6
% Znajduje się w Android Studio
% Pozwala na porównanie layoutu aplikacji z designami
QA Tool
7
% Aplikacja dostępna w Play Store
% Można wybrać aplikację, którą chcemy zbadać
Cockpit
8
% Debug menu dostępne na GitHubie -> Link do repozytorium
% Pozwala zdefiniować parametry widoków, które mogą być użyte w aplikacji bez
konieczności re-kompilowania projektu
Chuck
9
% HTTP Inspector dla Androidowego klienta OkHTTP. Dostępny na GitHubie -> Link do
repozytorium
% Pozwala na śledzenie requestów i responsów API

% Działa w trybie multi-window
DBDebug Toolkit
10
% Stworzony przez Dariusza Bukowskiego debug
screen dla platformy iOS
% Dostępny na GitHubie -> Link do repozytorium

% Pracuje w tle, wysuwa się na gest ‘shake’

% Umożliwia, m.in.:
○ Przeglądanie danych dotyczących wydajności,
np. CPU
○ Przeglądanie listy requestów i responsów API
○ Symulowanie lokalizacji
○ Szybkie otwieranie ustawień aplikacji lub
sprawdzanie wersji systemu iOS i modelu
telefonu

% Pełna lista funkcjonalności -> click
Hyperion - Debug Screen
% Stworzony przez amerykańską firmę WillowTree

% Dostępny na GitHubie:

○ iOS: Link do repozytorium
○ Android: Link do repozytorium

% Dostępny dla Androida i iOS

% Min: Android - SDK 15 (Android 4.0.3), iOS - 9+

% Pracuje w tle, wysuwa się na gest ‘shake’
11
4
Setup Hyperiona dla platformy Android
12
5
Przypadek 1. 

Brak dostępu do repozytorium
13
- Po prostu! Poproś developera o dodanie Hyperiona do projektu.
- Zdobądź dostęp do repozytorium projektu.
Jeśli potrzebujecie przekonującej argumentacji zapoznajcie się z
blogpostem -> Click
14
Przypadek 2. 

Posiadamy dostęp do repozytorium
1. Dodać do bloku dependencies w build.gradle (tym znajdującym
się w module app) linijkę:
2. Dodać wszystkie pluginy składające się na Hyperiona,
którymi jesteśmy zainteresowani (w tym samym bloku
dependencies)
15
No-op, czyli nieoperacyjna wersja
biblioteki
% Zabezpiecza nas przed tym, żeby Hyperion nie pokazał się
przypadkiem w buildzie przeznaczonym do releasu
% W większości przypadków nie będzie potrzebny
% Należy go dodać tylko wtedy, gdy odwołujemy się bezpośrednio
do kodu Hyperiona (np. w celu ustawienia jakiegoś
customowego zachowania tego narzędzia)
Aktywacja Hyperiona w aplikacji
16
6
• Fizycznie dostępne urządzenie: Potrząśnij!
• Emulator:
◦ Jeśli uruchamiasz aplikację na emulatorze, możesz manualnie
otworzyć Hyperion menu poprzez Hyperion.open(Activity activity).
◦ Możesz także otworzyć menu klikając na notyfikację, która
pojawia się, gdy aplikacja, do której Hyperion jest wpięty, znajduje
się w foregroundzie.
Funkcjonalności Hyperiona
17
7
Attributes
Inspector
18
% Pozwala na podejrzenie
parametrów poszczególnych
widoków
% Można dzięki niemu zmienić
tekst danego pola, bez
konieczności rebuildu całej
aplikacji, aby zobaczyć efekt.
BuildConfig
19
% Umożliwia podejrzenie Build
Configu aplikacji
File Explorer
20
% Umożliwia przeglądanie, usuwanie
i udostępnianie plików aplikacji
% Pliki jakie są tu przetrzymywane to,
np. pliki Shared Preferences,
Cache
Geiger Counter
21
% Głośność mediów nie może być
wyciszona!
% Wykrywa frame dropy
Measurement
Inspector
22
% Mierzy odstępy pomiędzy
poszczególnymi elementami
aplikacji
% Pomocny przy podejściu Pixel
Perfect
% Pozwala na sprawdzenie
wymiarów marginesów i
paddingów
Phoenix
23
% Wspiera testowanie first-run functionality
% Czyści pamięć podręczną i uruchamia ponownie aplikacje
Recorder
24
% Umożliwia nagrywanie ekranu aplikacji
% Nagrane filmiki mogą być udostępnione do innych aplikacji, np. Google Photos,
Google Drive, Slack, Email
Shared
Preferences
25
% Pozwala na przeglądanie i zmianę
trwałych danych aplikacji zapisanych
w Shared Preferences
% Pozwala modyfikować nie tylko te
utworzone przez developerów, ale
również te z użytych w projekcie
bibliotek
Timber
26
% Pozwala przechwytywać komunikaty zalogowane za pomocą biblioteki Timber
% Tak przechwycone logi, możemy udostępnić przy pomocy różnych zewnętrznych
aplikacji, np. Slack, Gmail
Crash plugin
27
% Nie jest widoczny jako opcja
Hyperionowego menu
% Gdy aplikacja się crashuje, zostaje
wyświetlony ekran z logami
dotyczącymi tego crasha
28
Chuck
29
% Link do repozytorium na GitHubie 

-> click
% Pozwala na śledzenie requestów i
responsów API
AppInfo
30
% Link do repozytorium na GitHubie 

-> click
% Ułatwia przejście prosto do
informacji systemowych o
aplikacji
% Z tego poziomu możemy zrobić
wszystko to, na co pozwalają
ustawienia (np. odinstalować
aplikację, zmienić ustawienia
notyfikacji itd.
Simple Item
31
% Link do repozytorium na GitHubie 

-> click
% Plugin pozwalający na dodawanie
dodatkowych informacji w postaci
kolejnej belki w menu (można
wyświetlić statyczny tekst z ikoną oraz
sprawić, że belka jest klikalna i dodać
dowolną akcję, która ma się zadziać
po jej kliknięciu).
Przykładowy Simple Item
32
Pozostałe pluginy
33
% DBFlow Manager: link do repozytorium na GitHubie -> click
% Kfin-state-machine: link do repozytorium na GitHubie -> click
Kontrybucja
Lista guidelinesów od WillowTree dla zainteresowanych
kontrybuowaniem do Hyperiona -> click
Narzędzie bez wad?
Oczywiście, że nie
34
9
% Pop-upy przykrywają Hyperiona
% Wprowadzone zmiany nie są zapamiętywane
% Problematyczne wyświetlanie nagrań z Recordera
% Brak możliwości przeklejenia tekstu w Attribute Inspectorze
Dziękuję za uwagę!
35

Mais conteúdo relacionado

Semelhante a [Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake

Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...
Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...
Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...Wojciech Sznapka
 
Exam: 70-511 Enhancing Usability - Windows Application
Exam: 70-511 Enhancing Usability - Windows ApplicationExam: 70-511 Enhancing Usability - Windows Application
Exam: 70-511 Enhancing Usability - Windows ApplicationMaciej Zbrzezny
 
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...Aleksander Kuczek
 
Google App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjachGoogle App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjach3camp
 
Wprowadzenie do MEF w .NET 4.0
Wprowadzenie do MEF w .NET 4.0Wprowadzenie do MEF w .NET 4.0
Wprowadzenie do MEF w .NET 4.0Maciej Zbrzezny
 
Budowa RESTowego api w oparciu o HATEOAS
Budowa RESTowego api w oparciu o HATEOASBudowa RESTowego api w oparciu o HATEOAS
Budowa RESTowego api w oparciu o HATEOASMateusz Stępniak
 
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...Aleksander Kuczek
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyqbeuek
 
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014Grzegorz Bartman
 
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -..."Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...krakspot
 
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl PROIDEA
 
Application in Xamarin.Forms
Application in Xamarin.FormsApplication in Xamarin.Forms
Application in Xamarin.FormsMaciej Kuchcik
 
WYSIWYG w Drupalu 7 - Tomasz Rychter
WYSIWYG w Drupalu 7 - Tomasz RychterWYSIWYG w Drupalu 7 - Tomasz Rychter
WYSIWYG w Drupalu 7 - Tomasz RychterGrzegorz Bartman
 
Licencje asia
Licencje asiaLicencje asia
Licencje asiasbnk07
 
Architektura aplikacji android
Architektura aplikacji androidArchitektura aplikacji android
Architektura aplikacji androidSages
 

Semelhante a [Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake (20)

Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...
Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...
Łebski Development czyli kiedy i dlaczego tworzyć oprogramowanie pod klucz i ...
 
Behat
BehatBehat
Behat
 
Exam: 70-511 Enhancing Usability - Windows Application
Exam: 70-511 Enhancing Usability - Windows ApplicationExam: 70-511 Enhancing Usability - Windows Application
Exam: 70-511 Enhancing Usability - Windows Application
 
Tools gk5
Tools gk5Tools gk5
Tools gk5
 
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...
Fair Pricing - what you really pay for when buying Joomla Extensions (Joomla ...
 
Google App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjachGoogle App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjach
 
Rodzaje i zastosowanie oprogramowania użytkowego
Rodzaje i zastosowanie oprogramowania użytkowegoRodzaje i zastosowanie oprogramowania użytkowego
Rodzaje i zastosowanie oprogramowania użytkowego
 
Wprowadzenie do MEF w .NET 4.0
Wprowadzenie do MEF w .NET 4.0Wprowadzenie do MEF w .NET 4.0
Wprowadzenie do MEF w .NET 4.0
 
Automatyzacja testów oprogramowania dla urządzeń mobilnych
Automatyzacja testów oprogramowania dla urządzeń mobilnychAutomatyzacja testów oprogramowania dla urządzeń mobilnych
Automatyzacja testów oprogramowania dla urządzeń mobilnych
 
Budowa RESTowego api w oparciu o HATEOAS
Budowa RESTowego api w oparciu o HATEOASBudowa RESTowego api w oparciu o HATEOAS
Budowa RESTowego api w oparciu o HATEOAS
 
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...
Fair Pricing - what you really pay for when buying WordPress Plugins or Theme...
 
PyLadies #4
PyLadies #4PyLadies #4
PyLadies #4
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatyczny
 
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014
Code driven development w Drupalu 7 | DrupalCamp Wrocław 2014
 
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -..."Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...
"Zagrożenia w stosowaniu technologii open-source w projektach komercyjnych" -...
 
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl
PLNOG 5: Janusz Dziemidowicz - OpenSocial w nk.pl
 
Application in Xamarin.Forms
Application in Xamarin.FormsApplication in Xamarin.Forms
Application in Xamarin.Forms
 
WYSIWYG w Drupalu 7 - Tomasz Rychter
WYSIWYG w Drupalu 7 - Tomasz RychterWYSIWYG w Drupalu 7 - Tomasz Rychter
WYSIWYG w Drupalu 7 - Tomasz Rychter
 
Licencje asia
Licencje asiaLicencje asia
Licencje asia
 
Architektura aplikacji android
Architektura aplikacji androidArchitektura aplikacji android
Architektura aplikacji android
 

Mais de Future Processing

DPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdfDPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdfFuture Processing
 
DPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdfDPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdfFuture Processing
 
DPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdfDPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdfFuture Processing
 
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurzeFuture Processing
 
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myśleniaFuture Processing
 
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletkaFuture Processing
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...Future Processing
 
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...Future Processing
 
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny BlockchainFuture Processing
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈XFuture Processing
 
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...Future Processing
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...Future Processing
 
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NETFuture Processing
 
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...Future Processing
 
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...Future Processing
 
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark ApplicationsFuture Processing
 
[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test AutomationFuture Processing
 
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software TesterFuture Processing
 
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOpsFuture Processing
 
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)Future Processing
 

Mais de Future Processing (20)

DPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdfDPTO_Inżynieria oprogramowania to proces uczenia się.pdf
DPTO_Inżynieria oprogramowania to proces uczenia się.pdf
 
DPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdfDPTO_QA w świecie wartości biznesowych.pdf
DPTO_QA w świecie wartości biznesowych.pdf
 
DPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdfDPTO_Hello_Clean_Architekture.pdf
DPTO_Hello_Clean_Architekture.pdf
 
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
[Quality Meetup #20] Michał Górski - Continuous Deployment w chmurze
 
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
[Quality Meetup #19] Magdalena Drechsler-Nowak - Tester w pułapce myślenia
 
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
 
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
 
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
 
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
 
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
 
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
 
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
 
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
 
[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation
 
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
 
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
 
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
 

[Quality Meetup #20] Dorota Tadych - Hyperion - wystarczy jeden shake

  • 1. Hyperion - wystarczy jeden shake
  • 4. Narzędzia wspomagające testowanie manualne aplikacji mobilnych 4 2
  • 6. Layout Inspector 6 % Znajduje się w Android Studio % Pozwala na porównanie layoutu aplikacji z designami
  • 7. QA Tool 7 % Aplikacja dostępna w Play Store % Można wybrać aplikację, którą chcemy zbadać
  • 8. Cockpit 8 % Debug menu dostępne na GitHubie -> Link do repozytorium % Pozwala zdefiniować parametry widoków, które mogą być użyte w aplikacji bez konieczności re-kompilowania projektu
  • 9. Chuck 9 % HTTP Inspector dla Androidowego klienta OkHTTP. Dostępny na GitHubie -> Link do repozytorium % Pozwala na śledzenie requestów i responsów API
 % Działa w trybie multi-window
  • 10. DBDebug Toolkit 10 % Stworzony przez Dariusza Bukowskiego debug screen dla platformy iOS % Dostępny na GitHubie -> Link do repozytorium
 % Pracuje w tle, wysuwa się na gest ‘shake’
 % Umożliwia, m.in.: ○ Przeglądanie danych dotyczących wydajności, np. CPU ○ Przeglądanie listy requestów i responsów API ○ Symulowanie lokalizacji ○ Szybkie otwieranie ustawień aplikacji lub sprawdzanie wersji systemu iOS i modelu telefonu
 % Pełna lista funkcjonalności -> click
  • 11. Hyperion - Debug Screen % Stworzony przez amerykańską firmę WillowTree
 % Dostępny na GitHubie:
 ○ iOS: Link do repozytorium ○ Android: Link do repozytorium
 % Dostępny dla Androida i iOS
 % Min: Android - SDK 15 (Android 4.0.3), iOS - 9+
 % Pracuje w tle, wysuwa się na gest ‘shake’ 11 4
  • 12. Setup Hyperiona dla platformy Android 12 5
  • 13. Przypadek 1. 
 Brak dostępu do repozytorium 13 - Po prostu! Poproś developera o dodanie Hyperiona do projektu. - Zdobądź dostęp do repozytorium projektu. Jeśli potrzebujecie przekonującej argumentacji zapoznajcie się z blogpostem -> Click
  • 14. 14 Przypadek 2. 
 Posiadamy dostęp do repozytorium 1. Dodać do bloku dependencies w build.gradle (tym znajdującym się w module app) linijkę: 2. Dodać wszystkie pluginy składające się na Hyperiona, którymi jesteśmy zainteresowani (w tym samym bloku dependencies)
  • 15. 15 No-op, czyli nieoperacyjna wersja biblioteki % Zabezpiecza nas przed tym, żeby Hyperion nie pokazał się przypadkiem w buildzie przeznaczonym do releasu % W większości przypadków nie będzie potrzebny % Należy go dodać tylko wtedy, gdy odwołujemy się bezpośrednio do kodu Hyperiona (np. w celu ustawienia jakiegoś customowego zachowania tego narzędzia)
  • 16. Aktywacja Hyperiona w aplikacji 16 6 • Fizycznie dostępne urządzenie: Potrząśnij! • Emulator: ◦ Jeśli uruchamiasz aplikację na emulatorze, możesz manualnie otworzyć Hyperion menu poprzez Hyperion.open(Activity activity). ◦ Możesz także otworzyć menu klikając na notyfikację, która pojawia się, gdy aplikacja, do której Hyperion jest wpięty, znajduje się w foregroundzie.
  • 18. Attributes Inspector 18 % Pozwala na podejrzenie parametrów poszczególnych widoków % Można dzięki niemu zmienić tekst danego pola, bez konieczności rebuildu całej aplikacji, aby zobaczyć efekt.
  • 19. BuildConfig 19 % Umożliwia podejrzenie Build Configu aplikacji
  • 20. File Explorer 20 % Umożliwia przeglądanie, usuwanie i udostępnianie plików aplikacji % Pliki jakie są tu przetrzymywane to, np. pliki Shared Preferences, Cache
  • 21. Geiger Counter 21 % Głośność mediów nie może być wyciszona! % Wykrywa frame dropy
  • 22. Measurement Inspector 22 % Mierzy odstępy pomiędzy poszczególnymi elementami aplikacji % Pomocny przy podejściu Pixel Perfect % Pozwala na sprawdzenie wymiarów marginesów i paddingów
  • 23. Phoenix 23 % Wspiera testowanie first-run functionality % Czyści pamięć podręczną i uruchamia ponownie aplikacje
  • 24. Recorder 24 % Umożliwia nagrywanie ekranu aplikacji % Nagrane filmiki mogą być udostępnione do innych aplikacji, np. Google Photos, Google Drive, Slack, Email
  • 25. Shared Preferences 25 % Pozwala na przeglądanie i zmianę trwałych danych aplikacji zapisanych w Shared Preferences % Pozwala modyfikować nie tylko te utworzone przez developerów, ale również te z użytych w projekcie bibliotek
  • 26. Timber 26 % Pozwala przechwytywać komunikaty zalogowane za pomocą biblioteki Timber % Tak przechwycone logi, możemy udostępnić przy pomocy różnych zewnętrznych aplikacji, np. Slack, Gmail
  • 27. Crash plugin 27 % Nie jest widoczny jako opcja Hyperionowego menu % Gdy aplikacja się crashuje, zostaje wyświetlony ekran z logami dotyczącymi tego crasha
  • 28. 28
  • 29. Chuck 29 % Link do repozytorium na GitHubie 
 -> click % Pozwala na śledzenie requestów i responsów API
  • 30. AppInfo 30 % Link do repozytorium na GitHubie 
 -> click % Ułatwia przejście prosto do informacji systemowych o aplikacji % Z tego poziomu możemy zrobić wszystko to, na co pozwalają ustawienia (np. odinstalować aplikację, zmienić ustawienia notyfikacji itd.
  • 31. Simple Item 31 % Link do repozytorium na GitHubie 
 -> click % Plugin pozwalający na dodawanie dodatkowych informacji w postaci kolejnej belki w menu (można wyświetlić statyczny tekst z ikoną oraz sprawić, że belka jest klikalna i dodać dowolną akcję, która ma się zadziać po jej kliknięciu).
  • 33. Pozostałe pluginy 33 % DBFlow Manager: link do repozytorium na GitHubie -> click % Kfin-state-machine: link do repozytorium na GitHubie -> click Kontrybucja Lista guidelinesów od WillowTree dla zainteresowanych kontrybuowaniem do Hyperiona -> click
  • 34. Narzędzie bez wad? Oczywiście, że nie 34 9 % Pop-upy przykrywają Hyperiona % Wprowadzone zmiany nie są zapamiętywane % Problematyczne wyświetlanie nagrań z Recordera % Brak możliwości przeklejenia tekstu w Attribute Inspectorze