Screenshot Analysis for Software Regression Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software regression testing often fails to detect bugs in successive software versions, making it difficult to determine when a regression was introduced and reproduce the defect in a controlled environment.
Innovation Solution
A system that analyzes screenshots captured during automated regression testing to detect the introduction point of regressions by scanning images for specific conditions and using bisection algorithms to narrow down the date of introduction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If automated regression testing is performed to detect bugs in successive software versions, then software quality is improved, but the ability to determine when a regression was introduced deteriorates
Solution Approach 1:
Screenshots are captured and stored during each automated regression test execution before the regression is detected. This preliminary capture of visual state information allows later analysis to determine when a regression was introduced, resolving the information loss problem while maintaining automated testing benefits
2Measurement precision
If previous versions of software are loaded and tested to determine regression introduction point, then the introduction point can be identified, but time consumption increases
Solution Approach 1:
Instead of loading and testing previous software versions, the system analyzes stored screenshot images that capture the visual state of each version. This copying approach preserves the diagnostic capability while eliminating the time-consuming process of reconstructing and testing older versions
3Measurement precision
If the exact user environment is reproduced to reproduce defects, then defect reproduction accuracy is improved, but device complexity increases
Solution Approach 1:
The system captures screenshots that document the visual state and environment conditions under which the software operated. These image copies preserve defect reproduction accuracy by providing visual evidence of the original environment without requiring actual reproduction of the complex user setup
Solution Approach 2:
The system extracts the essential diagnostic information from the complex user environment by capturing it in screenshot form. This extraction separates the critical visual state data from the surrounding environmental complexity, enabling analysis without full environment reproduction
Data Source
AI summary
A system for software testing includes a storage device to store screenshots of a user application captured during execution of the user application. The system includes a computer vision device coupled to the storage device. The computer vision device can receive a description of an assertion to be detected within the screenshots. The computer vision device can scan the screenshots to detect presence of the assertion and provide an output indicating presence of the assertion. The screenshot can be stored in a way to associate the screenshot with a software build version or date to indicate a point at which the assertion was introduced into relevant software source code.


