Automation of Mobile Application Stress Scenarios for Performance Engineering

Categories: Digital TransformationTechnology

Author

Abhishek-Gedam

Author

Abhishek Gedam

Principal Architect

View all Articles

Top Insights

Best practices for selecting a software engineering partner

Best practices for selecting a software engineering partner

SecurityDigital TransformationDevOpsCloudMedia
7 RETAIL TRENDS POWERED BY MOBILE

7 RETAIL TRENDS POWERED BY MOBILE

MobilityConsumer and RetailMedia
My Intro to the Amazing Partnership Between the US Paralympics and the Telecom Industry

My Intro to the Amazing Partnership Between the...

Experience DesignPerspectiveCommunicationsMediaTechnology
Adaptive and Intuitive Design: Disrupting Sports Broadcasting

Adaptive and Intuitive Design: Disrupting Sports Broadcasting

Experience DesignSecurityMobilityDigital TransformationCloudBig Data & AnalyticsMedia

Top Authors

Yuriy Yuzifovich

Yuriy Yuzifovich

Chief Technology Officer, AI

Richard Lett

Richard Lett

VP of Healthcare Technology

Himanshu & Dhavaleshwar

Himanshu & Dhavaleshwar

Director Building Management System & Consultant, Business Solutions & SME - Energy & Utilities

Pragya Sharma

Pragya Sharma

Trainee Software Engineer

Blog Categories

Overview

Performance engineering is an important aspect of software development, it makes sure what is delivered to the end user is optimized to give a smooth user experience, having a small memory footprint consumes less process power and hence consumes less battery. There are different aspects of performance engineering out of which verification of application performance in stress scenarios is an important aspect. This makes sure that even if there is stress on application or host system, application can perform required operations or at least give appropriate message and exit if required.

This document is focused on providing an overview on stress scenarios required to verify performance of application, their impact and potential way to simulate these scenarios. This document describes potential simulation of stress scenarios for Android devices, but this can be done for other platforms as well.

Stress Scenarios
Functional testing is done in a sandbox environment to test the functional aspect of an application, it is necessary to verify that the application is delivering what is required. In reality, functional testing also needs to be tested in a stressful or hostile environment. It is particularly important in gauging performance of applications in stress.

Following are major categories of stress scenario:

System Introduced

Every application is executed on an underline system or OS e.g. Android. When this system gets into stress due to change in system parameters or any external/internal factors, it impacts the performance of the overall system and hence target application also gets impacted. Target Applications may get slow and respond intermittently or even get closed abruptly. E.g. Low Battery, Low CPU availability

Application Introduced
Target Application itself can get into stress due to wrong coding practices, unoptimized code and majorly not following good architectural and design practices. Target
Applications may get slow and respond intermittently or even get closed abruptly. E.g. Unoptimized code in Complex UI, non-optimized network API calls

User Introduced
User action can put both application as well as system into stress, and hence can impact the usability of application. User can introduce stress by opening too many apps, frequency switching between apps etc.

  • URL copied!