Your SlideShare is downloading. ×
CI und Android - Wie geht das? MTC2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

CI und Android - Wie geht das? MTC2010

1,367
views

Published on

Talk of mobile tech con 2010 in Mainz.

Talk of mobile tech con 2010 in Mainz.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,367
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide





  • Wieso nicht CI

    Hardwarekosten
    Installationsaufwand
    Mobile Applikationen
    Kurze Lebensdauer
    Keine Produktlinie








  • Monkeytests
    - Test-Framework
    - Unit- + Integrationstest
    Man muss nicht alles Mocken sondern bekommt das frei Haus

  • Wenn man an Android Komponenten etwas erweitert oder andere Komponenten welche nicht im SDK liegen benutzt sollten diese auch mit in den CI Prozess eingebunden werden.





  • Problem weil nur Emulator Tests





  • Transcript

    • 1. Markus Kopf | arconsis IT-Solutions Carsten Bokeloh | itemis CI & Android Entwicklung Wie geht das?
    • 2. Agenda • Motivation • Wieso CI? • Typisches CI-System • Demo • Best Practices
    • 3. Wer sind wir? Carsten Bokeloh IT-Consultant itemis carsten.bokeloh@itemis.de Markus Kopf IT-Consultant arconsis IT-Solutions markus.kopf@arconsis.com
    • 4. Motivation Bei mir geht’s!!!
    • 5. Was ist CI? Continuous Integration ist ein Prozess der das regelmäßige, vollständige Bauen und Testen einer Anwendung beschreibt
    • 6. Wo CI? Wo nicht
    • 7. Benefits aus Entwicklersicht • Verfügbares Produkt • Integrationsaufwand • Code Qualität • Transparenz • Automatisierter Release
    • 8. Benefits aus Managersicht • Verfügbares Produkt • Kontinuierliche Qualitätskontrolle • Reduzierung des Projektrisikos • Bus Faktor • Transparenz • Roadmap Planung
    • 9. Typisches CI-System
    • 10. CI-Artefakte Server • Bamboo • Cruise Control • Hudson • Verwendung von Hudson weil – Viele Plug-ins – Große Community – Sehr einfache Handhabung – Optisch ansprechend
    • 11. CI-Artefakte Tools • Ant – Build Skripte werden von Android initial erstellt • Maven – Verwendbar
    • 12. CI-Artefakte SCM • SVN • Git • CVS • Verwendung von SVN – SVN + Hudson = gutes Team – SVN ist sehr verbreitet – Etabliert – IDE Support
    • 13. CI-Artefakte Tests • Unit Tests • Integration Test • Android Test-Framework • UI Tests – Robotium
    • 14. CI-Artefakte Code • Code Basis – NotePad Projekt • Plattform – SDK (Android) – Emulator / Device
    • 15. CI-Artefakte Reporting • Testresults • Statische Code-Analyse – Checkstyle – PMD – Findbugs – Sonar – ...
    • 16. Mapping auf Android
    • 17. HudsonMobi
    • 18. Automatisiere Build-Prozess Build testet Applikation Teste produktionsnah Halte Build-Prozess transparent Automatisiere Deployment
    • 19. Nutze Metriken Kurze Builds – Commit Build – Nightly Build – Integration Build
    • 20. Fazit • CI auch für Android • Build-Prozess leicht aufsetzbar • Erfahrungswerte aus der JEE-Welt vorhanden • ABER: – Kein produktionsnahes Testen – Kein automatisches “Deployment”
    • 21. Links • Hudson (http://hudson-ci.org/) • Cruise Control (http://cruisecontrol.sourceforge.net/) • Bamboo (http://www.atlassian.com/software/bamboo/) • Sonar (http://www.sonarsource.org/) • HudsonMobi (http://hudson-mobi.com/) • Robotium (http://code.google.com/p/robotium/) • Android Testing (http://developer.android.com/guide/topics/testing/ testing_android.html) • Pmd (http://pmd.sourceforge.net/) • Checkstyle (http://checkstyle.sourceforge.net/) • Findbugs (http://findbugs.sourceforge.net/) • Eclipse (http://eclipse.org/) • Ant (http://ant.apache.org/)