Manuelle und automatisierte Testansätze für hybride Apps
Wie manuelle und automatisierte Testverfahren die Qualität unserer digitalen Produkte verbessern
Für eine konsistente und integrierte Kundenerfahrung sollten die von einem Omnichannel-Unternehmen bereitgestellten oder verwendeten mobilen Apps und Web-Anwendungen sicher, performant, stabil und benutzerfreundlich sein. Um dies zu garantieren, spielen im Entwicklungs-, Weiterentwicklungs- und Wartungsprozess manuelle und automatisierte Tests eine zentrale Rolle.
Denn manuelle und automatisierte Tests …
… decken Probleme der Usability auf,
… können dazu beitragen die Performance getesteter Apps zu steigern,
… entlarven Schwachstellen und stärken die Sicherheit verwendeter Apps.
Unser Quality-Assurance-Team setzt in seinen Testverfahren für native, webbasierte und hybride Apps auf eine effektive Kombination aus manuellen und automatisierten Tests. Hybride Apps im Besonderen können zwar auf ähnliche Weise getestet werden, wie native Apps, doch es müssen einige besondere Schritte und Aspekte beachtet werden. Welche das sind, erfahren Sie in diesem Beitrag.
Für das Testen unserer digitalen Inhouse-Produkte verwenden wir den Gesamt-Team-Ansatz und die Methode des agilen Testens. So haben wir als funktionsübergreifendes Team eine Reihe solider Praktiken etabliert, die einen höchstmöglichen Qualitätsstandard sicherstellt: Unsere Back-End-Entwicklerinnen und -Entwickler tragen zu Lasttests bei, DevOps-Engineer führen die Überwachung von Sicherheitshinweisen durch und native Entwicklerinnen und Entwickler überwachen Absturzanalysen nach den Starts.
Für das Testen externer digitaler Kundenprojekte führen unsere Fullstack-QAs verschiedene Testverfahren durch. Dazu gehören unter anderem Backend-Tests, FE im Web und Tests für Web-, Android- und iOS-Anwendungen, manuelle Skript- und explorative Tests sowie automatisierte Funktions- und Leistungstests.
Testverfahren als Schutzschild für digitale Anwendungen
Sie möchten mehr über unsere Arbeitsweise erfahren und Zugang zu unseren exklusiven Inhalten erhalten?
Dann schreiben Sie uns einfach:
Das Testen von hybriden Apps kann auf ähnliche Weise wie das Testen nativer Apps durchgeführt werden. Hierbei müssen jedoch einige besondere Schritte und Aspekte beachtet werden. Welche das sind, erfahren Sie, indem Sie sich über den Button Ihren exklusiven Zugang sichern.
Sicherheitstest.
Es muss gewährleistet sein, dass die App keine Sicherheitslücken aufweist und persönliche Daten von Nutzerinnen und Nutzern geschützt sind. Für die Sicherheitslücken verwenden wir Programmscanner in der Abhängigkeitsspur. (https://github.com/aquasecurity/trivy)
Gerätekompatibilität
Um sicherzustellen, dass die App einheitlich und fehlerfrei funktioniert, wird sie auf einer Vielzahl von Geräten und Betriebssystemversionen ausgeführt.
Gerätefunktionen
Wir testen einige gerätespezifische Funktionen der App, wie Push-Benachrichtigungen, Deep Links für Produkte (Weblink zum Produkt oder einer anderen Inhaltsseite) oder die Kamera. Im Rahmen der Funktionstests achten wir auf spezielle gerätespezifische Verhaltensweisen, z. B. das Erscheinen der Tastatur, wenn der User ein Feld auswählt, das Verhalten beim Starten und Fortsetzen der App im Hintergrund sowie eingehende Anrufe während der App-Nutzung.
Updates
Bei jeder neuen App-Version testen wir, ob Updates von der vorherigen auf die neue Version funktionieren und keine Konflikte oder Probleme verursachen.
Performance-Tests
Wir testen die App unter verschiedenen Netzwerkbedingungen, um sicherzustellen, dass sie auch bei langsamer oder instabiler Verbindung ordnungsgemäß funktioniert. Im Fokus stehen hierbei Ladezeiten, Reaktionsfähigkeit und Stabilität.
Mit regelmäßigen Leistungstests in Echtzeit stellen wir sicher, dass die App effizient und skalierbar ist. Nach jeder Veröffentlichung überwachen wir Absturzanalysen sowie die Rückmeldungen von Endnutzerinnen und Endnutzern. Dieser „Test in der Produktion“ gibt uns mehr Vertrauen in die Stabilität der App.
Wir entwickeln uns stetig weiter und hinterfragen unsere Strategie in vielen Bereichen
Neue Tools
Wir behalten neue Tools und Trends auf dem Markt im Blick: So planen wir einen POC für Integrationsautomatisierungstests mit dem XUITests-Framework für iOS und mit Espresso für Android durchzuführen. Außerdem haben wir uns mit dem Sofy-Framework beschäftigt und beschlossen, vorerst bei Appium zu bleiben.
Qualität
Qualität liegt für uns in der Verantwortung des Teams. Daher haben wir unsere Entwicklerinnen und Entwickler in die Testautomatisierung eingeführt. Nach dem Vier-Augen-Prinzip wird jeder Commit des Test Automation Engineer von mindestens einer Entwicklerin bzw. einem Entwickler für Android oder iOS überprüft.
Die Architektur von hybriden Apps, die über native und webbasierte Codekomponenten verfügt, erfordert es, dass viele Entwicklungsteams zur Qualität der App beitragen müssen. Wir haben daher ein Projekt geplant, das anderen Teams die Möglichkeit gibt, an Automatisierungstests mitzuwirken und mit uns die Produktqualität zu überwachen.
Stabilere Tests
Wir haben einen Plan entwickelt, um unsere Automatisierungstests genauer zu überwachen und Muster (Patterns) zu finden, wann sie scheitern. So können wir stabilere Tests aufsetzen, die nur aufgrund von Problemen im Code fehlschlagen und nicht, wie zuvor, wegen geänderter Inhalte. Unser Ziel ist es, zukünftig mehr Mocking-Server zu nutzen, die immer eine vordefinierte Antwort auf entsprechende Anfragen schicken.
Effektive & zuverlässige Teststrategie
Wir legen sehr viel Wert auf kontinuierliche Verbesserung und optimieren unsere Teststrategie, indem wir mehr Szenarien in den unteren Ebenen der Testautomatisierungspyramide automatisieren. So erreichen wir eine höhere Testabdeckung in den Unit- und Integrationstestschichten.
Erhöhung der Testabdeckung
Bereits in der Entwicklungsphase testen wir kontinuierlich die neuen Funktionen und analysieren während des Refactoring auch die Testabdeckung für Plugins in der Codebasis. Durch die Einführung von sog. Quality-Gates mit spezifischer Codeabdeckung und zugehörigen Automatisierungstests möchten wir die Zahl der Testläufe erhöhen und damit langfristig die Qualität unserer digitalen Produkte weiter erhöhen.
Die Entwicklung einer hybriden App und die Art und Weise, wie wir ihre Qualität durch manuelle und automatisierte Tests garantieren, ist eine große Herausforderung. Mittlerweile verfügen wir in diesem Bereich über ein umfassendes Fachwissen und würden uns freuen, diese Fähigkeiten in neuen Bereichen anzuwenden.
Möchten Sie mehr über unsere Arbeitsweise erfahren?
Dann kontaktieren Sie uns, um zu erfahren, wie unsere agilen, innovativen, cross-funktionalen Teams arbeiten und digitale Produkte und Erlebnisse kreiert haben. Wir freuen uns auf den Austausch!