2016-07-19 21 views
-1

Ich las über das Schreiben von Tests für Android-Apps und ich kann nicht ganz verstehen, warum sollte ich UI-Tests verwenden, anstatt die App selbst in Echtzeit zu testen? Können Sie mir einige Beispiele geben, wenn UI-Tests nützlich sind?Was nutzt das automatisierte UI-Testen?

+3

Automatische Tests zahlen sich für die * zweite * Zeit, die Sie sie ausführen (und die dritte, vierte, fünfte und so weiter). Wenn Sie Ihre App * nur einmal testen *, dann brauchen Sie sie nicht. –

Antwort

2

Automatisiertes Testen im Allgemeinen ist aus einem wichtigen Grund gut: es ist automatisiert.

Manuelles Testen ist unvermeidbar. Es ist jedoch langsam und daher testen Entwickler oft nicht so häufig oder so gründlich, wie sie sollten.

Schreiben von automatisierten Tests — ob für UI-Elemente oder irgendetwas anderes — macht es einfacher, die Tests auszuführen und Bestätigung, dass alles noch funktioniert. Automatisierte Tests helfen bei dem "gründlich" Problem, dass die automatisierten Tests nicht müde, gelangweilt, hungrig, schläfrig, mürrisch usw. werden. Automatisierte Tests, die selbst automatisch ausgeführt werden, wie bei jedem Commit zu einem Versionskontrollsystem, über ein Continuous Integration (CI) -Server — Hilfe mit dem "häufig" -Problem.

Wie wichtig automatisierte Tests sind, hängt von der Größe des Projekts und der Größe der Benutzerbasis ab. Für eine App, die Sie nur für sich selbst verwenden, oder einfach als "Proof of Concept" ohne tatsächliche Benutzer, ist manuelle Tests in Ordnung. Ich habe beispielsweise keine automatisierten Tests für die Hunderte von Beispiel-Apps in meinem Buch. Auf der anderen Seite haben große Projekte möglicherweise mehr Testcode als Produktionscode mit sehr ausgefeilten Testprozessen (z. B. automatisiertes Testen mit einer Reihe von Geräten, um Regressionen aufzudecken, die nur bestimmte Betriebssystemversionen betreffen).

Am Ende hat Ihre Frage wenig mit Android zu tun, und mehr mit Software-Entwicklung im Allgemeinen, und ich vermute, dass das ist, warum es Downvotes anzieht.