Browser Stub Isolates Online Application Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing online application testing methods face challenges in efficiently testing across different browser environments without altering the state of the product code, leading to false positives and requiring multiple adapters for various browser types and versions.

Innovation Solution

The use of a stub and harness software components that allow testing within a separate browser environment, loaded from the same domain as the application, using scripting languages like JavaScript, to interact with Web pages and perform tests without cross-site-scripting limitations, while isolating test code from product code and enabling orchestration across multiple machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If testing is conducted by injecting scripts into the application under test, then testing can be performed within the application context, but the state of the product code is altered leading to false positives

Engineering Contradiction:
Improvetesting accuracyVSAvoidproduct code integrity
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The system separates testing functionality into a distinct stub component that runs in a separate browser environment, isolating test execution from the application under test. This segmentation prevents test scripts from altering product code state while maintaining testing capability through cross-browser communication mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A stub acts as an intermediary component between the test harness and the application under test. The stub loads from the application's domain, enabling it to interact with the application context without directly modifying product code, thus mediating between testing requirements and code integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If specialized adapters are created for each browser type and version, then comprehensive browser coverage is achieved, but system complexity increases

Engineering Contradiction:
Improvebrowser compatibilityVSAvoidadapter architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The stub is designed as a universal component that can operate across multiple browser types and versions. By loading the stub from the application's domain and using standardized communication protocols, the system achieves broad browser compatibility without requiring separate specialized adapters for each browser configuration.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Instead of creating multiple adapter implementations, the system uses a single stub template that is copied and loaded into different browser environments. The stub maintains its functionality across browsers through domain-based loading and standardized interfaces, eliminating the need for multiple adapter versions.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9223684B2Online application testing across browser environments
Publication Date: 2015.12.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9223684B2 patent drawing
  • US9223684B2 patent drawing
  • US9223684B2 patent drawing

AI summary

A stub can be loaded into a first browser environment of a browser application on a client machine, with the stub being loaded from a domain. The stub can execute to load an online application test into the first browser environment. Additionally, the test can execute in the first browser environment to conduct the test on an online application. For example, the test may be conducted from a second browser environment of the browser on the client machine. Performing the test can include loading one or more digital pages from the application into the second browser environment.