Automating Test Cases via Web Scraping and Element Repository

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current test automation processes require significant manual effort and are prone to errors, as users must write at least a portion of automated tests, which is time-consuming and inefficient.

Innovation Solution

A system and method that uses a web scraper to identify application elements, stores them in a repository, and automatically converts manually written test cases into automated tests by selecting preconfigured test functions using natural language processing or machine learning, eliminating the need for extensive user input.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If users manually write automated test cases, then test automation is achieved, but the process is time-consuming and error-prone

Engineering Contradiction:
Improvetest automationVSAvoidtime to write automated tests
Core Design Contradiction:
Extent of automationVSLoss of time

Solution Approach 1:

The system performs preliminary scraping of the application to identify and store all elements in a repository before test case creation. This pre-prepared element database eliminates the need for users to manually locate and identify elements when writing automated tests, significantly reducing the time required for test automation while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

2Extent of automation

If users manually write automated test cases, then test automation is achieved, but errors increase

Engineering Contradiction:
Improvetest automationVSAvoidaccuracy of automated tests
Core Design Contradiction:
Extent of automationVSReliability

Solution Approach 1:

The system introduces an intermediary element repository that acts as a bridge between the application and the automated test cases. This repository stores standardized element information with consistent identifiers and properties, serving as a reliable intermediary that eliminates manual element identification errors and ensures accuracy across all automated test cases.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Extent of automation

If web scraping is used to identify application elements, then element identification is automated, but system complexity increases

Engineering Contradiction:
Improveelement identification automationVSAvoidsystem complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The system segments the test automation process into distinct modular components: a web scraping module for element identification, a repository module for element storage, and a test case generation module for automated test creation. This segmentation allows each component to be independently developed, maintained, and optimized, reducing overall system complexity while maintaining high automation capabilities.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11436130B1System, method, and computer program for automating manually written test cases
Publication Date: 2022.09.06 AMDOCS DEV LTD
  • US11436130B1 patent drawing
  • US11436130B1 patent drawing
  • US11436130B1 patent drawing

AI summary

As described herein, a system, method, and computer program are provided for automating manually written test cases. In use, a web scraper is used to scrape an application to be tested, wherein the scraping identifies elements of the application. Additionally, a repository is used to store an indication of the elements of the application identified from the scraping of the application. Further, a test case manually written for the application is accessed. One or more of the elements of the application indicated in the repository that are impacted by the manually written test case are then determined. Still yet one or more of the preconfigured test functions that correspond with the one or more of the elements of the application are selected from a library of preconfigured test functions. Moreover, the manually written test case is automated, to form an automated test case, using the selected one or more of the preconfigured test functions.