Zum Inhalt springen

Newseintrag

Testautomatisierung und Toolauswahl mobiler Apps – Teil 1: Einführung

Tool-Expertise  Mobile Testing  Tool Evaluierung 

Smartphones, Wearables und auch die letzte Welle des „Internet of Things“ (IoT) sind keine technologischen Neuheiten mehr, sie sind fixer Bestandteil unseres Alltags. Im ersten Teil dieser dreiteiligen Artikelserie geht es um die Besonderheiten im mobilen Test und worauf dabei genauer geachtet werden muss.

Warum ist Mobile-Testing so speziell?

Vor der Vorstellung des Apple iPhone im Jahre 2007 waren die meisten Geräte quasi erweiterte Telefone mit der Möglichkeit online zu arbeiten oder schnell etwas zu recherchieren. Das war umständlich, hatte wenig Charme und die damaligen mobilen Browser waren oftmals inkompatibel, die Verbindung langsam und die Bedienung der Geräte einfach unpraktisch.

Damit hat das Smartphone längst aufgeräumt, und seit damals sind nicht nur neue Funktionen hinzugekommen, auch neue Geräteklassen wurden etabliert, Tablets und neuerdings auch Smartwatches, all das, hat eine Unzahl neuer Varianten der Gestaltung in den Onlinestores ermöglicht.

Moderne Apps sind keine „normale“ Software, sie unterscheiden sich in vielerlei Hinsicht von dem, was auf einem Desktop-PC, Laptop oder Server läuft. Das hat große Auswirkungen auf den (nicht nur, aber vor allem automatisierten) Test und die für eine Automatisierung verwendeten Werkzeuge, sowie die Teststrategie.

Smartphone-Kunden haben oft hohe Erwartungen an die Software und dies sind Herausforderungen an die Qualität mobiler Anwendungen. Diese Personen verhalten sich nicht nur sehr unterschiedlich, sie haben auch verschiedene Arbeitsweisen und individuelle Vorlieben. Für das Testdesign ist es besonders wichtig, die Zielgruppen einer App entsprechend, beispielsweise über Personas, zu modellieren (z. B. mit Hilfe der Reports auf www.mobilepersonas.com).

Das Smartphone hat man heute immer bei sich, es ist für manche Zeitgenossen das erste auf das man nach dem Aufwachen sieht (weil der Wecker läutet) und das letzte vor dem Einschlafen. Personas helfen beim Testdesign ebenso, wie das Modellieren entsprechender Gerätegruppen. Durch eine große Menge an Sensoren, mobile Netze mit unterschiedlicher Datenrate und Verfügbarkeit, sowie verschiedenste Eingabevarianten erhöht sich die Testkomplexität in diesem Segment stark.

Was wird getestet, welche Ansätze gibt es?

Info

Einige wichtige Test-Mnemoniks, die gerne verwendet werden sind folgende:

  • SFDPOT (Structure, Function, Data, Platform, Operations, Time)
  • FCC VUTS VIDS (Feature, Complexity, Claims, Configuration, User, Testability, Scenario, Variability, Interoperability, Data, Structure)

Es gibt noch andere, wie “I SLICED UP FUN“ und „COP FLUNG GUN“, welche alle das Ziel haben Testmethoden und Best-Practices in der Teststrategie zu manifestieren, Tests anzuregen und zu erinnern. Für Details zu diesen Mnemoniks einfach eine Suchmaschine befragen!

Sehr wichtig und schlicht unumgänglich sind folgende Tests:

Wie testet man nun mobile Anwendungen?

Moderne Smartphones besitzen – wie schon erwähnt – eine große Zahl an Sensoren, welche automatisierte Tests erschweren oder auch völlig unmöglich machen (auch werden nur wenige der Sensoren in den verfügbaren Emulatoren und Simulatoren unterstützt):

Alle diese Sensoren sind im End-to-end-Test nur mit großen Einschränkungen simulierbar (nicht Out-of-the-box, aber z. B. in der Android-Welt über das Tool SensorSimulator code.google.com/p/openintents/wiki/SensorSimulator) und werden daher oft manuell getestet, um die tatsächliche Reaktion der echten Hardware zu testen.

Dazu kommen noch Standardeingabeelemente wie Touchscreens, Mikrofone und Kameras (unter anderem auch zum Erkennen von Barcodes, Gesichtern, und natürlich für die Foto- und Videoaufnahme), welche oft nicht besonders einfach automatisierbar sind, z. B. eine komplexere Gestensteuerung. Der iOS-Simulator unterstützt beispielsweise keine Kameraeingaben.

Nächstes Monat, im Teil 2 beschäftigen wir uns intensiver mit der mobilen Testautomatisierung.

Kontakt für Anfragen

Johannes Bergsmann

johannes.bergsmann@software-quality-lab.com

 +43 5 0657-420
 +43 676 840072 420