Test Class Filter for Targeted Cloud Application Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current testing systems in cloud-based computing environments lack the ability to efficiently select and execute specific test classes, leading to tedious manual processes and inefficient code coverage analysis, particularly for sub-tenants interested in targeted components, resulting in reduced user productivity and unclear test results.

Innovation Solution

Implementing a system that allows users to programmatically group and filter test classes and source classes using manifest files and regular expressions, enabling targeted test execution and code coverage computation, with features like test time tracking and code coverage reporting to improve efficiency and precision.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If users manually select test classes using checkboxes, then they can execute specific tests, but the process becomes tedious and time-consuming

Engineering Contradiction:
ImproveTest selection processVSAvoidTime required for test execution
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent introduces a test class filter as an intermediary component that automatically selects test classes based on user-defined criteria (manifest files, regular expressions, or sub-tenant identifiers) rather than requiring manual checkbox selection. This mediator streamlines the test selection process and reduces time investment.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the selection parameters from manual UI interactions (checkboxes) to automated filtering mechanisms based on manifest files, regular expressions, or sub-tenant identifiers. This parameter transformation enables programmatic test class selection, significantly improving efficiency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If all possible tests are executed, then complete test coverage is achieved, but user productivity is reduced due to unnecessary testing

Engineering Contradiction:
ImproveTest coverage completenessVSAvoidUser productivity during testing
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the complete test suite into targeted subsets based on manifest files, regular expressions, or sub-tenant identifiers. This segmentation allows users to execute only the relevant test classes needed for their specific purposes, maintaining reliability while improving productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of executing all possible tests (excessive action), the system enables partial test execution by filtering test classes based on user-defined criteria. This partial action approach ensures sufficient test coverage for the specific sub-tenant or component of interest while avoiding unnecessary testing.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If code coverage is computed for all source classes, then comprehensive analysis is provided, but clarity of results for specific sub-tenants is reduced

Engineering Contradiction:
ImproveCode coverage analysisVSAvoidSub-tenant specific test results
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The patent applies local quality by computing code coverage metrics specifically for source classes associated with the requested sub-tenant rather than providing only organization-wide aggregate data. This enables sub-tenant-specific code coverage analysis, maintaining measurement precision while eliminating information loss for relevant components.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10261890B2Methods and systems for executing tests using grouped/filtered test classes during testing of an application
Publication Date: 2019.04.16 SALESFORCE INC
  • US10261890B2 patent drawing
  • US10261890B2 patent drawing
  • US10261890B2 patent drawing

AI summary

Computer implemented methods and systems are provided for executing tests in a system that includes a user system and a cloud-based computing platform. The user system includes a processing system, memory and an input system that receives input parameters specified by a user of the user system. The memory can store a test class filter module executable by the processing system. Upon being executed by the processing system, the test class filter module can, based on one or more of the input parameters, group and filter test class identifiers to generate a unique test class identifier array of filtered test class identifiers that correspond to a particular subset of tests that are to be executed during testing of an application. A test execution engine can then execute the particular subset of tests corresponding to the filtered test class identifiers specified in the unique test class identifier array.