Software Testing Time Scaling via Intermediary Layer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software testing for time-delayed event pairs is inefficient due to the need for code modifications and subsequent regression testing, which can affect the reliability and functionality of the original code and is resource-intensive.
Innovation Solution
A method and system that identify discrete time instances based on the time delay between input and output events, allowing for synthetic clock setting to test software without altering the original code, using predetermined inputs at these instances to validate output events.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If code modifications are made to implement time scaling for testing, then testing time is reduced, but code reliability and functionality are affected
Solution Approach 1:
The patent introduces a time scaling layer as an intermediary between the test execution environment and the actual software code. This layer translates test time units to real time units, allowing rapid testing without modifying the underlying code. The time scaling factor acts as a mediator that decouples test execution speed from actual software timing behavior, thus reducing testing time while preserving code integrity and reliability.
Solution Approach 2:
The patent creates a virtual time environment that copies and simulates the passage of time according to a scaling factor. Instead of modifying the actual code to wait for real time delays, the system creates a virtual representation of time progression that accelerates the testing process. This virtual time copy allows testers to simulate long-duration events in compressed time without affecting the original code's timing logic.
2Ease of operation
If code modifications are made for time scaling, then testing can be performed, but regression testing is required which increases resource consumption
Solution Approach 1:
By positioning the time scaling mechanism as an intermediary layer rather than embedding it in the code, the patent eliminates the need for code modifications. This intermediary approach enables testing capabilities without triggering regression testing requirements, as the original code remains untouched. Resources are used more efficiently since the time scaling infrastructure can be reused across multiple test scenarios without requiring repeated regression validation.
3Measurement precision
If 1:1 temporal mapping is used for testing, then code accuracy is maintained, but testing duration becomes excessively long
Solution Approach 1:
The patent changes the time parameter representation by introducing a time scaling factor that maps test time units to real time units. Instead of using a 1:1 mapping where 1 test unit equals 1 real time unit, the system applies a scaling transformation (e.g., 1 test unit equals N real time units). This parameter change allows the same temporal relationships to be tested in compressed time while maintaining the accuracy of time interval relationships through the consistent application of the scaling factor.
Data Source
AI summary
In one embodiment, a method of testing a software is disclosed. The method comprises: providing an input event to the software under test, wherein the software under test is associated with a time delay between an input event and an output event; identifying one or more discrete time instances based on the time delay between the input event and the output event; and testing the software under test by synthetically setting a clock to the one or more discrete time instances.


