Eine häufige Frage unserer Lernenden lautet: Wie teste ich mobile Apps? In diesem Tutorial stellen wir Beispiel-Testszenarien / Testfälle zum Testen einer mobilen Anwendung bereit.
Sie können einige oder alle Testfälle basierend auf Ihren mobilen Testanforderungen ausführen. Testfälle werden basierend auf mobilen Testtypen organisiert.
- Testfälle für Funktionstests
- Leistungstest
- Testfälle für Sicherheitstests
- Testfälle für Usability-Tests
- Testfälle für Kompatibilitätstests
- Testfälle zur Prüfung der Wiederherstellbarkeit
- Wichtige Checkliste
Funktionstests mobiler Anwendungen
Das Funktionstest mobiler Anwendungen ist ein Prozess zum Testen der Funktionen mobiler Anwendungen wie Benutzerinteraktionen sowie zum Testen der Transaktionen, die Benutzer möglicherweise ausführen. Der Hauptzweck von Funktionstests für mobile Anwendungen besteht darin, die Qualität sicherzustellen, die festgelegten Erwartungen zu erfüllen, das Risiko oder die Fehler zu verringern und die Kundenzufriedenheit zu gewährleisten.
Die verschiedenen Faktoren, die für Funktionstests relevant sind, sind
- Art der Anwendung basierend auf der Nutzung der Geschäftsfunktionalität (Banking, Gaming, Social oder Business)
- Zielgruppentyp (Verbraucher, Unternehmen, Bildung)
- Vertriebskanal, über den die Anwendung verbreitet wird (z. B. Apple App Store, Google Play, Direktvertrieb)
Die grundlegendsten Testszenarien beim Funktionstest können wie folgt betrachtet werden:
- Um zu überprüfen, ob alle erforderlichen Pflichtfelder wie erforderlich funktionieren.
- Um zu überprüfen, ob die Pflichtfelder auf dem Bildschirm anders angezeigt werden als die nicht Pflichtfelder.
- Überprüfen, ob die Anwendung bei jedem Start / Stopp der Anwendung gemäß den Anforderungen funktioniert.
- Um zu überprüfen, ob die Anwendung bei jedem eingehenden Anruf in den minimierten Modus wechselt. Um dasselbe zu validieren, müssen wir ein zweites Telefon verwenden, um das Gerät anzurufen.
- Um zu überprüfen, ob das Telefon SMS speichern, verarbeiten und empfangen kann, wenn die App ausgeführt wird. Um dies zu überprüfen, müssen wir ein zweites Telefon verwenden, um SMS an das Gerät zu senden, das getestet wird und auf dem die zu testende Anwendung gerade ausgeführt wird.
- Um zu überprüfen, ob das Gerät die erforderlichen Multitasking-Anforderungen erfüllen kann, wann immer dies erforderlich ist.
- Um zu überprüfen, ob die Anwendung die erforderlichen Optionen für soziale Netzwerke wie Freigabe, Veröffentlichung und Navigation usw. zulässt.
- Um zu überprüfen, ob die Anwendung alle Zahlungsgateway-Transaktionen wie Visa, Mastercard, Paypal usw. unterstützt, die von der Anwendung gefordert werden.
- Um zu überprüfen, ob die Seitenscrollszenarien in der Anwendung nach Bedarf aktiviert sind.
- Um zu überprüfen, ob die Navigation zwischen relevanten Modulen in der Anwendung den Anforderungen entspricht.
- Um zu überprüfen, ob die Kürzungsfehler absolut erschwinglich sind.
- Um zu überprüfen, ob der Benutzer eine entsprechende Fehlermeldung wie „Netzwerkfehler. Bitte versuchen Sie es nach einiger Zeit “, wenn ein Netzwerkfehler auftritt.
- Um zu überprüfen, ob die installierte Anwendung eine zufriedenstellende Leistung anderer Anwendungen ermöglicht und nicht in den Speicher der anderen Anwendungen gelangt.
- Um zu überprüfen, ob die Anwendung beim letzten Vorgang im Falle eines harten Neustarts oder eines Systemabsturzes fortgesetzt wird.
- Um zu überprüfen, ob die Installation der Anwendung reibungslos durchgeführt werden kann, sofern der Benutzer über die erforderlichen Ressourcen verfügt und keine wesentlichen Fehler auftreten.
- Um zu überprüfen, ob die Anwendung eine automatische Startfunktion gemäß den Anforderungen ausführt.
- Um zu überprüfen, ob die Anwendung gemäß den Anforderungen in allen Versionen von Mobile (2g, 3g und 4g) ausgeführt wird.
- Durchführen von Regressionstests, um neue Softwarefehler in vorhandenen Bereichen eines Systems aufzudecken, nachdem Änderungen an diesen vorgenommen wurden. Führen Sie zuvor durchgeführte Tests erneut aus, um festzustellen, dass sich das Programmverhalten aufgrund der Änderungen nicht geändert hat.
- Um zu überprüfen, ob die Anwendung ein verfügbares Benutzerhandbuch für diejenigen bereitstellt, die mit der App nicht vertraut sind
Testfälle für Leistungstests
Das grundlegende Ziel dieser Art von Tests besteht darin, sicherzustellen, dass die Anwendung unter bestimmten Leistungsanforderungen, z. B. beim Zugriff einer großen Anzahl von Benutzern oder beim Entfernen eines wichtigen Infrastrukturteils wie eines Datenbankservers, eine akzeptable Leistung erbringt.
Die allgemeinen Testszenarien für Leistungstests in einer mobilen Anwendung sind:
- Feststellen, ob die Anwendung unter verschiedenen Lastbedingungen die Anforderungen erfüllt.
- Feststellen, ob die aktuelle Netzwerkabdeckung die Anwendung auf Spitzen-, Durchschnitts- und Mindestbenutzerebene unterstützen kann.
- Feststellen, ob das vorhandene Client-Server-Konfigurationssetup das erforderliche optimale Leistungsniveau bietet.
- Identifizieren der verschiedenen Anwendungs- und Infrastrukturengpässe, die verhindern, dass die Anwendung die erforderlichen Akzeptanzstufen erreicht.
- Um zu überprüfen, ob die Antwortzeit der Anwendung den Anforderungen entspricht.
- Bewertung des Produkts und / oder der Hardware, um festzustellen, ob das projizierte Lastvolumen verarbeitet werden kann.
- Um zu bewerten, ob die Batterielebensdauer die Anwendung bei projizierten Lastvolumina unterstützen kann.
- So überprüfen Sie die Anwendungsleistung, wenn das Netzwerk von 2G / 3G auf WIFI geändert wird oder umgekehrt.
- Um jeden der erforderlichen zu validieren, wird der CPU-Zyklus optimiert
- Um zu überprüfen, ob der Batterieverbrauch, Speicherlecks, Ressourcen wie GPS und die Kameraleistung den erforderlichen Richtlinien entsprechen.
- Um die Lebensdauer der Anwendung zu überprüfen, wenn die Benutzerlast streng ist.
- So überprüfen Sie die Netzwerkleistung, während Sie sich mit dem Gerät bewegen.
- Zum Überprüfen der Anwendungsleistung, wenn nur intermittierende Verbindungsphasen erforderlich sind.
Testfälle für Sicherheitstests
Das grundlegende Ziel von Sicherheitstests besteht darin, sicherzustellen, dass die Daten- und Netzwerksicherheitsanforderungen der Anwendung gemäß den Richtlinien erfüllt werden.
Im Folgenden sind die wichtigsten Bereiche für die Überprüfung der Sicherheit mobiler Anwendungen aufgeführt.
- Um zu überprüfen, ob die Anwendung Brute-Force-Angriffen standhalten kann, handelt es sich um einen automatisierten Prozess des Versuchs und Irrtums, mit dem der Benutzername, das Passwort oder die Kreditkartennummer einer Person erraten werden.
- Um zu überprüfen, ob eine Anwendung einem Angreifer nicht erlaubt, ohne ordnungsgemäße Authentifizierung auf vertrauliche Inhalte oder Funktionen zuzugreifen.
- Um zu überprüfen, ob die Anwendung über ein starkes Kennwortschutzsystem verfügt und es einem Angreifer nicht ermöglicht, das Kennwort eines anderen Benutzers abzurufen, zu ändern oder wiederherzustellen.
- Um zu überprüfen, ob die Anwendung nicht unter einem unzureichenden Sitzungsablauf leidet.
- Identifizieren der dynamischen Abhängigkeiten und Ergreifen von Maßnahmen, um zu verhindern, dass Angreifer auf diese Sicherheitsanfälligkeiten zugreifen.
- Um Angriffe im Zusammenhang mit SQL-Injection zu verhindern.
- Identifizieren und Wiederherstellen von nicht verwalteten Codeszenarien.
- Um sicherzustellen, ob die Zertifikate validiert sind, implementiert die Anwendung das Anheften von Zertifikaten oder nicht.
- Zum Schutz der Anwendung und des Netzwerks vor Denial-of-Service-Angriffen.
- Analyse der Anforderungen an Datenspeicherung und Datenvalidierung.
- Aktivieren der Sitzungsverwaltung, um zu verhindern, dass nicht autorisierte Benutzer auf unerwünschte Informationen zugreifen.
- Überprüfen Sie, ob ein Kryptografiecode fehlerhaft ist, und stellen Sie sicher, dass er repariert ist.
- Überprüfen, ob die Implementierung der Geschäftslogik gesichert und nicht anfällig für Angriffe von außen ist.
- Um Dateisysteminteraktionen zu analysieren, ermitteln Sie Schwachstellen und beheben Sie diese Probleme.
- So überprüfen Sie die Protokollhandler, indem Sie beispielsweise versuchen, die Standard-Zielseite für die Anwendung mithilfe eines böswilligen Iframes neu zu konfigurieren.
- Zum Schutz vor böswilligen clientseitigen Injektionen.
- Zum Schutz vor böswilligen Laufzeitinjektionen.
- Untersuchung des Zwischenspeicherns von Dateien und Verhinderung böswilliger Möglichkeiten.
- Um eine unsichere Datenspeicherung im Tastatur-Cache der Anwendungen zu verhindern.
- Um Cookies zu untersuchen und böswillige Taten durch die Cookies zu verhindern.
- Bereitstellung regelmäßiger Audits für die Datenschutzanalyse.
- Untersuchen Sie benutzerdefinierte Dateien und verhindern Sie böswillige Handlungen aus den benutzerdefinierten Dateien.
- Um Pufferüberläufe und Speicherbeschädigungsfälle zu vermeiden.
- Analyse verschiedener Datenströme und Verhinderung von Schwachstellen.
Testfälle für Usability-Tests
Der Usability-Testprozess der mobilen Anwendung wird durchgeführt, um eine schnelle und einfache Schrittanwendung mit weniger Funktionalität als eine langsame und schwierige Anwendung mit vielen Funktionen zu erhalten. Das Hauptziel besteht darin, sicherzustellen, dass wir eine benutzerfreundliche, intuitive und branchenweit anerkannte Schnittstelle haben, die weit verbreitet ist.
- Um sicherzustellen, dass die Tasten die erforderliche Größe haben und für große Finger geeignet sind.
- Um sicherzustellen, dass die Schaltflächen im selben Bereich des Bildschirms platziert sind, um Verwirrung bei den Endbenutzern zu vermeiden.
- Um sicherzustellen, dass die Symbole natürlich sind und mit der Anwendung übereinstimmen.
- Um sicherzustellen, dass die Tasten, die die gleiche Funktion haben, auch die gleiche Farbe haben sollten.
- Um sicherzustellen, dass die Validierung für das Tippen auf Vergrößern und Verkleinern aktiviert ist.
- Um sicherzustellen, dass die Tastatureingabe in geeigneter Weise minimiert werden kann.
- Um sicherzustellen, dass die Anwendung eine Methode zum Zurücksetzen oder Rückgängigmachen einer Aktion beim Berühren des falschen Elements innerhalb einer akzeptablen Dauer bereitstellt.
- Damit die Kontextmenüs nicht überladen werden, weil sie schnell verwendet werden müssen.
- Um sicherzustellen, dass der Text einfach und klar gehalten wird, damit er für die Benutzer sichtbar ist.
- Um sicherzustellen, dass die kurzen Sätze und Absätze für den Endbenutzer lesbar sind.
- Um sicherzustellen, dass die Schriftgröße groß genug ist, um lesbar und nicht zu groß oder zu klein zu sein.
- Um die Anwendung zu validieren, wird der Benutzer aufgefordert, eine große Datenmenge herunterzuladen, die für die Anwendungsleistung möglicherweise nicht förderlich ist.
- Um zu überprüfen, ob das Schließen der Anwendung aus verschiedenen Zuständen erfolgt, und um zu überprüfen, ob sie im gleichen Zustand wieder geöffnet wird.
- Um sicherzustellen, dass alle Zeichenfolgen in geeignete Sprachen konvertiert werden, wenn eine Sprachübersetzungsfunktion verfügbar ist.
- Um sicherzustellen, dass die Anwendungselemente immer gemäß den Benutzeraktionen synchronisiert werden.
- Um sicherzustellen, dass dem Endbenutzer ein Benutzerhandbuch zur Verfügung gestellt wird, das dem Endbenutzer hilft, die Anwendung zu verstehen und zu bedienen, die möglicherweise nicht mit dem Ablauf der Anwendung vertraut ist
Usability-Tests werden normalerweise von manuellen Benutzern durchgeführt, da nur Menschen die Sensibilität und Komfortfähigkeit der anderen Benutzer verstehen können.
Testfälle für Kompatibilitätstests
Kompatibilitätstests auf mobilen Geräten werden durchgeführt, um sicherzustellen, dass mobile Geräte unterschiedliche Größe, Auflösung, Bildschirm, Version und Hardware haben. Daher sollte die Anwendung auf allen Geräten getestet werden, um sicherzustellen, dass die Anwendung wie gewünscht funktioniert.
Im Folgenden sind die wichtigsten Bereiche für Kompatibilitätstests aufgeführt.
- Um zu überprüfen, ob die Benutzeroberfläche der Anwendung der Bildschirmgröße des Geräts entspricht, ist kein Text / Steuerelement teilweise unsichtbar oder nicht zugänglich.
- Um sicherzustellen, dass der Text für alle Benutzer der Anwendung lesbar ist.
- So stellen Sie sicher, dass die Anruf- / Alarmfunktion aktiviert ist, wenn die Anwendung ausgeführt wird. Die Anwendung wird im Falle eines Anrufs minimiert oder angehalten. Wenn der Anruf beendet wird, wird die Anwendung fortgesetzt.
Testfälle zur Prüfung der Wiederherstellbarkeit
- Absturzwiederherstellung und Transaktionsunterbrechungen
- Validierung der effektiven Anwendungswiederherstellungssituation nach unerwarteten Unterbrechungs- / Absturzszenarien.
- Überprüfung, wie die Anwendung eine Transaktion während eines Stromausfalls abwickelt (dh der Akku ist leer oder das Gerät wird plötzlich manuell heruntergefahren).
- Bei der Validierung des Prozesses, bei dem die Verbindung unterbrochen wird, muss das System wiederhergestellt werden, um die Daten wiederherzustellen, die direkt von der unterbrochenen Verbindung betroffen sind.
Wichtige Checkliste
- Installationstest (ob die Anwendung in angemessener Zeit und mit dem erforderlichen Kriterium installiert werden kann)
- Deinstallationstest (ob die Anwendung in angemessener Zeit und mit den erforderlichen Kriterien deinstalliert werden kann)
- Netzwerktestfälle (Überprüfung, ob das Netzwerk unter der erforderlichen Last arbeitet oder nicht, ob das Netzwerk in der Lage ist, alle erforderlichen Anwendungen während der Testverfahren zu unterstützen)
- Überprüfen Sie die nicht zugeordneten Schlüssel
- Überprüfen Sie den Anwendungs-Begrüßungsbildschirm
- Fortsetzung der Tastatureingabe während Interrupts und anderen Zeiten wie Netzwerkproblemen
- Methoden, die sich mit dem Beenden der Anwendung befassen
- Ladeeffekt, während eine Anwendung im Hintergrund ausgeführt wird
- Niedriger Akku und hoher Leistungsbedarf
- Entfernen der Batterie während einer Anwendung
- Batterieverbrauch nach Anwendung
- Überprüfen Sie die Nebenwirkungen der Anwendung