W przypadku każdej aplikacji mobilnej wydajność jest bardzo krytyczna. Jeśli Twoja aplikacja mobilna nie działa dobrze, użytkownik końcowy odinstaluje aplikację i znajdzie inną, która działa lepiej.
Twoja aplikacja mobilna musi zostać dokładnie przetestowana przed udostępnieniem jej użytkownikowi końcowemu.
W tym samouczku nauczysz się:
- Strategia testowania aplikacji mobilnych
- Wydajność urządzenia
- Wydajność serwera
- Wydajność sieci
- Rozwiązywanie problemów z wydajnością aplikacji mobilnych
- Przydatne narzędzia do testowania aplikacji mobilnych
- Wyzwania
- Skonfiguruj środowisko testowe wydajności aplikacji mobilnej
- Lista kontrolna wydajności dla aplikacji mobilnych
Strategia testowania aplikacji mobilnych
Wydajność aplikacji na telefonie komórkowym lub dowolnym urządzeniu inteligentnym jest zwykle mierzona w następujących trzech kategoriach.
- Wydajność urządzenia
- Wydajność serwera / API
- Wydajność sieci
Wydajność urządzenia
Gdy klient napotyka powolną aplikację, denerwuje się.
Aby uzyskać wydajność urządzenia, sprawdź następujące elementy -
- Uruchomienie aplikacji
Ile czasu zajmuje uruchomienie Twojej aplikacji? Jest to pierwszy parametr wydajnościowy oceniany przez użytkownika. Z reguły po dotknięciu przez użytkownika ikony aplikacji pierwszy ekran powinien zostać wyświetlony w ciągu 1-2 sekund.
- Czas pracy baterii podczas korzystania z aplikacji
Niektóre aplikacje mobilne podczas ciągłego użytkowania zużywają dużo baterii i nagrzewają telefon. Ten czynnik znacznie zwiększa wydajność dowolnej aplikacji mobilnej i może się normalnie zdarzyć, gdy aplikacja zużywa więcej zasobów niż jest to wymagane. Nadmierne wykorzystanie zasobów obciąża procesor i telefon się nagrzewa.
- Zużycie pamięci
Podczas testowania aplikacji należy sprawdzić zużycie pamięci przez aplikację. Dzięki wdrożeniu pewnych funkcji w aplikacji wzrasta również zużycie pamięci. Na przykład w aplikacjach na Androida zaimplementowane są powiadomienia push, a zużycie pamięci wzrasta.
W niektórych przypadkach zaobserwowano, że zużycie pamięci przez cały system operacyjny wynosi zaledwie 14%, ale nowa aplikacja zużywa 11%. Dlatego te czynniki należy rozpatrzyć przed wdrożeniem aplikacji w świecie rzeczywistym lub przekazaniem jej klientowi.
- Odmiana sprzętu / oprogramowania
Podczas testowania aplikacji mobilnej obowiązkowe jest sprawdzenie aplikacji na różnych urządzeniach. Może się zdarzyć, że aplikacja działa płynnie na jednym urządzeniu, ale nie na innym. Podobnie jak w przypadku różnych dostawców urządzeń z Androidem, możemy sprawdzić aplikację na telefonach Samsung, HTC i Lenovo. Podobnie aplikację należy przetestować z różnymi specyfikacjami pamięci RAM i procesora, takimi jak 1 GB lub 2 GB.
- Użycie z innymi aplikacjami
Gdy testowana aplikacja działa równolegle z innymi aplikacjami, nie powinno być żadnych zakłóceń. Najlepszym sposobem na sprawdzenie tego jest przełączenie testowanej aplikacji i innych aplikacji.
- Aplikacja w tle
Pobierana jest aplikacja działająca w tle, która powinna pozostać w takim samym stanie, w jakim była wcześniej. Jeśli ten scenariusz nie zostanie prawidłowo obsłużony, dane zostaną utracone. Ponownie musisz wprowadzić dane od zera po pobraniu aplikacji.
Wydajność serwera / API
Gdy aplikacja współdziała z serwerem za pośrednictwem interfejsu API, czas odpowiedzi staje się krytyczny dla wydajności. Aby uzyskać wydajność serwera, sprawdzisz -
- Dane do iz serwera
Aplikacja powinna wydajnie obsługiwać dane wysyłane z serwera. Ładowanie danych nie może zająć zbyt dużo czasu. W niektórych aplikacjach dane są wysyłane w określonym formacie. Dlatego przed wyświetleniem go w aplikacji należy przekonwertować go na odpowiedni format. W tym procesie aplikacje czasami działają wolniej, a czas odpowiedzi wydłuża się.
- Wywołania API generowane z aplikacji
Liczba wywołań z testowanej aplikacji do serwera generowana przez aplikację powinna być mniejsza. W niektórych przypadkach dla tej samej funkcji wykonywanych jest wiele wywołań interfejsu API. Aby uzyskać lepszą wydajność, powinno to być obsługiwane przy mniejszej liczbie połączeń.
- Czas przestoju serwera
Z dowolnego powodu, jeśli serwer jest wyłączony lub nieosiągalny, możemy zapisać dane w natywnej bazie danych. Tak więc za każdym razem, gdy serwer jest wyłączony, możemy wyświetlić dane przechowywane w natywnej bazie danych. Innym rozwiązaniem mogą być awaryjne serwery baz danych, tj. Jeśli jeden z serwerów jest wyłączony lub znajduje się w fazie konserwacji, serwer zapasowy powinien być dostępny do przełączenia. Serwer awaryjny / zapasowy powinien być w ciągłej replikacji i synchronizacji z serwerem głównym.
Wydajność sieci
Należy zmierzyć wydajność aplikacji w różnych sieciach i właściwości sieci.
W przypadku wydajności sieci sprawdzisz następujące rzeczy.
- Trema
Opóźnienie w otrzymaniu informacji w sieci określa się jako fluktuacje. Jest to problem z sieciami bezpołączeniowymi lub sieciami z przełączaniem pakietów. Ponieważ informacje są rozprowadzane w pakietach, pakiety mogą podróżować odmienną ścieżką od nadawcy do odbiorcy. Gdy dane docierają do zamierzonej lokalizacji, zostają zaszyfrowane, niż zostały pierwotnie wysłane. W przypadku jitterów aplikacja mobilna powinna być wystarczająco wydajna, aby sobie z tym poradzić.
Musisz pokazać odpowiednie powiadomienia użytkownikowi końcowemu, aby ponownie wysłać żądanie lub poczekać, aż system ponownie odpowie.
- Utrata pakietów
W przypadku całkowitej utraty pakietu aplikacja powinna móc ponownie wysłać żądanie informacji lub odpowiednio wygenerować ostrzeżenia. Jeśli dane nie są kompletne, użytkownik nie będzie w stanie zrozumieć informacji wyświetlanych w aplikacji. Może to być stresujące dla użytkownika. Dlatego lepiej jest wyświetlić odpowiedni komunikat lub zachęcić użytkownika do ponownej próby.
- Szybkość sieci
Aplikację należy sprawdzić w różnych sieciach ze zmienną prędkością. Aplikację należy przetestować w sieciach 2.5G, 3G i 4G. Obejmuje to zarówno Wi-Fi, jak i sieci komórkowe. Należy również monitorować zachowanie aplikacji. Szczególnie, gdy obie sieci są dostępne i nastąpiło przełączenie z jednej sieci do drugiej.
Na przykład może pojawić się problem w aplikacji dla użytkowników podczas przełączania sieci telefonicznej z 4G na WIFI i odwrotnie. W takim przypadku aplikacja przestaje odpowiadać i może wymagać ponownego uruchomienia aplikacji.
Rozwiązywanie problemów z wydajnością aplikacji mobilnych
Po wykryciu problemów / problemów podczas testowania wydajności. Nadszedł czas, aby wyśledzić i poprawić błędy.
Problem 1) Opóźnienie lub powolna reakcja aplikacji mobilnej.
Przyczyną tego opóźnienia może być pamięć RAM, pamięć podręczna itp.
Musisz zabić niepotrzebne procesy lub wyczyścić pamięć podręczną. Rozwiązywanie problemu z łącznością może rozwiązać niektóre problemy powodujące opóźnienia
Problem 2) Ponowne uruchamianie aplikacji, zawieszanie się, zawieszanie się lub brak reakcji.
Można to naprawić, wykonując niektóre z poniższych kroków
- Optymalizacja kodów aplikacji
- Oprogramowanie powinno być poprawiane i aktualizowane.
- Automatyczne przywracanie
- Zarządzanie pamięcią RAM lub w niektórych przypadkach pamięcią ROM podczas korzystania z kart zewnętrznych
- Czyszczenie partycjonowania pamięci podręcznej
- Weryfikacja aplikacji współpracującej z aplikacjami i interfejsami API innych firm
- Mapowanie aplikacji mobilnej według urządzenia
Przydatne narzędzia do testowania aplikacji mobilnych
Narzędzia do testowania aplikacji mobilnych różnią się w zależności od urządzenia lub mobilnego systemu operacyjnego. Niektóre popularne narzędzia do testowania wydajności aplikacji mobilnych to
ANDROID
- Robotium
To jest tak, jak Selenium dla aplikacji mobilnych. Tester może nagrywać i odtwarzać kilka kroków, które są wymagane do wykonania testów.
- Monkey Runner
MonkeyRunner może uruchamiać testy na prawdziwych urządzeniach podłączonych do komputera lub emulatorów. Narzędzie posiada API, które umożliwia sterowanie smartfonem, tabletem lub emulatorem spoza kodu Androida.
JABŁKO
- Automator (Mac)
Automator to aplikacja opracowana przez firmę Apple dla systemu OS X. Implementuje ona tworzenie przepływów pracy metodą wskaż i kliknij (lub przeciągnij i upuść) w celu automatyzacji powtarzalnych zadań w partie w celu szybszej zmiany. Oszczędza to czas i wysiłek w porównaniu z interwencją człowieka w celu ręcznej zmiany każdego pliku z osobna.
Wyzwania
Kluczowe wyzwania stojące przed testami wydajności obejmują
- Organizowanie różnych platform mobilnych i ich systemów operacyjnych
- Symulowanie połączeń, takich jak Edge, 3G, 4G lub WiFi itp.
- Ograniczenia dotyczące urządzeń mobilnych, takie jak zużycie baterii i zasobów
- Użyteczność telefonu komórkowego
- Różne rozmiary urządzeń mobilnych do uruchamiania tej samej aplikacji
Skonfiguruj środowisko testowe wydajności aplikacji mobilnej
Aby skonfigurować środowisko testowe, musisz:
- Zrozumienie aplikacji mobilnej, którą należy przetestować
- Identyfikacja różnych systemów operacyjnych, na których aplikacja musi działać
- Tworzenie konfiguracji testowej
- Zbuduj emulatory lub symulatory
- Prototypowanie rzeczywistej konfiguracji
- Wybór odpowiedniego narzędzia do testów
Lista kontrolna testowania wydajności aplikacji mobilnych
Testowanie wydajności aplikacji mobilnych jest ważnym krokiem przed wydaniem. Testowanie wydajności jest wykonywane w celu sprawdzenia
- Ile pamięci RAM jest potrzebne do korzystania z tej aplikacji?
- Aby zweryfikować szybkość i czas odpowiedzi aplikacji w różnych sieciach i okolicznościach.
- Zapewnij realistyczne wrażenia użytkownika w różnych warunkach sieciowych
- Upewnij się, że osiągnięto wymagane wyniki w przypadku wielu połączeń
- Upewnij się, że aplikacja nie uległa awarii.
- Zapewnienie, że aplikacje mobilne działają dobrze podczas korzystania z danych, Wi-Fi lub innej łączności
- Monitorowanie czasu pracy i wąskich gardeł w korzystaniu z mobilnych API
- Aby zapewnić maksymalną liczbę jednoczesnych użytkowników
- Wreszcie, aby sprawdzić możliwości aplikacji mobilnej
Podsumowanie
- Testowanie wydajności wymaga zrozumienia aplikacji mobilnej, wykorzystania zasobów, użytkowników wirtualnych, emulatorów i wielu strategii testowych.
- Wydajność aplikacji na telefon komórkowy jest mierzona w następujących trzech kategoriach.
- Wydajność urządzenia
- Wydajność serwera
- Wydajność sieci
- Wyzwania związane z testowaniem wydajności obejmują kompaktowe rozmiary urządzeń mobilnych, dostępność zasobów, kosztorysowanie i budżetowanie.
Ten artykuł jest autorstwa Nosheen Wajahat