Selective Application Acceleration for Software Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing acceleration tests face challenges in detecting failures that occur due to continuous operation, as they are difficult to reproduce within a limited time, and methods to suppress failures not occurring in normal operations during accelerated clock functions or timer interrupts are inadequate.
Innovation Solution
The acceleration test apparatus selectively accelerates the operation of cooperation applications while controlling non-cooperation applications to operate at normal speeds, thereby preventing failures that do not occur in normal operations by managing CPU usage and timer interrupts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If acceleration test is performed by setting timer interrupt interval to be short, then test time is reduced, but failures not occurring in normal operation occur due to clock function acceleration
Solution Approach 1:
The system segments applications into two categories: test target applications (and their cooperating applications) that are accelerated, and non-cooperating applications that maintain normal operation speed. This segmentation allows selective acceleration of only the necessary components while keeping other applications running at normal speeds, thereby reducing test time without causing failures in non-cooperating applications.
Solution Approach 2:
The acceleration is applied locally and selectively to specific applications (test target and cooperating applications) rather than globally to all applications. The timer interrupt interval is shortened only for the test target application's execution context, while non-cooperating applications continue to operate with normal timer interrupt intervals, preventing acceleration-related failures in those applications.
2Productivity
If all applications are accelerated during acceleration test, then test efficiency is improved, but failures occur in non-cooperation applications that do not cooperate with test target application
Solution Approach 1:
The system identifies and segments cooperating applications (those that interact with the test target application) from non-cooperating applications. Only the test target application and its cooperating applications are accelerated, while non-cooperating applications maintain normal operation speeds. This selective approach improves test efficiency by accelerating only necessary components while preventing failures in non-cooperating applications.
Solution Approach 2:
The system uses an intermediary mechanism (the determination unit) to identify which applications are cooperating with the test target application. This intermediary determination allows the system to selectively apply acceleration only to applications that need it, rather than accelerating all applications uniformly, thereby maintaining test efficiency while preventing failures in non-cooperating applications.
3Measurement precision
If long-term test is performed to detect failures due to continuous operation, then failure detection accuracy is improved, but test time becomes excessively long
Solution Approach 1:
The system uses periodic timer interrupts with shortened intervals during the acceleration test to simulate long-term operation within a compressed time frame. By accelerating the clock function and timer interrupt frequency for the test target application, the system can detect failures that would normally only appear after months or years of continuous operation within a much shorter test period.
Solution Approach 2:
The system changes the timer interrupt interval parameter from its normal long duration to a shortened duration during acceleration testing. This parameter change accelerates the execution of the test target application, allowing long-term operational failures to be detected within a limited test time while maintaining failure detection accuracy.
Data Source
AI summary
A non-transitory computer-readable recording medium storing an acceleration test program for causing a computer to execute a process, the process includes selecting a cooperation application that operates in cooperation with a test target application that is a target application of an acceleration test by accelerating an operation of an application, determining an acceleration degree of an operation in an acceleration mode in which an operation of an application is accelerated in comparison to a normal mode, and disabling an acceleration of an operation of a non-cooperation application that does not cooperate with the test target application during an acceleration of operations of the test target application and the cooperation application based on the acceleration degree.


