Web Testing Shadow DOM Path Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web testing tools face limitations in accessing and modifying encapsulated elements within shadow DOMs due to encapsulation, which restricts their functionality and effectiveness in testing web applications.

Innovation Solution

A method that identifies shadow host elements to create a reduced path for accessing target elements within the DOM and shadow DOM, allowing efficient access and replacement during recording, replay, and real-time testing by avoiding traversal of the entire DOM or shadow DOM tree.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If web testing tools traverse the entire DOM or shadow DOM tree to identify encapsulated elements, then they can access target elements, but the process becomes computationally expensive and time-consuming

Engineering Contradiction:
Improveaccess capability to encapsulated elementsVSAvoidtime to identify target elements
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent pre-computes and stores a condensed path from the root element to target elements within shadow DOMs during element creation or before testing operations. This condensed path includes intermediate shadow host elements and their corresponding shadow roots, allowing testing tools to directly navigate to target elements without traversing the entire shadow DOM tree during test execution, thereby significantly reducing identification time while maintaining reliable access

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces shadow host elements as intermediary nodes that bridge the main DOM tree and encapsulated shadow DOM content. By storing references to these intermediary shadow host elements in the condensed path, testing tools can efficiently navigate through the encapsulation boundary without needing to traverse the complete shadow DOM tree, thus resolving the contradiction between access capability and time efficiency

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If query languages and style sheet selectors are used to navigate DOM trees, then basic navigation is supported, but they cannot directly support navigating through encapsulation boundaries

Engineering Contradiction:
Improvenavigation capabilityVSAvoidsupport for encapsulation navigation
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent extends the functionality of existing query languages and CSS selectors by integrating them with the condensed path mechanism. The testing tool's navigation system is enhanced to automatically utilize pre-computed condensed paths when querying elements within shadow DOMs, allowing standard query syntax to work seamlessly across encapsulation boundaries without requiring separate navigation mechanisms, thus achieving both ease of operation and adaptability to encapsulation

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

3Stability of the object's composition

If shadow DOM is set to closed-mode status for strong encapsulation, then element access is restricted, but web testing tools lose functional access and effectiveness

Engineering Contradiction:
Improveencapsulation integrityVSAvoidtesting tool access
Core Design Contradiction:
Stability of the object's compositionVSEase of operation

Solution Approach 1:

The patent performs preliminary actions during element creation or before testing by pre-computing condensed paths that capture the structural relationships between shadow host elements and their shadow DOM content. These pre-computed paths are stored and reused during testing operations, allowing testing tools to access encapsulated elements in closed-mode shadow DOMs without compromising encapsulation integrity, as the paths are established beforehand when the shadow DOM structure is known

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11416381B2Supporting web components in a web testing environment
Publication Date: 2022.08.16 MICRO FOCUS LLC
  • US11416381B2 patent drawing
  • US11416381B2 patent drawing
  • US11416381B2 patent drawing

AI summary

This document describes techniques and apparatuses for supporting web components associated with a document object model (DOM) corresponding to a data file in a web testing environment. A user interaction, relative to a web page or web application from which the DOM is rendered, is monitored in the web testing environment. The monitoring identifies a target element selected by the user that is referenced in a shadow DOM associated with the DOM. One or more parent shadow host elements of the DOM are identified relative to the target element. The one or more shadow host elements define a reduced path, with respect to a tree data structure representing the DOM and the shadow DOM, for linking a document object of the DOM to the target element. Indicia identifying the one or more shadow host elements as linking the document object of the DOM to the target element are recorded. The recorded indicia define the reduced path for identifying the target element relative to the document object in the tree data structure during a replay of a recorded session of the user interaction. A target element may also be identified and replaced with a different object by referencing the one or more shadow host elements.