Shipa is open sourcing Ketch, Shipa's deployment engine, under Apache License Version 2.0.
An integrated and iterative mobile application testing cycle should include the following key components:
1. Test Automation
For flow control and repetitive testing, automation allows developers to test a function many times without having to manually test a program. This automatic function can give full reports of each execution with helpful statistics and insights, as well as save time and money on problem reproduction.
In a highly fragmented mobile market, the use of device-agnostic scripting lets you build test cases that can be easily maintained, reused and ported to multiple mobile platforms.
2. Performance Testing
Performance testing in real-world conditions is a prerequisite for ensuring the best possible user experience. Simulating mobile load against specific network conditions, and during specific times of day, is very helpful in predicting performance bottlenecks. Application developers/testers must take into account the fact that the number of users for specific applications at peak hour and seasons can be significantly greater than average use.
Testing for performance against pre-OS versions of Android, iOS, etc. enables the detection of OS-specific network issues on specific devices. In this context, it is important to download available beta releases of iOS and Android and test your app against these versions on leading devices (smartphones and tablets) under different network conditions. This lets you identify and fix potential issues before the general OS version release. A good example of this was the avoidable iOS 6.1 network bug, which resulted in 3G network performance issues on 3G networks for iPhone 4S users.
3. Production Monitoring
To enable achievement of your business goals, the mobile quality lifecycle must also include performance monitoring of applications in production. Enterprises cannot afford to launch an app and wait for a problem to occur. By monitoring the application 24/7 on real devices, your operations team can obtain metrics and detailed reports on application behavior and understand exactly what end users are experiencing. Real-time mobile monitoring allows you to isolate, analyze, classify and reproduce issues for fast resolution.
In a dynamic and unpredictable mobile market, a continuous and iterative testing cycle, comprising automated functional testing, performance testing and production monitoring are crucial for meeting users' expectations and maintaining brand loyalty. Mobile APM solutions that address these needs allow enterprises to benchmark success over time and constantly improve the quality of their applications – to the delight of their end users.