Wollen Sie mehr darüber wissen, wie man mobile Anwendungen testet? Hier finden Sie die Anleitung zum Testen Ihrer mobilen Anwendung. Dieser Artikel befasst sich mit der Strategie des mobilen Testens, den wichtigsten Phasen des mobilen Testprozesses und den Besonderheiten des Testens von Android- und iOS-Mobilanwendungen.
Das explosionsartige Wachstum der Nutzung mobiler Geräte und der Entwicklung mobiler Anwendungen macht das Testen zu einer wichtigen Voraussetzung für die erfolgreiche und schnelle Bereitstellung hochwertiger mobiler Anwendungen.
Besonderheiten mobiler Anwendungen
Es ist klar, dass sich die mobile Anwendung stark von der Desktop-Anwendung unterscheidet. Das sollten wir bei der Planung des Testprozesses berücksichtigen.
Betrachten wir also die Hauptunterschiede zwischen mobilen und Desktop-Anwendungen:
- Das mobile Gerät ist ein System, das nicht über eine leistungsstarke Füllung verfügt. Es kann also nicht wie ein Personal Computer arbeiten.
- Das Testen mobiler Anwendungen erfolgt auf Handgeräten (Apple, Samsung, Nokia usw.), während die Desktop-App auf einem zentralen Prozessor getestet wird.
- Die Bildschirme mobiler Geräte sind vielfältig, ihre Erweiterungen und Farben. Die Bildschirmgröße von Mobiltelefonen ist kleiner als die von Desktop-Geräten.
- Das Tätigen und Empfangen von Anrufen ist die Hauptaufgabe des Telefons, deshalb sollte die Anwendung diese Hauptfunktion nicht beeinträchtigen.
- Eine große Vielfalt an spezifischen Betriebssystemen und Komponentenkonfigurationen: Android, iOS, BlackBerry
etc. - Mobiltelefon-Betriebssysteme sind schnell veraltet. Darüber hinaus gibt es eine Grenze für die Aktualisierung ihrer OS.
- Mobile Geräte verwenden Netzwerkverbindungen ( 3G, 4G, Wi-Fi), Desktop verwenden Breitbandverbindung oder Wi-Fi.
- Mobile Geräte suchen ständig das Netzwerk. Deshalb sollten Sie die Anwendung mit verschiedenen Datenraten testen.
- Tools, die für das Testen von Desktop-Anwendungen gut sind, sind für das Testen von mobilen Anwendungen nicht vollständig geeignet.
- Mobile Anwendungen müssen mehrere Eingabekanäle (Tastatur, Sprache, Gesten, etc.), Multimedia-Technologien und andere Funktionen, die ihre Benutzerfreundlichkeit erhöhen.
Ein weiterer wichtiger Punkt beim Testen von mobilen Anwendungen ist die Art der Anwendung.
Es werden drei Haupttypen von mobilen Anwendungen unterschieden: Mobile Web Apps, Native (rein native) Apps und Hybrid Apps.
Mobile Web Anwendung ist eigentlich die Website, die auf dem Gadget (Smartphone oder Tablet) mit Hilfe des mobilen Browsers geöffnet wird.
Einige Vorzüge der Mobile Web Apps:
- Einfache Entwicklung.
- Einfacher Zugriff.
- Einfache Aktualisierung.
- Mobile Web App erfordert keine Installation.
Einige Nachteile der Mobile Web Apps:
- Keine Unterstützung von Offline-Funktionen.
- Eingeschränkte Funktionalität im Vergleich zu Hybrid und Native Apps. (kein Zugriff auf das Dateisystem und lokale Ressourcen).
- Probleme bei der Weiterverbreitung: Google Play und App Store unterstützen die Weiterverteilung der Mobile Web Apps nicht.
Native App ist die Anwendung, die speziell für eine Plattform (Android, iOS, Tizen, Windows 10 M0bile, BlackBerry) entwickelt wurde.
Einige Vorteile der Native Apps:
- Native App funktioniert offline.
- Sie kann alle Funktionen ihres Gerätes nutzen.
- Erweiterte Benutzererfahrung.
- Push-Benachrichtigungen können für die Benachrichtigung der Benutzer verwendet werden.
Einige Nachteile der Native Apps:
- Die Erstellung von Native Apps ist im Vergleich zu den Mobile Web Apps teuer.
- Sie erfordert hohe Kosten für die Wartung.
Hybrid App ist die Mischung aus der Native App und Mobile Web App. Sie kann wie eine mobile Website im Anwendungsformat definiert werden.
Einige Vorzüge der Hybrid Apps:
- Kostengünstiger im Vergleich zur Native App.
- Einfache Verteilung.
- Eingebetteter Browser.
- Gerätefunktionen.
Einige Nachteile der Hybrid Apps:
- Es funktioniert nicht so schnell wie Native App.
- Grafiken sind im Vergleich zu Native App weniger an das Betriebssystem gewöhnt.
Schlüsselpunkte der Teststrategie für mobile Sites
Nun können wir über unsere Teststrategie nachdenken. Betrachten wir die wichtigsten Punkte und Herausforderungen, denen wir uns stellen sollten.
Geräteauswahl
Es besteht kein Zweifel, dass das reale Gerät die beste Entscheidung ist, wenn Sie eine mobile Anwendung testen wollen. Das Testen auf einem echten Gerät liefert immer die genauesten Ergebnisse.
In der Tat ist es nicht einfach, das am besten geeignete Gerät zu wählen. Wie auch immer, hier sind einige Aktionen, die Sie tun sollten, während Sie das Gerät für das mobile Testen auswählen:
- Machen Sie eine Analyse, um die beliebtesten und am meisten verwendeten Geräte auf dem Markt zu bestimmen.
- Wählen Sie Geräte mit verschiedenen Betriebssystemen.
- Wählen Sie Geräte mit verschiedenen Bildschirmauflösungen.
- Achten Sie auf die nächsten Faktoren: Kompatibilität, Speichergröße, Konnektivität usw.
Wie bereits erwähnt, haben Sie viele Vorteile, wenn Sie mobile Apps auf echten Geräten testen:
- Hohe Genauigkeit des Testergebnisses.
- Einfache Fehlerreplikation.
- Die Punkte wie Batterieentladung, Geolokalisierung, Push-Benachrichtigungen, in die Geräte eingebaute Sensoren sind einfach zu testen.
- Fähigkeit, eingehende Unterbrechungen (Anrufe, SMS) zu testen.
- Fähigkeit, mobile Anwendungen in der realen Umgebung und unter realen Bedingungen zu testen.
- Keine falsch positiven Ergebnisse.
Und auch einige Nachteile:
- Eine große Anzahl der oft verwendeten Geräte.
- Zusätzliche Kosten für die Wartung der Geräte.
- Gegrenzter Zugang zu den Geräten, die oft im Ausland verwendet werden.
Wie Sie sehen können, ist das Testen auf den echten Geräten eine gute Entscheidung, aber es hat auch einige Einschränkungen. Man sollte sie überwinden, um den Testprozess von mobilen Anwendungen wirklich effektiv zu gestalten.
Emulatoren oder Simulatoren?
Es ist nicht schwer zu erraten, dass es sich um spezielle Tools handelt, die Funktionalität und Verhalten der mobilen Geräte emulieren/simulieren.
„Emulator“ und „Simulator“ werden oft verwechselt. Trotz ihrer fast ähnlichen Aussprache haben sie nicht die gleiche Bedeutung.
In der Tat ist ein Emulator der Ersatz für ein Originalgerät. Obwohl Sie Software und Anwendungen auf Ihrem Gerät ausführen können, haben Sie keine Möglichkeit, sie zu ändern.
Der Simulator repliziert nicht die Hardware des Geräts, aber Sie haben die Möglichkeit, die ähnliche Umgebung wie das Betriebssystem des Originalgeräts einzurichten.
So ist es besser, mobile Simulatoren zu verwenden, um mobile Anwendungen zu testen. Emulatoren sind für das Testen von mobilen Websites besser geeignet.
Hier können Sie mehr über Emulatoren und Simulatoren lesen.
Einige Vorteile der Verwendung von Simulatoren zum Testen von mobilen Anwendungen:
- Einfache Einrichtung.
- Schnelles Arbeiten.
- Hilft, das Verhalten Ihrer mobilen Anwendung zu überprüfen und zu erforschen.
- Kosteneffektiv.
Einige Nachteile der Verwendung von Simulatoren zum Testen mobiler Anwendungen:
- Die Hardware des Geräts wird nicht berücksichtigt.
- Falsch positive Ergebnisse sind möglich.
- Unvollständige Daten der Simulationsergebnisse, was die vollständige Analyse der Testergebnisse erschwert.
Cloud-basiertes Testen der mobilen Anwendung
Das Testen mobiler Anwendungen mit Cloud-basierten Tools scheint die optimale Wahl zu sein. Es kann Ihnen helfen, die Nachteile der realen Geräte und Simulatoren zu überwinden.
Die wichtigsten Vorteile dieses Ansatzes:
- Einfache Verfügbarkeit.
- Eine Möglichkeit, mobile Geräte auf mehreren Systemen und Netzwerken zu betreiben.
- Eine Möglichkeit, Apps in der Cloud nicht nur zu testen, sondern auch zu aktualisieren und zu verwalten.
- Kosteneffizient.
- Hohe Skalierbarkeit.
- Das gleiche Skript kann auf mehreren Geräten parallel ausgeführt werden.
Einige Schwachpunkte der Cloud Mobile Testing:
- Less der Kontrolle.
- Nicht so hohes Niveau der Sicherheit.
- Abhängigkeit von der Internetverbindung.
Einige nützliche Cloud-basierte Tools, die Ihnen helfen können, um mobile Anwendung zu testen: Xamarin Test Cloud, Perfecto Mobile Continuous Quality Lab, Keynote Mobile Testing. Hier können Sie mehr über mobile Testtools lesen.
Mobiles manuelles und automatisiertes Testen
Heutzutage vertreten viele Spezialisten die Meinung, dass das manuelle Testen sterben wird. Das ist natürlich nicht wahr. Natürlich können wir nicht auf die Testautomatisierung verzichten, aber es gibt auch Situationen, in denen manuelle Tests vorzuziehen sind.
Einige Vorzüge des manuellen Testens mobiler Anwendungen:
- Es ist in der kurzen Zeit kostengünstiger.
- Manuelle Tests sind flexibler.
- Bessere Simulation von Benutzeraktionen.
Einige Nachteile des manuellen Testens mobiler Anwendungen:
- Manuelle Testfälle können nur schwer wiederverwendet werden.
- Weniger effektiv bei der Ausführung bestimmter und konstanter Aufgaben.
- Der Testablauf ist langsam.
- Einige Arten von Testfällen können nicht manuell ausgeführt werden (Lasttests).
Einige Vorteile der App-Automatisierungstests:
- Der Testablauf ist schneller.
- Kosteneffektiv in der Langzeitperiode.
- Automatisierte Testfälle können leicht wiederverwendet werden.
- Die einzige Entscheidung für einige Arten von Tests (Perfomance-Tests).
- Testergebnisse sind leicht zu teilen.
Einige Nachteile der App-Automatisierungstests:
- Automatisierte mobile Testtools haben einige Einschränkungen.
- Zeitaufwendiger Prozess.
- Automatisierte Tests haben weniger Effizienz bei der Definition von Benutzerfreundlichkeit oder positiver Kundenerfahrung.
Wie Sie sehen, sollten Sie verschiedene Entscheidungen treffen, um Ihre Strategie für die mobilen Tests zu erstellen. Natürlich gibt es darauf keine eindeutigen Antworten.
Die Kombination von verschiedenen Ansätzen scheint der optimale Weg zu sein. Sie können zum Beispiel in den ersten Phasen des Testprozesses Simulatoren verwenden. In der Endphase ist es jedoch besser, echte Geräte (physisch oder cloudbasiert) zu verwenden. Automatisierte Tests sind für Last- und Regressionstests vorzuziehen. Für Usability- und Sondierungstests sollten jedoch besser manuelle Testtools verwendet werden.
Testphasen für mobile Anwendungen
Betrachten wir nun die Hauptphasen des Testprozesses für mobile Anwendungen. Sie sind den Phasen des Website-Tests weitgehend ähnlich. Meistens, aber nicht ganz ähnlich. Wie Sie bereits gelesen haben, gibt es einige grundlegende Unterschiede zwischen mobilen und Desktop-Anwendungen. Daher müssen wir einige zusätzliche Phasen durchlaufen und einige zusätzliche Überprüfungen vornehmen.
1. Dokumentationstests
Dokumentationstests sind die notwendige Vorbereitungsphase des Testprozesses für mobile Anwendungen.
Eigentlich beginnen die Tests vor dem Softwareentwicklungsprozess. Die Tester erhalten Navigationskarten, Bildschirmlayouts und andere Anforderungen, die auf dem Entwurf nicht sichtbar sind. Diese Anforderungen werden auf Vollständigkeit und Inkonsistenz analysiert. Widersprüche in den Anforderungen müssen vor Beginn der Entwicklung aufgelöst werden.
In dieser Phase werden Artefakte wie Anforderungen (Spezifikation, PRD), Testplan, Testfälle, Traceability-Matrix erstellt und analysiert.
2. Funktionstest
Der Funktionstest soll sicherstellen, dass die Software gemäß den definierten Anforderungen funktioniert. Vereinfacht ausgedrückt wird geprüft, ob die Anwendung die erwarteten Funktionen ausführt, die in der Regel in der Spezifikation beschrieben sind oder der Logik von Geschäftsprozessen entsprechen.
- Beim funktionalen Testen Ihrer mobilen App sind die folgenden wichtigen Faktoren zu beachten:
- Der Anwendungstyp, der durch seine Geschäftsfunktionalität definiert wird (soziale Netzwerke, Bankwesen, Bildung, Bestellung und Lieferung von Lebensmitteln, Tickets, Spieleindustrie usw.).
- Zielgruppe (Unternehmen, Nutzer, Bildungsumfeld usw.).
- Vertriebskanäle (direkte Auslieferung, Google Play, App Store usw.)
Betrachten wir nun die wichtigsten Überprüfungen, die durchgeführt werden sollten, um die Funktionalität der mobilen Anwendung zu testen.
Installation und Ausführung der Anwendung
- Die Installation der Anwendung sollte ohne signifikante Fehler erfolgen, wenn das Gerät die Systemanforderungen erfüllt.
- Überprüfen Sie, ob die Anwendung automatisch korrekt startet.
- Stellen Sie sicher, dass das Benutzerhandbuch verfügbar ist.
- Stellen Sie sicher, dass der Betrieb der Anwendung während des Starts/Beendens die Grundanforderungen erfüllt.
Testen von Feldern
- Überprüfen, ob die erforderlichen Felder korrekt funktionieren.
- Sicherstellen, dass Pflicht- und optionale Felder auf unterschiedliche Weise angezeigt werden.
Testen von Geschäftsfunktionen
- Überprüfen, ob der angegebene Preis und Inhalt den vom Benutzer erhaltenen Informationen entspricht.
- Sicherstellen, dass der Nutzer typische Vorgänge durchführen kann: kaufen, Waren in den Warenkorb legen, Waren bestellen usw.
- Sicherstellen, dass die Anwendung den Zahlungsverkehr über Zahlungssysteme wie Visa, Mastercard, Paypal usw. unterstützt.
- Prüfen Sie die Rückgewinnung des Kaufs unabhängig vom Gerät, aber mit einer Kontobindung.
Unterbrechungen testen
- Eingehende und ausgehende Anrufe, SMS und MMS.
- Batterie entladen/entfernen.
- Netz/Wi-Fi trennen und verbinden.
- SD-Karte trennen und anschließen.
- Gerät aufladen.
Konstantes Benutzerfeedback testen
- Inhaltsnachrichten herunterladen
- Fortschrittsanzeige.
- Angemessene Reaktion der Tasten beim Drücken.
- Fehlermeldungen beim Netzwerkzugriff.
- Versuch, wichtige Informationsmeldungen zu löschen.
- Verfügbarkeit und Synchronisierung von Ton-, Vibrations- und visuellen Benachrichtigungen.
- Das Erscheinen eines Bildschirms (Meldung) am Ende des Prozesses (Spiel).
Update-Tests
- Alle Benutzerdaten werden nach Updates gespeichert.
- Stellen Sie sicher, dass der Update-Fortschritt richtig angezeigt wird.
- Stellen Sie sicher, dass Updates von älteren Betriebssystemen unterstützt werden.
- Testen Sie verschiedene Arten der Installation von Updates (Wi-Fi, Bluetooth, USB)
Testen Sie die Geräteressourcen
- Mangelnder Speicherplatz für die Installation oder Ausführung der Anwendung.
- Speicherlecks. Achten Sie auf Fenster mit vielen Informationen und Aufgaben mit langen Arbeitsabläufen.
- Installation/Ersatz der App auf der SD-Karte.
- Das Fehlen einiger Funktionen, die von der Anwendung unterstützt werden (3G, SD-Karte, etc.).
- Vergewissern Sie sich, dass die installierte Anwendung den normalen Betrieb anderer Anwendungen nicht stört und nicht deren Speicher verbraucht.
Weitere Überprüfungen:
- Betreffende Spiele Überprüfungen: сorrectness of connecting/disconnecting players, players connection via different networks etc.
- Make sure the information error messages are correct on time and appropriate.
- Verify connection to the analytical tools like Google Analytics.
- Testing the power consumption.
- Verify the necessary options correct work with social networks – Share, Publish, Navigation.
Einige nützliche Tools zum Testen der Funktionalität von mobilen Anwendungen: Appium, Selendroid, Robotium, Ranorex.
3. Usability-Testing
Usability-Testing zielt darauf ab, die Bequemlichkeit der Nutzung der Anwendung zu gewährleisten, schafft eine intuitive Schnittstelle, die mit akzeptierten Standards übereinstimmt. Es wird durchgeführt, um schnelle und einfach zu bedienende Anwendungen zu erstellen. Hier sind 3 Hauptkriterien für die Bewertung von Anwendungen:
- Zufriedenheit
- Effizienz
- Effektivität
Lassen Sie uns die einfache Checkliste zur Prüfung der Benutzerfreundlichkeit von mobilen Anwendungen betrachten:
- Stellen Sie sicher, dass die Schaltflächen die normale Größe haben und in einem Bereich des Bildschirms platziert sind
- Prüfen Sie, ob die App im Multitasking-Modus funktioniert, falls nötig.
- Überprüfen Sie die Navigation der wichtigen Anwendungsmodule.
- Stellen Sie sicher, dass die Symbole und Bilder in der App-Umgebung natürlich aussehen.
- Überprüfen Sie, dass die Farbe der Schaltflächen, die dieselbe Funktion erfüllen, dieselbe ist.
- Der Text sollte einfach, klar und für den Benutzer sichtbar sein. Kurze Sätze und Absätze sind gut lesbar.
- Bestimmen Sie die optimale Schriftgröße.
- Stellen Sie sicher, dass das Zoom-in und Zoom-out System korrekt funktioniert.
- Überprüfen Sie, dass die Kontextmenüs nicht überladen sind.
- Stellen Sie sicher, dass die Anwendung in jedem Zustand beendet werden kann und dass sie den Betrieb im gleichen Zustand wieder aufnimmt.
- Stellen Sie sicher, dass die Anwendungskomponenten mit den Aktionen des Benutzers synchronisiert sind.
- Stellen Sie sicher, dass der Benutzer zurückkehren oder die Aktion abbrechen kann, wenn er/sie die falsche Taste gedrückt hat.
- Stellen Sie sicher, dass die Reaktionsgeschwindigkeit des Elements hoch genug ist
Einige nützliche Tools zum Testen der Benutzerfreundlichkeit mobiler Anwendungen: User Zoom, Reflector, Loop11.
4. UI (User Interface) Testing
User Interface (UI) Testing wird durchgeführt, um sicherzustellen, dass die grafische Benutzeroberfläche Ihrer App den Spezifikationen entspricht.
Hier sind einige Überprüfungen zum Testen der Benutzeroberfläche mobiler Anwendungen:
- Stellen Sie sicher, dass die Standards für die Benutzeroberfläche eingehalten werden
- Prüfen Sie die Benutzeroberfläche Ihrer App mit den Standard-Bildschirmauflösungen: 640 × 480, 800 × 600, 1024 × 768, 1280 × 800, 1366 × 768, 1400 × 900, 1680 × 1050.
- Überprüfen Sie die Reaktionsfähigkeit von Anwendungen auf verschiedenen Geräten.
- Testen Sie die wichtigsten Designelemente: Schaltflächen, Symbole, Farben, Links, Schriftarten, Schriftgrößen, Layout, Textfelder, Textformatierung, Beschriftungen, Beschriftungen, Schaltflächen, Listen usw.
- Überprüfen Sie, dass die Werbung nicht die Schaltflächen zur Anwendungssteuerung überlappt.
- Stellen Sie sicher, dass die Werbung eine zugängliche Schaltfläche zum Schließen hat.
- Stellen Sie sicher, dass die verschiedenen Elemente auf Retina- und Nicht-Retina-Bildschirmen korrekt angezeigt werden.
- Überprüfen Sie, dass alle Elemente im Hoch- und Querformat angezeigt werden.
Einige nützliche Tools zum Testen der Benutzeroberfläche von mobilen Anwendungen: FitNesse, iMacros, Coded UI, Jubula, LoadUI.
5. Kompatibilitäts- (Konfigurations-) Tests
Kompatibilitäts- (Konfigurations-) Tests werden durchgeführt, um die optimale Leistung der Anwendung auf verschiedenen Geräten zu gewährleisten – unter Berücksichtigung ihrer Größe, Bildschirmauflösung, Version, Hardware, usw. Sie sollten die folgenden Punkte beachten:
- OS-Konfiguration
- Browser-Konfiguration
- Datenbank-Konfiguration
- Geräte-Konfiguration
- Netzwerk-Konfiguration
Das plattformübergreifende Testen hilft Ihnen, mobile Anwendungen in verschiedenen Betriebssystemen zu testen: Windows, iOS, Android und BlackBerry usw.
Browserübergreifende Tests ermöglichen es, die korrekte Funktion der App in verschiedenen Browserkonfigurationen sicherzustellen: Mozilla Firefox, Google Chrome, Opera Mini usw.
Datenbanktests zielen darauf ab, die korrekte Funktionsweise Ihrer Anwendung in verschiedenen Datenbankkonfigurationen zu überprüfen: Oracle, DB2, MySql, MSSQL Server, Sybase.
Das Testen der Gerätekonfiguration sollte folgende Parameter berücksichtigen:
- Gerätetyp: Smartphone, Tablet, etc.
- Gerätekonfiguration: RAM, Prozessortyp, Bildschirmauflösung, Akkukapazität usw.
Die Prüfung der Netzkonfiguration wird durchgeführt, um die korrekte Arbeit in verschiedenen Netzkonfigurationen (GSM, TDMA) und Standards (2G, 3G, 4G) zu gewährleisten.
Einige Tipps zum Testen der Kompatibilität Ihrer mobilen Anwendung:
- Erstellen Sie eine Abdeckungsmatrix (die Tabelle, in die alle möglichen Konfigurationen eingetragen werden).
- Priorisieren Sie die Konfigurationen.
- Prüfen Sie jede Konfiguration Schritt für Schritt gemäß den festgelegten Prioritäten.
Einige nützliche Tools zum Testen der Kompatibilität der mobilen Anwendung: BrowserStack, CrossBrowserTesting von Smart Bear, Litmus, Browsera, Rational Clearcase von IBM, Ghostlab.
6. Performancetests
Performancetests sind eine Reihe von Testarten, deren Zweck es ist, die Funktionsfähigkeit, Stabilität, den Ressourcenverbrauch und andere Attribute der Anwendungsqualität unter verschiedenen Nutzungsszenarien und Belastungen zu bestimmen.
Hauptziele der Leistungstests:
- Überprüfen der Antwortzeit der Anwendung auf verschiedene Arten von Anfragen, um sicherzustellen, dass die Anwendung gemäß den Anforderungen für die normale Benutzerlast funktioniert. (Lasttests).
- Testen der Arbeitsfähigkeit der Anwendung bei Belastungen, die die des Benutzers um ein Vielfaches übersteigen. (Stresstest).
- Untersuchung der Funktionsfähigkeit der Anwendung bei Langzeitarbeit unter normaler Belastung. (Stabilitätsprüfung).
- Überprüfen Sie die Arbeit unter den Bedingungen der „erweiterten“ Datenbank, unter der normalen Zeit. (Volumenprüfung).
- Bestimmen Sie die Anzahl der Benutzer, die gleichzeitig mit der Anwendung arbeiten können. (Gleichzeitigkeitstests).
Einige Überprüfungen für Leistungstests Ihrer mobilen App:
- Bestimmen Sie, ob die Anwendung unter verschiedenen Netzwerkbedingungen gleich läuft.
- Finden Sie verschiedene Anwendungs- und Infrastruktur-Engpässe, die die Anwendungsleistung verringern.
- Bewerten Sie die Fähigkeit der App, mit geplanten Lastvolumina zurechtzukommen.
- Überprüfen Sie, ob die Antwortzeit der Anwendung den Anforderungen entspricht.
- Prüfen Sie die Stabilität der Anwendung unter den Bedingungen einer starken Benutzerlast.
- Sichern Sie die Leistung der Anwendung, wenn sie unter den Bedingungen einer nicht permanenten Verbindung zum Internet arbeitet.
- Stellen Sie sicher, dass die vorhandene Client-Server-Konfiguration eine optimale Leistung bietet.
Einige nützliche Tools zum Testen der Leistung mobiler Anwendungen: NeoLoad von Neotys, Apteligent (ehemals Crittercism), New Relic.
7. Sicherheitstests
Sicherheitstests zielen darauf ab, die Sicherheit des Systems zu überprüfen, sowie die Risiken zu analysieren, die mit der Bereitstellung eines ganzheitlichen Ansatzes zum Schutz der Anwendung, Hacker, Viren, unbefugten Zugriff auf sensible Daten verbunden sind.
Einige Überprüfungen, die Sie bestehen müssen, um die Sicherheit mobiler Anwendungen zu testen:
- Sicherstellen, dass die Daten der Benutzer der Anwendung (Logins, Passwörter, Bankkartennummern) vor Netzwerkangriffen automatisierter Systeme geschützt sind und nicht durch Auswahl gefunden werden können.
- Überprüfen Sie, dass das Sicherheitssystem der Anwendung ein starkes Passwort erfordert und es dem Angreifer nicht ermöglicht, die Passwörter anderer Benutzer zu ergreifen.
- Stellen Sie sicher, dass die Anwendung keinen Zugriff auf sensible Inhalte oder Funktionen ohne ordnungsgemäße Authentifizierung ermöglicht.
- Schützen Sie die Anwendung vor Angriffen des Typs SQL-Injection.
- Schützen Sie die Anwendung und das Netzwerk vor DoS-Angriffen.
- Schützen Sie die Anwendung vor bösartigen Angriffen auf Clients.
- Schützen Sie das System vor bösartigen Implementierungen, wenn das Programm ausgeführt wird.
- Sitzungsverwaltung zum Schutz von Informationen vor unbefugten Benutzern.
- Vermeiden Sie mögliche bösartige Folgen des Datei-Caching.
- Untersuchen Sie Benutzerdateien und verhindern Sie deren mögliche schädliche Auswirkungen.
- Analysieren Sie die Interaktion von Systemdateien, identifizieren und korrigieren Sie Schwachstellen.
- Vermeiden Sie mögliche bösartige Aktionen von Cookies.
Einige nützliche Tools zum Testen der Sicherheit mobiler Anwendungen: Retina CS Community, OWASP Zed Attack Proxy, Veracode, Google Nogotofail und SQL Map.
8. Wiederherstellungstest
Der Wiederherstellungstest überprüft die zu testende App hinsichtlich ihrer Fähigkeit, möglichen Ausfällen aufgrund von Softwarefehlern, Hardwareausfällen oder Kommunikationsproblemen standzuhalten und sich erfolgreich davon zu erholen.
Hier ist die Liste der Überprüfungen für den Wiederherstellungstest:
- Überprüfen Sie die effektive Wiederherstellung der Anwendung nach unvorhergesehenen Absturzszenarien.
- Sichern Sie den Prozess der Datenwiederherstellung nach einer Unterbrechung der Verbindung.
- Test der Wiederherstellung nach einem Systemausfall und einem Transaktionsausfall.
- Überprüfen der Fähigkeit der Anwendung, Transaktionen bei einem Stromausfall (schwache Batterie, fehlerhaftes Herunterfahren der Anwendung usw.) zu verarbeiten.
9. Lokalisierungstests
Lokalisierungstests ermöglichen es Ihnen, die Anpassung der mobilen Anwendung an eine bestimmte Zielgruppe unter Berücksichtigung ihrer kulturellen Besonderheiten zu testen.
Einige Überprüfungen für die Lokalisierungstests:
- Bestimmen Sie die von der Anwendung unterstützten Sprachen.
- Sichern Sie die Richtigkeit der Übersetzung.
- Überprüfen Sie die Korrektheit der Übersetzung in Übereinstimmung mit dem Thema der Anwendung.
- Prüfen Sie die Datumsformate.
- Prüfen Sie die Trennzeichen in Zahlen.
Natürlich werden Muttersprachler bevorzugt, um die Lokalisierung der mobilen Anwendung zu testen.
Ubertester, eggPlant kann nützlich sein, um die Lokalisierung der mobilen Anwendung zu testen.
10. Änderungsbezogene Tests
So, Sie haben alle genannten Phasen durchlaufen und einige Fehler gefunden. Daher wurden einige Änderungen am Code Ihrer Anwendung vorgenommen.
Die wichtigsten Ziele der änderungsbezogenen Tests:
- Überprüfen Sie, ob Ihr Team alle gefundenen Fehler erfolgreich behoben hat (Re-Testing oder Confirmation Testing). Vereinfacht gesagt, werden die Testfälle, die die Fehler ursprünglich entdeckt haben, erneut ausgeführt. Und dieses Mal sollten sie ohne Fehler bestanden werden.
- Überprüfen Sie, dass die neuen Änderungen nicht zum Auftreten neuer Fehler geführt haben. (Regressionstests). Wenn Sie Regressionstests durchführen, sollten Sie nicht nur Testfälle mit erkannten Fehlern bestehen, sondern auch Testfälle, die alle Funktionen Ihrer Anwendung überprüfen.
Einige nützliche Tools für das Testen von Änderungen an Ihrer Anwendung: Appium, Robotium, Ranorex.
11. Beta-Tests
Schließlich haben Sie die Vorabversion mit voller Funktionalität Ihrer mobilen App. Es wäre besser, die Möglichkeiten und die Stabilität des Programms im Hinblick auf seine zukünftigen Nutzer zu bewerten.
Beta-Tests sind die Phase der Fehlersuche und Überprüfung der Beta-Version des Programms. Sein Hauptzweck ist die Identifizierung der maximalen Anzahl von Fehlern in der Arbeit für ihre spätere Beseitigung vor der endgültigen Freigabe der App auf den Markt.
Personen, die Erfahrung mit der Arbeit mit ähnlicher Art apps, besser noch, mit der vorherigen Version der Anwendung haben, sind auf die Rolle der Beta-Tester gewählt.
Sie sollten die Aufmerksamkeit auf die folgenden Faktoren zu zahlen, bevor Sie Beta-Tests Ihrer mobilen App:
- Eine Reihe von Test-Teilnehmer.
- Testdauer.
- Versand
- Demografische Abdeckung
- Testkosten.
Auch wenn Sie etwas Geld für Beta-Tests ausgeben müssen, könnte es eine gute Investition in die Qualität Ihrer mobilen App sein.
Einige beliebte Plattformen für Beta-Tests von mobilen Apps: HockeyApp, Ubertesters, TestFlight.
12. Zertifizierungstest
Es gibt bestimmte Regeln für die Organisation einer Installationsdatei (.apk) und Regeln für die Gestaltung von Anwendungen für jeden Anwendungsspeicher. Bei der Zertifizierungsprüfung wird überprüft, ob die App die Anforderungen der beliebtesten Stores wie Google Play, App Store und Windows Phone erfüllt.
Betrachten wir die wichtigsten Kriterien für die Übereinstimmung der Anwendung mit Standards, Lizenzvereinbarungen und Nutzungsbedingungen.
Android:
- Die Installationsdatei für die Anwendung (.apk) entspricht den Programmrichtlinien.
- Die Anwendung erfüllt die Anforderungen der UIG .
- Die Anwendung enthält keine Viren. Android Market prüft die Anwendung halbautomatisch auf Viren und könnte Ihr Konto sperren, wenn sie entdeckt werden.
- Sie sollten die Reihenfolge der Versionskontrolle einhalten, wenn Sie eine aktualisierte Version Ihrer App veröffentlichen.
iOS:
- Die Anwendung erfüllt die Anforderungen der Human Interface Guidelines.
- Die Anwendung muss einen eindeutigen Namen haben.
- Es muss ein Link für das Feedback des Entwicklers angegeben werden.
- Die Anwendung sollte in die festgelegte bestimmte Kategorie eingeordnet werden.
- Der App Store testet die Anwendung auf Kompatibilität.
- Die App enthält kein verbotenes Material, keine unvorhergesehenen Arbeitsverzögerungen oder Wiederholungen bestehender Funktionen.
Windows Phone
- Die Anwendung erfüllt die Anforderungen der App-Zertifizierungsanforderungen.
- Klare Beschreibung der Hardware- und Netzwerkanforderungen.
- Die in der Beschreibung genannten oder in den Screenshots gezeigten Funktionen sind vollständig realisiert
- Option zur Steuerung des automatisch abspielbaren Tons ist erforderlich.
Tipps zum Testen mobiler Anwendungen
Systematisieren wir unser Wissen und versuchen wir, die wichtigsten Tipps für das Testen mobiler Anwendungen zu ermitteln.
- Lernen Sie die zu testende Anwendung kennen.
- Erinnern Sie sich an die Unterschiede zwischen Desktop- und mobilen Anwendungen.
- Berücksichtigen Sie die Besonderheiten des Betriebssystems und der Hardware
- Verwenden Sie echte Geräte, wenn es möglich ist.
- Versuchen Sie nicht, das „Schweizer Taschenmesser“ des Testens zu finden. Verwenden Sie die Tools, mit denen Sie vertraut sind.
- Nutzen Sie die Vorteile des Cloud Mobile Testing.
- Bestätigen Sie Ihre Ergebnisse mit Screenshots, Protokollen und Videos.
- Testen Sie Ihre mobile App sowohl im Hoch- als auch im Querformat.
- Nutzen Sie die Entwicklungsmenüoptionen für iOS und Android.
- Vernachlässigen Sie nicht (aber missbrauchen Sie auch nicht) Emulatoren und Simulatoren zum Testen.
- Überprüfen Sie die Leistung Ihrer App.
- Automatisieren Sie nicht alles
- Lassen Sie echte Benutzer Ihre App testen
- Freigen Sie sich, um komplexere, unkonventionelle Testszenarien zu erarbeiten (z.z. B. Test-„Affen“).
- Berücksichtigen Sie den menschlichen Faktor
Testen Sie mobile Anwendungen mit EasyQA SDK
Praxis ist der beste Weg, etwas zu lernen. Sie haben die Möglichkeit, einige Funktionen von EasyQA für das Testen Ihrer mobilen Anwendung zu verwenden.
EasyQA SDK ist eine Reihe von Funktionen, die von unserem Team entwickelt wurden, um den Softwaretestprozess effektiver und einfacher zu gestalten.
Hier sind die wichtigsten Funktionen:
- Fehlerberichte
- In-App-Fehlerberichte
- Screenshots erstellen
- Videoaufnahmen
- Es funktioniert sowohl mit Android- als auch mit iOS-Apps.
Folgen Sie diesem Link, wenn Sie mehr über EasyQA SDK erfahren möchten.