Testowanie wydajności aplikacji mobilnych: lista kontrolna, narzędzia (Andriod i iOS)

Spisie treści:

Anonim

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