Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Can We Deliver Mobile Apps Continuously?

160 views

Published on

This is the talk I delivered at Agile 2016. It covers devops and testing practices to help you and your team ship better apps faster.

Published in: Technology
  • Login to see the comments

  • Be the first to like this

Can We Deliver Mobile Apps Continuously?

  1. 1. Can We Deliver Mobile Apps Continuously DAN WATERS XAMARIN TECHNICAL SOLUTIONS PROFESSIONAL AT MICROSOFT DAN@XAMARIN.COM | @DANWATERS
  2. 2. We Can Deliver Mobile Apps Continuously DAN WATERS XAMARIN TECHNICAL SOLUTIONS PROFESSIONAL AT MICROSOFT DAN@XAMARIN.COM | @DANWATERS
  3. 3. Quality Matters More On Mobile
  4. 4. Short User Sessions Small Form Factors Limited Resources
  5. 5. Thousands of iOS and Android APIs Public web APIs Backend integrations Third party libraries Memory, CPU and network constraints
  6. 6. Count of distinct device types (out of 682,000 unique devices running OpenSignal apps) 2013: 11,868 2014: 18,768 2015: 24,093
  7. 7. Mobile app quality can be OVERWHELMING
  8. 8. How can we do better? Vision, Tools, Processes, and Baby Steps
  9. 9. 7 Reasons To Adopt Continuous Delivery  Much Higher Release Readiness  Refactor with Confidence  Consistent, Actionable, Automated Test Reports  Better Feedback  Move Faster, Safely  Better Team Morale  Higher Quality Software!
  10. 10. Test Sooner.
  11. 11. Faster Release Cycles
  12. 12. Mobile DevOps Vision
  13. 13. Vision for the developer experience – Mobile DevOps Pick up a task Write code Manual tests Code review Push commit CI with automated tests Automated deployment to beta users Review test results
  14. 14. Tools Demo (kinda)
  15. 15. The 20 Minute Goal
  16. 16. Conceptual Build Templates “Quick CI” • Optimize for shorter runtime (< 20 min) • Run on every check-in (CI) • Includes critical path smoke tests • Also includes smoke tests for features related to the commit (rotate new features in and out) • Small set of critical devices CI Regression • Chain and run only if Quick CI is green • Larger set of tests and devices • Deploy to beta users if it passes • Immediately triage if it fails Weekly Regression • Scheduled build starting after everyone goes home for the weekend • Includes all tests and all target devices • Runtime could be very long
  17. 17. The Highest-Value Automated UI Test For Mobile Apps
  18. 18. [Test] [Category(“smoke-tests”)] public void AppDoesNotCrash() { app.WaitForElement(“main_logo”); app.Screenshot(“App did not crash.”) } C# Example (NUnit + Xamarin.UITest)
  19. 19. Happy Test Cloud Customers Pinterest uses Xamarin Test Cloud to delight Pinners everywhere, guaranteeing its apps look amazing and work without issue on any device for over 100 million users.
  20. 20. Happy Test Cloud Customers Coca-Cola Bottling Co. Consolidated is transforming their business with anywhere, anytime accessible field sales apps powered by Xamarin for Visual Studio, Azure, and Visual Studio Team Services. Learn more at www.xamarin.com/customers
  21. 21. 3 Key Takeaways To Help Delight Your Customers and Team
  22. 22. 1. Test Immediately
  23. 23. 2. Establish a Build
  24. 24. 3. Take Baby Steps
  25. 25. Thank You! Dan Waters Xamarin Technical Solutions Professional at Microsoft dan@xamarin.com | @danwaters

×