Continuous Testing for Mobile Apps on real devices - New World Paradigm by Avinash Tiwari
Who we are? Mobile Testing platforms for developers and testes to test their app on targeted region specific smartphones and networks 10000+ Developers and Testers from across the globe 500+ Android and IOS devices
Let’s decipher the topic Continuous Testingfor Mobile Apps on real devices- New World Paradigm 1 – What’s different with Mobile Apps 2- Understanding Continuous paradigm 3- Testing on real Devices
Rise of Mobile Apps Digital Economy Growth Next billion consumers to come online will be making a digital decision on a Mobile Device Rise of IOT With emergence of common standards Consumer IOT is going to take off Devices with brains AI will make apps and devices smarter Digital Transformation Wave
Understanding “Continuous” terminology code can be rapidly and safely deployed to production by delivering every change to a production-like environment Continuous deployment is the next step of continuous delivery: Continuous Integration means the constant integration of changes to an application at all stages of the delivery chain. Continuous Integration
Understanding “Continuous” process Bad Release CI Build Failed QA Failed CI Build Failed Code Review Failed QA Code Revision Developer Branch Delivery to QA/Staging QA/ Staging Environment Local Dev Environment Mainline Code Commit PASS Merge to Main Immediate Deploy Post Prod Tests Detects Branch Change App Store and Play store CI Server Detects PASS QA CI Server Code Commit Developer Branch QA/ Staging Environment Local Dev Environment Delivery to QA/Staging Code Revision QA
Continuous Testing in Mobile App Journey Bad Release CI Build Failed QA Failed CI Build Failed Code Review Failed QA Code Revision Developer Branch Delivery to Staging QA/ Staging Environment Local Dev Environment Mainline Code Commit PASS Merge to Main Immediate Deploy Metric Watch Detects Branch Change CI Server App Store and Play store Detects PASS QA CI Server Code Commit Developer Branch Automated Tests + Devices QA/ Staging Environment Local Dev Environment Delivery to Staging Code Revision QA Devices for debugging and Unit tests Automated Tests + Devices
Dev tools for CI/CD iOS SDK Xcode Tools Android SDK
How are all these integrated? Infra Provisioning SDK Test Tools Android SDK iOS SDK Distribution SCM Continuous Integration Build/Test Tools XCodeTools Quality Gates Dependency Manager Project Mngmt
Facebook Example • Facebook has created a in-house mobile device lab that currently occupies 60 racks in the data center. Each rack holds 32 phones, for a total of almost 2,000 devices • Every time an engineer makes changes to one of Facebook’s main mobile apps, that new version of the app is automatically tested on these devices to ensure that there are no crashes or performance issues.
Action in 3 parts Code Commit Developer Branch QA/ Staging Environment Local Dev Environment CI Server Code Revision and Automated Unit Tests QA Linking tests to CI server Automated Tests + Devices Devices for debugging and Unit tests
Summing it All • Mobile Apps are going to be central piece in any digital transformation project • Modern way is to build Continuous Testing Models • Right set of Automation tools and a Device Cloud Infrastructure are key to success pCloudy.com enables continuous testing of Apps on real devices.