Mobile Testing Days in Berlin

Mobile Testing – weniger ungeplante Arbeit, weniger Risiken und bessere Softwarequalität [Interview]
Kommentare

Vom 4. bis 5. Juni finden in Berlin erstmals die Mobile Testing Days statt. An zwei Event-Tagen wollen die Trainer iOS- und Android-Entwicklern vermitteln, wie man Qualitätssicherungsprozesse passend zur jeweiligen App aufsetzt, welche Testing-Frameworks man verwenden kann und wie man diese kontinuierlich und zielgerichtet einsetzt.

Moritz Haarmann, freiberuflicher Berater und Entwickler, hält am 5. Juni den Workshop „Prozesse für die Praxis: Jenkins und Hockey“. Der Workshop startet bei null und verwendet aktuelle Tools und Frameworks, die einen professionellen und schlanken Entwicklungsprozess ermöglichen. Der Fokus liegt also nicht auf der eigentlichen Entwicklung einer App, sondern vielmehr auf der richtigen Infrastruktur die einen geplanten Prozess erst möglich macht.

Wir haben uns vorab mit ihm über iOS-Testing, Tools, Profiling und Debugging unterhalten.

Entwickler: Herr Haarmann, die Entwicklung für iOS ist naturgemäß noch nicht so alt – dennoch sagen Sie, „wie aus Zufall Absicht wurde“. Warum Zufall?

Moritz HaarmannMoritz Haarmann: Gerade zu Zeiten der ersten SDKs für iOS war es natürlich nicht möglich, auf Best Practices, Erfahrungswerte oder hilfreiche Tools, z.B. aus der Open-Source Community zurückzugreifen. Es hat einige Jahre gebraucht, um Techniken und Tools aus anderen Bereichen der Softwareentwicklung anzupassen und zu übernehmen – Gerade auf dem Gebiet des automatisierten Testens ist in Großteil des Fortschritts auf Engagement von Firmen und Personen außerhalb Apples zurückzuführen. Und erst diese Tools erlauben es in meinen Augen, tatsächlich geplante, getestete und funktionierende Software auszuliefern: Absichtlich.

Entwickler: Welche besonderen Möglichkeiten bietet Apple, wenn es um das Profiling und Debugging geht?

Haarmann: Instruments zählt wohl zu den besten kostenlosen Werkzeugen wenn es um eine schnelle, grafisch ansprechende und genaue Analyse von Performanceproblemen geht. Bestehende Vorlagen können dem Nutzer innerhalb kurzer Zeit z.B. Memory Leaks oder Stellen im Code aufzeigen, die überdurchschnittlich viel Bearbeitungszeit benötigen. Durch die enge Integration in Xcode und der Verfügbarkeit von Instruments auf jedem Rechner, auf dem auch Xcode installiert ist, sinkt somit die Schwelle, Probleme nicht nur zu erkennen, sondern auch zielgenau zu lösen.

Entwickler: Warum ist gerade automatisiertes Testing so wichtig – ganz unabhängig von der Plattform?

Haarmann: Manuelle Tests werden ausgeführt, seit es Software gibt: Man drückt auf einen Knopf und prüft, ob die gewünschte Antwort auf dem Bildschirm erscheint. Mit der Komplexität von Anwendungen steigen natürlich auch die zu testenden Pfade, d.h. das manuelle Testen wird komplexer und immer zeitaufwändiger. Automatisierte Tests lösen dieses Problem, in dem Tests in Code geschrieben werden – dadurch werden die Tests z.B. bei jedem Build ausgeführt und können in Sekundenschnelle die Antwort auf die Frage „Läuft mein Code nach dieser Änderung geben“. Erst dadurch können auch schnell kleine Änderungen vorgenommen werden, ohne Monate später einen Bug befürchten zu müssen, der durch eine Kleinigkeit ausgelöst wurde. Das heißt weniger ungeplante Arbeit, weniger Risiken und eine bessere Qualität der Software – ganz abgesehen von den Kosten, die durch eine ordentliche Testinfrastruktur eingespart werden können.

Entwickler: Auf den Mobile Testing Days halten Sie einen Workshop mit dem Titel „Prozesse für die Praxis: Jenkins und Hockey“  – sind Apple-Tools also doch nicht so praxistauglich?

Haarmann: Ja und nein. Die in meinem Talk besprochenen Tools sind ergänzend zu den Produkten von Apple zu sehen: Jenkins könnte Problemlos durch die Build Bots in Xcode 5 ersetzt werden, allerdings sind die Tools von Apple eher unflexibel, wohingegen Jenkins die Integration zahlreicher externer Dienste (z.B. Bugtracker, Benachrichtungsdienste) über Plugins ermöglicht. Gerade dadurch kann Jenkins mit HockeyApp, einem Service für die Bereitstellung von Apps, verknüpft werden – oder an andere Services, je nach Anforderungen der Organisation, die diese Lösung benutzt.

Frage: Welche Tools sind darüber hinaus noch denkbar, um die Tool Chain zu erweitern?

Haarmann: Diese Frage kann abendfüllend beantwortet werden. Gerade in größeren Teams kann der Einsatz eines Review-Systems wie z.B. Gerrit sinnvoll sein, bei dem Änderungen standardmäßig von Team-Mitgliedern überprüft werden, bevor diese in das Codearchiv gelangen. Hier sind viele Technologien und Möglichkeiten denkbar, allerdings bin ich ein großer Befürworter einer Vorgehensweise die mit Augenmaß die Anforderungen betrachtet: Was ist wirklich notwendig, und wo stört zu viel Automatisierung und bringt so den Prozess ins Stocken?

Mobile Testing Days

Alle Infos rund um das Trainingsevent finden Sie auf der Website http://mobile-testing-days.de. Wer sich bis zum7. Mai anmeldet kann mit den Early-Bird-Preisen bis zu 100 Euro sparen.

Mobile Testing Days

 

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -