SlideShare a Scribd company logo
Building High Quality Android
            Apps
  By using Jenkins and Automated Device
                    Tests
Getting to know each other...

Leif Janzik
Team-Lead Android Development
adesso mobile solutions GmbH

Twitter: @ElliotMonster
Blog: www.thoughtsonmobile.com
About adesso mobile solutions GmbH

•   adesso mobile solutions GmbH, Dortmund, 65 MA (Ende 2012)
•   Tochterunternehmen der adesso AG, Dortmund, ca. 1.100 MA
    (Ende 2012)
•   führender Anbieter in den Bereichen mobiles Internet, mobile
    Applikationen und Mobile Marketing
•   Portfolio: Beratung, Konzeption, Realisierung, Review, Test und
    Betrieb von Mobilisierungs-Projekten und App-Lösungen
•   Kunden: Über 200 realisierten Portalen und Applikationen für
    Kunden wie Daimler, PAYBACK, ERGO, süddeutsche.de,
    SportScheck, die Volksbanken Raffeisenbanken, Bundesagentur
    für Arbeit.
So you are an Android Developer
 and everything is f***ing awesome...



http://www.flickr.com/photos/fullcodepress/
Everyone loves your Apps



http://www.flickr.com/photos/fullcodepress/
Your companies headquarter
looks like these



http://www.flickr.com/photos/fullcodepress/
Everything is perfect!



http://www.flickr.com/photos/fullcodepress/
BUT

http://www.flickr.com/photos/fullcodepress/
... time goes on, and the apps evolves,
new features, new API-levels, bugfixes etc.
http://www.flickr.com/photos/fullcodepress/
There are „some“ new devices ...
... every day
http://www.flickr.com/photos/fullcodepress/
And after some Versions, Refactorings
& new Features your Code looks more like this...
you try to keep everything fine
and running...
... but the number of bugs
continues to grow ...
maybe your customers will react
like this?
... but more likely they will
react like this ...
... Your companies new
headquarter ...
... and being a Android Developer
is no fun no more.
Ok, maybe I exagerated a bit, BUT

•   Android Apps grow more and more complex
•   Customers expect a bugfree and undisturbed App
    experience
•   Tolerance even for minor bugs continues to shrink
•   Device fragmentation makes testing a sisysphean task
Some „everyday-problems“ we had to solve

•   Apps have to be build in many different Versions (e.g.
    Development/Staging-Enviroment) or different brandings
•   Developers are often disturbed, e.g. when a AdHoc for the
    customer is needed
•   Changes in App Components lead to new bugs, which
    were discovered later.
so what is the solution to this problem?
exessive Testing ...
but testing your own app is
soooooo boring! (so it might be skipped or not done thoroughly)
that‘s why we automated much of
our testing and our build process.
„Our“ solution

•   a clean and reliable development workflow
•   a toolchain which supports the developers and keeps
    disturbing work away
•   Continuous refactoring of the apps
•   Maven for lesser configuration for every developer and
    easier modularisation
•   Automated Device Tests
•   Continuous integration
What is Continuous Integration?
• Automate everything

• Build as often as possible
    • Build early, build often
    • e.g. on every commit
    • or nightly builds
Benefits of Continuous Integration
• Fewer Errors
   • very important, not everybody installs every update, so
      bugs might never be fixed on a customers device
• Fast Feedback
• Tests everything on every (nightly) build
• Much less manual testing
   • Cheaper
   • Happier developers
• Regression-Tests without additional effort
Automate...
• ...Builds
• ...Unit Testing
• ...Device Tests
• ...Code Coverage & Static Analysis
• ...Deployment
3 Major Build Profiles

Build after Commit        Nightly Build           Release or Promoted Build
• Build and archive APK   • Build Project         •   Build APK
• Run Unit-Tests            without               •   Run Unit-Tests
• Run Sonar Code            archiving/publishin   •   Run Calabash Tests
  Metrics                   g APK                 •   Keep apk „forever“
                          • Run Unit-Tests        •   upload apk to webserver
                          • Run Calabash Tests        for enterprise delivery or
                                                      to Google play
Why did we choose Jenkins
• Quasi-Standart CI Server (together with hudson)
• A lot of useful plugins
   • e.g. Maven Plugin, Checkstyle
      Plugin, Android Lint Plugin,
      Sonar Plugin
• Well documented Plugin API for
  own plugins
Our Jenkins System
                       Jenkins
                       Master




Jenkins      Jenkins             Jenkins   Jenkins
iOS          Android             Windows   Mobile
                                           Web
Automate...
• ...Builds
• ...Unit Testing
• ...Device Tests
• ...Code Coverage & Static Analysis
• ...Deployment
why do we need automated ui-tests?
• Not all parts are covered by classic Unit-Tests
• Manual Integration Tests take a lot of time
• Manual tests are very boring and developers tend to skip
  them
• Device fragmentation grows every day ...
automated UI-Tests with Calabash
• Cucumber based Testing Tool
• Test-Specs are human readable, even for non-programmers
• Both mayor platforms iOS & Android are supported with a identical
  Syntax
• Runs in Simulator/Emulator and on Devices
Example
Feature: Basic Mathematics
  As a user I‘ll be able to do basic mathematic
  operations

  Scenario: Summate 2 numbers
    Given I started the App
    When I press button „5“
    And I press button „+“
    And I press button „3“
    And I press button „=“
    Then label „result“ should be „8“

  Scenario: Substract one number from another
    Given I started the App
    When I press button „9“
    And I press button „-“
    And I press button „4“
    And I press button „=“
    Then label „result“ should be „5“
• All Calabash-Tests run on real Devices, so
  the results are much more reliable
Automate...
• ...Builds
• ...Unit Testing
• ...Device Tests
• ...Code Coverage & Static Analysis
• ...Deployment
Publish Code Analysis Results to Sonar
Automate...
• ...Builds
• ...Unit Testing
• ...Device Tests
• ...Code Coverage & Static Analysis
• ...Deployment
Any questions?
Thank you
           Have a nice day at DroidCon
PS: if you are an StartUp or have a great idea (for mobile) ask me for
              informations on the „adesso mobile fond“

More Related Content

What's hot (20)

PPTX
How to pass a coding interview as an automation developer talk - Oct 17 2016
Thomas F. "T.J." Maher Jr.
 
PDF
[Srijan Wednesday Webinars] Building a High Performance QA Team
Srijan Technologies
 
PDF
Web Application Testing with Selenium
Sargis Sargsyan
 
PDF
Selenium Testing on Chrome - Google DevFest Armenia 2015
Sargis Sargsyan
 
PDF
Espresso testing
vodqancr
 
POTX
Simplify CI with the Updated Jenkins Plugin for Sauce Labs
Sauce Labs
 
PDF
Selenium Conference 2015 - Mobile Selenium Grid Setup
Justin Ison
 
PDF
Building serverless-applications
Andrii Soldatenko
 
PDF
SauceCon 2017: test.allTheThings(): Digital Edition
Sauce Labs
 
PPTX
How to Leverage Appium in Your Mobile App Testing
Bitbar
 
PDF
Belfast Selenium Meetup
Justin Ison
 
PDF
SauceCon 2017: Building a Continuous Delivery Pipeline with Testing in Mind
Sauce Labs
 
PDF
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Sauce Labs
 
PDF
Android UI Testing with Appium
Luke Maung
 
PDF
SauceCon 2017: Testing @ the Speed of Concurrency
Sauce Labs
 
PPTX
Selenium Camp 2016
Dan Cuellar
 
PDF
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha
 
PDF
Sencha Roadshow 2017: What's New in Sencha Test
Sencha
 
PPTX
End to end test automation with cypress
PankajSingh184960
 
PDF
Scaling your Automated Tests: Docker and Kubernetes
Manoj Kumar Kumar
 
How to pass a coding interview as an automation developer talk - Oct 17 2016
Thomas F. "T.J." Maher Jr.
 
[Srijan Wednesday Webinars] Building a High Performance QA Team
Srijan Technologies
 
Web Application Testing with Selenium
Sargis Sargsyan
 
Selenium Testing on Chrome - Google DevFest Armenia 2015
Sargis Sargsyan
 
Espresso testing
vodqancr
 
Simplify CI with the Updated Jenkins Plugin for Sauce Labs
Sauce Labs
 
Selenium Conference 2015 - Mobile Selenium Grid Setup
Justin Ison
 
Building serverless-applications
Andrii Soldatenko
 
SauceCon 2017: test.allTheThings(): Digital Edition
Sauce Labs
 
How to Leverage Appium in Your Mobile App Testing
Bitbar
 
Belfast Selenium Meetup
Justin Ison
 
SauceCon 2017: Building a Continuous Delivery Pipeline with Testing in Mind
Sauce Labs
 
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Sauce Labs
 
Android UI Testing with Appium
Luke Maung
 
SauceCon 2017: Testing @ the Speed of Concurrency
Sauce Labs
 
Selenium Camp 2016
Dan Cuellar
 
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha
 
Sencha Roadshow 2017: What's New in Sencha Test
Sencha
 
End to end test automation with cypress
PankajSingh184960
 
Scaling your Automated Tests: Docker and Kubernetes
Manoj Kumar Kumar
 

Viewers also liked (12)

PPTX
Continuous Mobile - Testing Using Jenkins - A How To Guide
KeynoteSystems
 
PPT
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
SOASTA
 
PPTX
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
SOASTA
 
PPTX
Mobile App Quality Roadmap for DevTest Teams
Perfecto by Perforce
 
PPTX
Genymotion with Jenkins
Vishal Nayak
 
PPTX
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
SOASTA
 
PDF
Robotium framework & Jenkins CI tools - TdT@Cluj #19
Tabăra de Testare
 
PDF
Automated android testing using jenkins ci
sveinungkb
 
ODP
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
Tabăra de Testare
 
PPTX
Parallel Test Runs with Appium on Real Mobile Devices – Hands-on Webinar
Bitbar
 
PPTX
Smtp errors
Harpreet Dhiman
 
PDF
Continous UI testing with Espresso and Jenkins
Sylwester Madej
 
Continuous Mobile - Testing Using Jenkins - A How To Guide
KeynoteSystems
 
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
SOASTA
 
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
SOASTA
 
Mobile App Quality Roadmap for DevTest Teams
Perfecto by Perforce
 
Genymotion with Jenkins
Vishal Nayak
 
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
SOASTA
 
Robotium framework & Jenkins CI tools - TdT@Cluj #19
Tabăra de Testare
 
Automated android testing using jenkins ci
sveinungkb
 
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
Tabăra de Testare
 
Parallel Test Runs with Appium on Real Mobile Devices – Hands-on Webinar
Bitbar
 
Smtp errors
Harpreet Dhiman
 
Continous UI testing with Espresso and Jenkins
Sylwester Madej
 
Ad

Similar to Building High Quality Android Applications (20)

PDF
Getting your mobile test automation process in place - using Cucumber and Cal...
Niels Frydenholm
 
PDF
Droidcon Spain 2105 - One app to rule them all: Methodologies, Tools & Tricks...
Daniel Gallego Vico
 
PDF
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Sauce Labs
 
PPTX
Reliable mobile test automation
Vishal Banthia
 
PPTX
Test parallelization using Jenkins
Rogue Wave Software
 
PPTX
Appium overview (Selenium Israel #2, Feb. 2014)
danielputerman
 
PPTX
Bootstrapping Quality
Michael Roufa
 
PPTX
Udvid din test portefølje med coded ui test og cloud load test
Peter Lindberg
 
PDF
Introduction to-automated-testing
BestBrains
 
PDF
Introduction to Automated Testing
Lars Thorup
 
PDF
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
Srijan Technologies
 
PPTX
When & How to Successfully use Test Automation for Mobile Applications
TechnologyAssociationOregon
 
PPTX
Hudson
8x8
 
PPTX
CI/CD for mobile at HERE
Stefan Verhoeff
 
PDF
Automating Mobile Applications
April Luk
 
PDF
Continuous delivery is more than dev ops
Agile Montréal
 
PPTX
SenchaCon 2016: The Changing Landscape of JavaScript Testing - Joel Watson an...
Sencha
 
PDF
Continuous integration
hugo lu
 
PDF
DCAST Meetup - Washington, DC Feb 2016
Justin Ison
 
PDF
Badoo: Cross platform Mobile Test Automation and Continuos Delivery
CodeFest
 
Getting your mobile test automation process in place - using Cucumber and Cal...
Niels Frydenholm
 
Droidcon Spain 2105 - One app to rule them all: Methodologies, Tools & Tricks...
Daniel Gallego Vico
 
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Sauce Labs
 
Reliable mobile test automation
Vishal Banthia
 
Test parallelization using Jenkins
Rogue Wave Software
 
Appium overview (Selenium Israel #2, Feb. 2014)
danielputerman
 
Bootstrapping Quality
Michael Roufa
 
Udvid din test portefølje med coded ui test og cloud load test
Peter Lindberg
 
Introduction to-automated-testing
BestBrains
 
Introduction to Automated Testing
Lars Thorup
 
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
Srijan Technologies
 
When & How to Successfully use Test Automation for Mobile Applications
TechnologyAssociationOregon
 
Hudson
8x8
 
CI/CD for mobile at HERE
Stefan Verhoeff
 
Automating Mobile Applications
April Luk
 
Continuous delivery is more than dev ops
Agile Montréal
 
SenchaCon 2016: The Changing Landscape of JavaScript Testing - Joel Watson an...
Sencha
 
Continuous integration
hugo lu
 
DCAST Meetup - Washington, DC Feb 2016
Justin Ison
 
Badoo: Cross platform Mobile Test Automation and Continuos Delivery
CodeFest
 
Ad

Recently uploaded (20)

PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 

Building High Quality Android Applications

  • 1. Building High Quality Android Apps By using Jenkins and Automated Device Tests
  • 2. Getting to know each other... Leif Janzik Team-Lead Android Development adesso mobile solutions GmbH Twitter: @ElliotMonster Blog: www.thoughtsonmobile.com
  • 3. About adesso mobile solutions GmbH • adesso mobile solutions GmbH, Dortmund, 65 MA (Ende 2012) • Tochterunternehmen der adesso AG, Dortmund, ca. 1.100 MA (Ende 2012) • führender Anbieter in den Bereichen mobiles Internet, mobile Applikationen und Mobile Marketing • Portfolio: Beratung, Konzeption, Realisierung, Review, Test und Betrieb von Mobilisierungs-Projekten und App-Lösungen • Kunden: Über 200 realisierten Portalen und Applikationen für Kunden wie Daimler, PAYBACK, ERGO, süddeutsche.de, SportScheck, die Volksbanken Raffeisenbanken, Bundesagentur für Arbeit.
  • 4. So you are an Android Developer and everything is f***ing awesome... http://www.flickr.com/photos/fullcodepress/
  • 5. Everyone loves your Apps http://www.flickr.com/photos/fullcodepress/
  • 6. Your companies headquarter looks like these http://www.flickr.com/photos/fullcodepress/
  • 9. ... time goes on, and the apps evolves, new features, new API-levels, bugfixes etc. http://www.flickr.com/photos/fullcodepress/
  • 10. There are „some“ new devices ... ... every day http://www.flickr.com/photos/fullcodepress/
  • 11. And after some Versions, Refactorings & new Features your Code looks more like this...
  • 12. you try to keep everything fine and running...
  • 13. ... but the number of bugs continues to grow ...
  • 14. maybe your customers will react like this?
  • 15. ... but more likely they will react like this ...
  • 16. ... Your companies new headquarter ...
  • 17. ... and being a Android Developer is no fun no more.
  • 18. Ok, maybe I exagerated a bit, BUT • Android Apps grow more and more complex • Customers expect a bugfree and undisturbed App experience • Tolerance even for minor bugs continues to shrink • Device fragmentation makes testing a sisysphean task
  • 19. Some „everyday-problems“ we had to solve • Apps have to be build in many different Versions (e.g. Development/Staging-Enviroment) or different brandings • Developers are often disturbed, e.g. when a AdHoc for the customer is needed • Changes in App Components lead to new bugs, which were discovered later.
  • 20. so what is the solution to this problem?
  • 22. but testing your own app is soooooo boring! (so it might be skipped or not done thoroughly)
  • 23. that‘s why we automated much of our testing and our build process.
  • 24. „Our“ solution • a clean and reliable development workflow • a toolchain which supports the developers and keeps disturbing work away • Continuous refactoring of the apps • Maven for lesser configuration for every developer and easier modularisation • Automated Device Tests • Continuous integration
  • 25. What is Continuous Integration? • Automate everything • Build as often as possible • Build early, build often • e.g. on every commit • or nightly builds
  • 26. Benefits of Continuous Integration • Fewer Errors • very important, not everybody installs every update, so bugs might never be fixed on a customers device • Fast Feedback • Tests everything on every (nightly) build • Much less manual testing • Cheaper • Happier developers • Regression-Tests without additional effort
  • 27. Automate... • ...Builds • ...Unit Testing • ...Device Tests • ...Code Coverage & Static Analysis • ...Deployment
  • 28. 3 Major Build Profiles Build after Commit Nightly Build Release or Promoted Build • Build and archive APK • Build Project • Build APK • Run Unit-Tests without • Run Unit-Tests • Run Sonar Code archiving/publishin • Run Calabash Tests Metrics g APK • Keep apk „forever“ • Run Unit-Tests • upload apk to webserver • Run Calabash Tests for enterprise delivery or to Google play
  • 29. Why did we choose Jenkins • Quasi-Standart CI Server (together with hudson) • A lot of useful plugins • e.g. Maven Plugin, Checkstyle Plugin, Android Lint Plugin, Sonar Plugin • Well documented Plugin API for own plugins
  • 30. Our Jenkins System Jenkins Master Jenkins Jenkins Jenkins Jenkins iOS Android Windows Mobile Web
  • 31. Automate... • ...Builds • ...Unit Testing • ...Device Tests • ...Code Coverage & Static Analysis • ...Deployment
  • 32. why do we need automated ui-tests? • Not all parts are covered by classic Unit-Tests • Manual Integration Tests take a lot of time • Manual tests are very boring and developers tend to skip them • Device fragmentation grows every day ...
  • 33. automated UI-Tests with Calabash • Cucumber based Testing Tool • Test-Specs are human readable, even for non-programmers • Both mayor platforms iOS & Android are supported with a identical Syntax • Runs in Simulator/Emulator and on Devices
  • 34. Example Feature: Basic Mathematics As a user I‘ll be able to do basic mathematic operations Scenario: Summate 2 numbers Given I started the App When I press button „5“ And I press button „+“ And I press button „3“ And I press button „=“ Then label „result“ should be „8“ Scenario: Substract one number from another Given I started the App When I press button „9“ And I press button „-“ And I press button „4“ And I press button „=“ Then label „result“ should be „5“
  • 35. • All Calabash-Tests run on real Devices, so the results are much more reliable
  • 36. Automate... • ...Builds • ...Unit Testing • ...Device Tests • ...Code Coverage & Static Analysis • ...Deployment
  • 37. Publish Code Analysis Results to Sonar
  • 38. Automate... • ...Builds • ...Unit Testing • ...Device Tests • ...Code Coverage & Static Analysis • ...Deployment
  • 40. Thank you Have a nice day at DroidCon PS: if you are an StartUp or have a great idea (for mobile) ask me for informations on the „adesso mobile fond“