Blog

Guide to Mobile Testing for App Development and Quality Assurance 

Patryk Jaruga
Patryk Jaruga
Regular QA Engineer
February 10
20 min
Table of Contents

Introduction to Mobile Testing for App Development 

In mobile testing, understanding the market share of different devices is crucial to ensuring broad compatibility and a seamless user experience. Analyzing which devices, operating systems, and screen sizes are most commonly used by end users helps prioritize testing efforts and focus on the most relevant configurations. 

The Importance of Real Devices in Mobile Testing 

To achieve the most accurate results, testing on physical devices is highly recommended, as it provides real-world insights into performance, network conditions, and hardware-specific issues. However, if access to physical devices is limited, emulators and simulators can serve as a viable alternative for functional testing, offering a cost-effective way to validate app behavior across various device configurations. Balancing both approaches ensures comprehensive coverage and a high-quality mobile application 

Manual Mobile Testing Best Practices 

Manual testing for mobile applications is a crucial process that involves direct interaction with the app on real devices to evaluate its functionality, usability, and performance. Since mobile devices vary significantly in screen size, resolution, hardware capabilities, and OS behavior, it is essential to cover all agreed-upon devices to ensure a consistent user experience across different platforms. 

During the development cycle, manual testers typically work with Alpha versions of the app. These early-stage builds often include work-in-progress features, partially implemented functionalities, and known or unknown bugs. Testing at this stage helps to identify and address critical issues early before the app moves to later stages. 

Key Aspects Covered in Manual Mobile Testing 

  • UI & UX Testing – Ensuring the interface is visually consistent and intuitive. 
  • Functionality Testing – Verifying core features work as expected across devices. 
  • Performance Testing – Observing app responsiveness, load times, and stability.
  • Compatibility Testing – Checking how the app behaves on different screen sizes, resolutions, and OS versions. 
  • Interrupt Testing – Evaluating how the app handles calls, notifications, or other interruptions. 
  • Network Testing – Simulating different network conditions, such as poor connectivity, switching between Wi-Fi and mobile data, and network throttling, to ensure the app performs well under various scenarios. 

            By performing thorough manual testing across various real devices, testers can uncover device-specific issues that might not appear in emulators, ensuring a high-quality and user-friendly application. 

            The Role of Test Automation in Mobile Application Development 

            Automated testing for mobile applications plays a key role in ensuring stability and functionality across different devices and OS versions. This approach allows tests to be executed quickly and repeatedly, reducing manual effort and enhancing efficiency. 

            Automated tests can be run in two ways: 

            • On Physical Devices – By properly connecting real devices to the test environment, allowing for more realistic testing conditions. 
            • On Emulators – A more common approach in automation, as emulators provide a controlled and scalable environment for running tests without needing physical hardware. 

              Unlike manual testing, where testers actively look for edge cases, UI inconsistencies, or unusual issues, automated tests primarily focus on verifying that the application is stable and functional in general. Emulators are well-suited for this purpose, as they allow for efficient execution of test scripts without the need for real-device variations. 

              Common Frameworks for Mobile Automation 

              • iOS: XCTest – Apple’s native testing framework, optimized for high performance and deep integration with Xcode. 
              • Android: Espresso – Google’s framework designed for fast, reliable UI testing on Android applications. 
              • Cross-Platform: Appium – A widely used tool that supports both iOS and Android, allowing test scripts to be written once and executed across multiple platforms. 

                  One of the key benefits of automated testing is constant feedback through detailed test reports, which help developers quickly identify and fix issues. This enhances the overall testing process by improving efficiency, ensuring application stability, and enabling continuous integration within the development pipeline. 

                  iOS App Approval Process (App Store) Explained  

                  Apple has a strict and structured review process before allowing apps on the App Store. This process ensures high security, quality, and compliance with guidelines. 

                  Step 1: Developer Account Registration 

                  • Register for an Apple Developer Account via the Apple Developer Program. 
                  • Pay an annual fee of $99/year. 
                  • Set up Certificates, Identifiers & Profiles (CIP) via the Apple Developer portal. 

                       Step 2: App Development & Compliance Check 

                      • Ensure the app meets Apple’s Human Interface Guidelines and App Store Review Guidelines. 
                      • Implement Apple’s privacy requirements, such as App Tracking Transparency (ATT) if the app collects user data. 
                      • Test on multiple iOS devices and screen sizes using Xcode & TestFlight. 
                      • Follow App Store metadata requirements, such as proper app descriptions, screenshots, and privacy policies. 

                             Step 3: App Submission to App Store Connect 

                            • Log in to App Store Connect. 
                            • Create a new app entry with: 
                              • App Name 
                              • App Icon 
                              • Description 
                              • Screenshots & Previews 
                              • Keywords 
                              • Privacy Policy 
                              • App Category & Age Rating 
                              • Contact Information 
                              • Upload the .ipa file using Xcode or Transporter. 
                              • Set pricing and availability regions. 

                            Step 4: App Review Process 

                            Apple’s review process involves automated and manual reviews: 

                            • Automated Scanning: Apple checks for malware, crashes, and violations. 
                            • Manual Review: Apple’s human reviewers test app functionality, UI, and compliance. 

                                The most common review status can be: 

                                • Waiting for Review (Queued) 
                                • In Review (Under Testing) 
                                • Rejected (Requires Fixes) 
                                • Approved (Ready for Release) 

                                      Review Time:  

                                      • Typically 24-48 hours, but it can take up to a week if it is complex. 

                                      Step 5: App Approval & Release 

                                        Once approved, the app can be: 

                                        • Manually Released (Developer triggers release). 
                                        • Automatically Released (Apple pushes it live). 
                                        • Scheduled for Release (Chosen date & time). 

                                             Step 6: Post-Approval Monitoring 

                                            • Monitor user feedback & bug reports. 
                                            • Use App Store Analytics & Crashlytics. 
                                            • Regularly update the app to maintain compliance. 
                                            iOS App Approval Process (App Store) Explained  

                                            Essential Steps for Android App Approval Process (Google Play Store) 

                                            Google has a faster, more automated review process but still follows strict quality & security guidelines. 

                                            Step 1: Developer Account Registration 

                                            • Sign up for a Google Play Developer Account via Google Play Console.
                                            • Pay a one-time fee of $25 (lifetime).
                                            • Agree to Google’s Developer Policies & Content Guidelines. 

                                              Step 2: App Development & Pre-Submission Checklist 

                                                • Ensure compliance with Google Play Developer Policies.
                                                • Test app stability using Android Studio, Firebase Test Lab, and different device emulators.
                                                • Implement Google Play’s Data Safety Section for transparency on data collection. 

                                                    Step 3: App Submission to Google Play Console 

                                                    • Log in to Google Play Console and create a new app. 
                                                    • Enter app metadata, including:
                                                      • App Name
                                                      • App Description
                                                      • Screenshots & Videos 
                                                      • Category & Content Rating 
                                                      • Privacy Policy & Terms of Use 
                                                      • Upload the Android Package (APK or AAB format). 

                                                    Step 4: App Review Process 

                                                    • Google Play uses AI-based & human reviewers for app approval.
                                                    • Automated Review: Scans for malware, API violations, and policy compliance. 
                                                    • Human Review (if flagged): Further checks for content violations or functionality issues. 

                                                        Review statuses: 

                                                        • Pending publication (under review). 
                                                        • Rejected (violations found). 
                                                        • Approved (ready for release). 

                                                            Review Time: 

                                                            • Usually 3-6 hours, but can take up to 7 days for new developers or flagged apps. 

                                                             Step 5: App Approval & Release 

                                                            Once approved, developers can: 

                                                            • Manually Release the app. 
                                                            • Use Staged Rollout (release gradually to users). 
                                                            • A/B Test with Google Play Experiments before full release. 

                                                                 Step 6: Post-Approval Monitoring 

                                                                • Track Google Play Console analytics & Crashlytics. 
                                                                • Respond to user reviews and bug reports. 
                                                                • Regularly update for security, UI improvements, and compliance. 
                                                                Essential Steps for Android App Approval Process (Google Play Store) 

                                                                    Common Reasons for App Rejections in Mobile Platforms 

                                                                    Mobile platforms like iOS (App Store) and Android (Google Play) have strict guidelines to ensure apps are secure, functional, and user-friendly. Apps that fail to meet these requirements get rejected, which can delay their launch. Here’s a detailed look at common reasons for rejections and how to avoid them. 

                                                                    iOS (App Store) 

                                                                    • Crashes & Bugs 
                                                                      Apple values user experience above all else and apps that crash during testing or contain significant bugs are immediately rejected. For example, an app might crash when users interact with a specific feature or move between screens too quickly. To avoid this, rigorous testing across various devices and operating system versions is vital. Developers should address all known issues before submission and monitor crash reports during beta testing. 
                                                                    • UI Violations (Non-Standard Design) 
                                                                      Apple’s Human Interface Guidelines set a high app design and usability standard. Apps with cluttered screens, inconsistent layouts, or low-quality graphics often face rejection. For instance, using custom navigation that doesn’t align with iOS conventions can confuse users and lead to poor feedback. Sticking to standard UI elements, using accessible fonts, and adhering to Apple’s design rules are essential for passing this hurdle. 
                                                                    • Misleading Metadata or Screenshots 
                                                                      Metadata, such as app descriptions, screenshots, and previews, must accurately represent the app’s functionality. For example, using a screenshot of a feature that isn’t included in the app’s current version can lead to rejection. Developers should ensure their metadata is up-to-date, honest, and complies with Apple’s guidelines. Misleading claims can damage the app’s credibility and approval chances, even if unintentional. 
                                                                    • Lack of Privacy Compliance (Data Collection Issues) 
                                                                      Apps that collect user data without disclosing it or fail to meet privacy standards, like the App Tracking Transparency (ATT) framework, are often rejected. For example, an app that collects location data but does not display a clear privacy policy explaining its purpose will face rejection. To avoid this, developers must include transparent data collection practices, obtain user consent, and implement robust data security measures. 
                                                                    • Poor User Experience 
                                                                      Apps with slow load times, confusing navigation, or unresponsive elements can frustrate users and result in rejection. For instance, if an app’s back button doesn’t work as expected or important features are hidden behind multiple steps, Apple may deem it unfit for release. To create a positive user experience, developers must prioritize ease of use, clear instructions, and responsive design from the start. 

                                                                    Android (Google Play) 

                                                                    • Malware or Harmful Code 
                                                                      Google Play rigorously scans apps for malware or software that poses security risks. If an app contains code that mines cryptocurrency without consent or installs background processes without user knowledge, it is flagged for rejection. Developers should use trusted libraries, regularly audit code for vulnerabilities, and follow secure development practices to ensure compliance. 
                                                                    • Violation of Developer Policies 
                                                                      Google’s Developer Policies cover everything from prohibited content to monetization standards. Violation, such as using deceptive techniques like fake download counters or posting plagiarized content, results in immediate rejection. Staying informed about Google’s policies and ensuring the app adheres to them is critical for approval. 
                                                                    • Misleading Advertisements 
                                                                      Ads displayed within the app must be honest and unobtrusive. Apps that use deceptive tactics, such as showing fake “click-to-win” messages or ads that mimic system notifications, face rejection. Developers should ensure ad content aligns with Google’s advertising policy, doesn’t interrupt the user experience, and is clearly distinguishable from the app’s functionality. 
                                                                    • Inappropriate Content (Hate Speech, Adult Content) 
                                                                      Apps that include or promote hateful language, violence, or adult content are immediately flagged by Google. For instance, a gaming app with user-generated content that contains offensive images or language may be denied approval. Developers should monitor their content closely, implement content filters, and provide clear user guidelines to prevent violations. 
                                                                    • Unauthorized API Usage 
                                                                      Google discourages the use of unapproved APIs, which might compromise app functionality. For example, accessing restricted system data or hardware without user consent is strictly forbidden. Developers must use only authorized APIs supported by Android, document their usage appropriately, and seek alternatives if a specific API is unavailable. 

                                                                    How to Avoid Rejections by App Stores?

                                                                    By testing thoroughly, adhering to platform-specific guidelines, and maintaining transparency in app functionality and content, developers can significantly reduce the risk of rejections. Addressing these common pitfalls speeds up the approval process and ensures a better user experience and app performance once live in the stores. In addition, without extensive experience, consulting the app development and release plan with trusted experts is advisable. 

                                                                    Summary of the approval process for iOS and Android 

                                                                    iOS has a stricter & longer review process but ensures a polished user experience. Android has a faster & more flexible approval process but still requires policy compliance. Regularly updating apps and adhering to store guidelines minimizes rejection risks.  

                                                                    Structured Release Cycle for Mobile Applications: An Example 

                                                                    The release process on an app is much more complex and strict than web applications. As described above, besides testing performed by engineers in teams, it must be reviewed on the stores’ sides. Due to those additional checks, the release process must be carefully planned and optimized to allow the team to smooth app deliveries and quick feedback. Usually, it consists of a few phases: 

                                                                    Phase 

                                                                    Timestamp 

                                                                    Steps 

                                                                    Development and Alpha testing 

                                                                    1-9 day 

                                                                    • Developers implement new features, bug fixes, and performance improvements.  
                                                                    • Daily Alpha versions are provided for internal testing.
                                                                    • QA team performs manual and automated testing on real devices and emulators.
                                                                    • Functional, UI/UX, performance, and network testing are conducted.
                                                                    • Bugs are logged, critical issues are fixed, and regression testing is performed.

                                                                    Beta testing 

                                                                    8-9 day 

                                                                    • More stable and polished Beta versions are built and provided to a team of testers.  
                                                                    • Testers (optionally external) provide usability, stability, and performance feedback.  
                                                                    • Crash reports and logs are analyzed for potential fixes. 

                                                                        Release Candidate creation 

                                                                        10-11 day 

                                                                        • RC build is created, containing all the necessary features that are going to be released to production 
                                                                        • The final testing round is being performed 
                                                                        • Final bugs and issues are being reported and fixed 
                                                                          • Another RC is build created after fixes 
                                                                          • No more new features or changes are added to the scope 

                                                                                Store approvals 

                                                                                12-13 day 

                                                                                • The final build was submitted to App Store Connect (iOS) and Google Play (Android).  
                                                                                • Compliance checks, metadata review, and approval process.  
                                                                                • If rejected, necessary fixes are made and resubmitted. 

                                                                                    Release day 

                                                                                    14th day 

                                                                                    • The app is manually released or set for automatic deployment.  
                                                                                    • Post-release monitoring using crash analytics.  
                                                                                    • User feedback is collected for the next cycle. 

                                                                                         

                                                                                        Summary: How to Ensure High-Quality Mobile Apps via Testing 

                                                                                        Mobile testing differs significantly from web testing due to the wide variety of hardware, screen sizes, and performance capabilities across mobile devices. While web applications primarily rely on browser compatibility, mobile testing must account for network conditions, such as switching between Wi-Fi and mobile data or handling offline functionality. Additionally, app updates on mobile platforms require store approval, whereas web applications can be updated instantly without external validation. 

                                                                                        By integrating manual testing and automated testing, following structured release cycles, and ensuring compliance with app store guidelines, mobile testing helps deliver a high-quality, stable, and user-friendly application experience

                                                                                        Patryk Jaruga
                                                                                        Patryk Jaruga
                                                                                        Regular QA Engineer
                                                                                        • follow the expert:

                                                                                        Testimonials

                                                                                        What our partners say about us

                                                                                        Hicron’s contributions have been vital in making our product ready for commercialization. Their commitment to excellence, innovative solutions, and flexible approach were key factors in our successful collaboration.
                                                                                        I wholeheartedly recommend Hicron to any organization seeking a strategic long-term partnership, reliable and skilled partner for their technological needs.

                                                                                        tantum sana logo transparent
                                                                                        Günther Kalka
                                                                                        Managing Director, tantum sana GmbH

                                                                                        After carefully evaluating suppliers, we decided to try a new approach and start working with a near-shore software house. Cooperation with Hicron Software House was something different, and it turned out to be a great success that brought added value to our company.

                                                                                        With HICRON’s creative ideas and fresh perspective, we reached a new level of our core platform and achieved our business goals.

                                                                                        Many thanks for what you did so far; we are looking forward to more in future!

                                                                                        hdi logo
                                                                                        Jan-Henrik Schulze
                                                                                        Head of Industrial Lines Development at HDI Group

                                                                                        Hicron is a partner who has provided excellent software development services. Their talented software engineers have a strong focus on collaboration and quality. They have helped us in achieving our goals across our cloud platforms at a good pace, without compromising on the quality of our services. Our partnership is professional and solution-focused!

                                                                                        NBS logo
                                                                                        Phil Scott
                                                                                        Director of Software Delivery at NBS

                                                                                        The IT system supporting the work of retail outlets is the foundation of our business. The ability to optimize and adapt it to the needs of all entities in the PSA Group is of strategic importance and we consider it a step into the future. This project is a huge challenge: not only for us in terms of organization, but also for our partners – including Hicron – in terms of adapting the system to the needs and business models of PSA. Cooperation with Hicron consultants, taking into account their competences in the field of programming and processes specific to the automotive sector, gave us many reasons to be satisfied.

                                                                                         

                                                                                        PSA Group - Wikipedia
                                                                                        Peter Windhöfel
                                                                                        IT Director At PSA Group Germany

                                                                                        Get in touch

                                                                                        Say Hi!cron

                                                                                          Message sent, thank you!
                                                                                          We will reply as quickly as possible.

                                                                                          By submitting this form I agree with   Privacy Policy

                                                                                          This site uses cookies. By continuing to use this website, you agree to our Privacy Policy.

                                                                                          OK, I agree