Automated Cloud App Performance Testing via Virtualized Multi-Platform Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems fail to provide effective cross-platform and cross-browser performance testing for apps, especially in complex distributed systems, leading to difficulties in identifying and addressing performance bottlenecks across multiple operating systems, devices, and networks, which can result in negative user experiences and loss of user adoption.
Innovation Solution
An automated testing method and system that measures app performance across various platforms, including desktop, laptop, mobile, and server devices, using a cloud-based architecture to simulate user experiences, isolate performance components, and collect comprehensive metrics without manual intervention, employing tools like Selenium and PhantomJS for browser automation and multi-tenant design for collaboration and data security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If current market tools are used for app performance testing, then testing can be performed in non-virtualized environments, but the tools fail to provide adequate solution for cross-platform and cross-browser performance testing
Solution Approach 1:
The system creates a universal virtualized testing environment that can execute app performance tests across multiple operating systems (Windows, macOS, Linux, Android, iOS) and browsers simultaneously. The virtual machine infrastructure allows a single testing platform to adapt to diverse platform requirements while maintaining consistent measurement methodologies, thereby achieving both cross-platform versatility and reliable performance metrics.
Solution Approach 2:
The patent introduces a virtualized environment as an intermediary layer between the testing tools and the target apps. This virtualization layer acts as a mediator that standardizes the testing interface across different platforms while preserving the unique characteristics of each operating system and browser, enabling accurate cross-platform performance comparison without sacrificing measurement reliability.
2Measurement precision
If more resources are allocated for measuring and monitoring app performance in complex distributed systems, then measurement capability improves, but system complexity increases
Solution Approach 1:
The system segments the complex distributed testing environment into modular virtual machine instances, each handling specific testing scenarios. The testing framework is divided into independent components including test case management, virtual machine orchestration, performance metric collection, and analysis modules. This segmentation allows precise performance monitoring capabilities to be built incrementally without proportionally increasing overall system complexity.
Solution Approach 2:
Instead of creating a single complex monitoring system, the patent uses virtualization to create multiple simplified copies of the testing environment. Each virtual machine instance is a lightweight copy that can independently monitor performance metrics. This approach achieves comprehensive monitoring coverage across distributed systems while keeping each individual monitoring component simple and manageable.
3Productivity
If automated testing is implemented across multiple platforms and browsers, then testing efficiency improves, but resource requirements increase
Solution Approach 1:
The system merges multiple testing functions and resource requirements into a single virtualized infrastructure. Instead of maintaining separate physical testing environments for each platform and browser combination, the patent consolidates these into shared virtual machine resources that can be dynamically allocated and reused across different test scenarios, thereby improving testing efficiency while optimizing resource utilization.
Solution Approach 2:
The automated testing system implements periodic execution of test suites across different virtual machine instances rather than continuous simultaneous testing. Test cases are scheduled to run in cycles across available virtual resources, allowing efficient utilization of computational power while maintaining high testing throughput. This periodic action pattern enables the system to handle multiple platforms and browsers without requiring proportional increases in permanent resource allocation.
Data Source
AI summary
Systems and methods for measuring performance metrics of apps where a controller schedules performance testing of a plurality of apps to generate a set of performance metrics from a client, server and device relating to performance of each app wherein the generated set of performance metrics comprises processing times and requests of the app. The scheduled performance testing is executed by a combination of the client, server, and device includes different networks, operating systems, and browsers. A performance engine captures the set of performance metrics of each app from the different client, server and device, and organizes the app metrics into categories based on an instrumentation and profile of each app. The categories include clusters comprising performance metrics of the client, server, and device. A user interface renders the set of performance metrics to facilitate comparisons between each cluster and category of the set of performance metrics.


