Software Test Repeatability Analysis for Autonomous Vehicle Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Autonomous vehicle software testing faces challenges due to the complexity of large software stacks and frequent code changes, making it difficult to identify the impact of changes and debug issues, particularly due to the lack of repeatability in test scenarios, which affects the reliability of the software and safety of the vehicle.
Innovation Solution
The system and techniques described provide methods to determine the repeatability of test scenarios and identify errors in autonomous vehicle software by analyzing divergent behaviors on a temporal basis, calculating repeatability scores, and using these scores to validate tests and code changes, thereby improving testing flexibility, accuracy, and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software tests are run frequently to validate code changes, then software reliability is improved, but test repeatability deteriorates due to complex software stacks and frequent changes
Solution Approach 1:
The system performs preliminary actions by calculating repeatability scores before full software validation. Test scenarios are evaluated for repeatability using divergence thresholds and temporal analysis, allowing the system to identify potentially failed tests in advance and prevent wasting resources on non-repeatable tests, thus maintaining reliability while managing the complexity of frequent code changes
Solution Approach 2:
The patent replaces traditional mechanical testing approaches with a computational analysis system. Instead of relying on manual test execution and observation, the system uses automated divergence detection, temporal analysis, and repeatability scoring algorithms to evaluate test scenarios, substituting physical test repetition with mathematical analysis of test data patterns
2Manufacturing precision
If detailed testing is performed to identify code change impacts, then manufacturing precision is improved, but device complexity increases due to large software stacks
Solution Approach 1:
The system segments the complex software testing process into distinct analytical components: divergence detection, temporal analysis, repeatability scoring, and threshold evaluation. Each component handles a specific aspect of test analysis independently, making the overall complex system manageable and maintainable while achieving precise identification of code change impacts
Solution Approach 2:
The patent introduces an intermediary layer between code changes and full software validation. The repeatability analysis system acts as a mediator that evaluates test scenarios using divergence thresholds and temporal patterns, filtering and prioritizing tests before they reach the full validation pipeline, thus reducing the complexity burden on the main software stack
3Measurement precision
If test scenarios are rerun multiple times to ensure repeatability, then measurement precision is improved, but loss of time increases due to configurable rerun requirements
Solution Approach 1:
The system performs preliminary repeatability analysis using divergence thresholds and temporal patterns before committing to multiple test reruns. By calculating repeatability scores in advance and identifying tests that meet confidence thresholds, the system avoids unnecessary time-consuming reruns while still ensuring measurement precision for tests that require validation
Solution Approach 2:
The patent dynamically adjusts testing parameters based on repeatability analysis results. The configurable number of reruns and divergence thresholds are modified according to the calculated repeatability scores, allowing the system to optimize measurement precision by running tests more times when needed and fewer times when repeatability is already high, thus reducing overall testing time
Data Source
AI summary
Systems and techniques are provided for testing software changes and determining a repeatability of software tests. An example method can perform software tests at different timepoints, each software test being based on a test scenario comprising a test simulation environment configured to test a software; determine one or more software tests from the software tests having a variation in test scores that exceeds a divergence threshold, the one or more software tests comprising at least one test scenario; rerun a software test a number of times, the software test configured to test changes to a code of the software, the changes to the code being associated with the software test and/or the at least one test scenario; and determine, based on test scores generated by the software test performed the number of times, a repeatability score for the software test on the changes to the code of the software.


