Parallel Smoke Testing for Emergency Software Patches
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Emergency software patches often lack sufficient testing, leading to potential errors that prevent applications from loading or opening, due to the time-sensitivity of security vulnerabilities or software faults, necessitating improved techniques for quick testing of multiple applications.
Innovation Solution
A computer system and method that obtain access and login information for multiple software applications, determine a test plan with parallel test packages, authenticate, load, and validate application interfaces for success indicators, generating logs and providing a user interface to present pass or fail results with failure reasons, enabling rapid smoke testing across multiple applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If full regression testing and functional testing are performed on emergency patches, then testing completeness and reliability are improved, but testing time increases significantly
Solution Approach 1:
The patent segments the testing process into multiple independent test packages, each targeting specific applications or functionality. This allows the testing system to divide comprehensive regression testing into smaller, manageable units that can be executed selectively and in parallel, reducing overall testing time while maintaining coverage of critical areas.
Solution Approach 2:
The patent implements smoke testing as a partial action approach, performing a simplified version of full regression testing that focuses on critical success indicators and basic functionality. This partial testing provides rapid feedback for emergency patches without requiring the complete time investment of full regression testing, enabling faster deployment decisions.
2Reliability
If multiple applications are tested sequentially, then testing thoroughness is maintained, but total testing time increases
Solution Approach 1:
The patent divides the plurality of applications into multiple test packages, where each package contains a subset of applications. This segmentation enables parallel execution of test packages across different system resources, maintaining comprehensive coverage of all applications while significantly reducing total testing time through concurrent processing.
Solution Approach 2:
The patent transitions from sequential (one-dimensional) testing to parallel (multi-dimensional) testing by executing multiple test packages simultaneously. This dimensional change in the testing approach allows the system to test multiple applications at the same time, improving productivity while maintaining thoroughness through coordinated execution and aggregation of results.
3Measurement precision
If comprehensive testing is performed on every application update, then defect detection rate is improved, but testing efficiency deteriorates
Solution Approach 1:
The patent applies different testing depths to different applications based on their criticality and change impact. Critical applications with high risk receive more comprehensive testing with detailed validation of success indicators, while less critical applications receive lighter smoke testing. This local quality approach optimizes defect detection where it matters most while maintaining overall testing efficiency.
Solution Approach 2:
The patent dynamically adjusts testing parameters such as test package composition, success indicator validation depth, and parallel execution configuration based on the specific patch context, application criticality, and risk assessment. This parameter optimization allows the system to maintain high defect detection rates for critical issues while improving efficiency by reducing unnecessary testing depth for lower-risk changes.
Data Source
AI summary
A collection of multiple software applications may be tested when a patch is issued. However, an emergency patch for a time-sensitive incident may not allow for full regression or functional testing. Provided herein are techniques for performing a multiple application smoke test. Access information, login information, and a success indicator are obtained for each of a plurality of software applications. A test plan including two or more test packages is determined. Each test package indicates a subset of applications and includes access information, login information, and success indicators corresponding to the subset. The test packages are executed in parallel, including authenticating, loading, and validating. Logs are generated and a user interface is provided to present the logs and whether validation of the application interfaces passed or failed, and a failure reason for failed tests.


