Test Optimization via Parallel Worker Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Testing software applications in conventional database systems is a slow and inefficient process, requiring a large number of machines to perform numerous automated tests, which can be time-consuming and resource-intensive.

Innovation Solution

The method involves determining the test run time for each test, dividing them into groups, assigning worker systems to each group, and optimizing the distribution of tests based on historical run times and worker system availability to ensure balanced and simultaneous execution across multiple worker systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If numerous automated tests are performed to validate software application features, then testing completeness and reliability are improved, but test run time and resource consumption increase significantly

Engineering Contradiction:
Improvetesting completenessVSAvoidtest run time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the large set of tests into multiple test groups that can be executed in parallel across multiple worker systems. Each worker system receives a subset of tests to execute, allowing the overall testing process to complete faster while maintaining comprehensive test coverage through the coordinated execution of all test groups.

Inventive Principle:
Principle #1Segmentation

2Productivity

If a large number of machines are deployed to perform automated tests, then testing capacity and throughput are improved, but system complexity and resource management difficulty increase

Engineering Contradiction:
Improvetesting capacityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a test coordinator system that acts as an intermediary between the test execution requests and the multiple worker systems. This coordinator manages the distribution of test groups to workers, monitors execution progress, and aggregates results, thereby simplifying the management of multiple machines while maximizing testing capacity through coordinated parallel execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8201023B2Test optimization
Publication Date: 2012.06.12 SALESFORCE INC
  • US8201023B2 patent drawing
  • US8201023B2 patent drawing
  • US8201023B2 patent drawing

AI summary

A method for optimizing tests of a software application. The method includes determining a test run time for each test of a plurality of tests of a software application; and dividing the tests into a plurality of test groups. The method further includes assigning a worker system of a plurality of worker systems to each test group; and causing the worker systems to run the tests.