Automated Test File Generation via Source Code Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software testing methods require manual conversion of source code into markup language for automated testing tools, which is time-consuming and error-prone, especially when testing complex software systems.

Innovation Solution

A system and method that allows developers to write tests in a source language with embedded annotations, which are then transformed into markup language using a transformation tool, creating a data structure representation to generate test code that complies with testing definitions and is stored in a test file suitable for automated testing tools.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual conversion of source code into markup language is performed, then test files can be generated for automated testing tools, but the process is time-consuming and error-prone

Engineering Contradiction:
Improveaccuracy of test file generationVSAvoidtime required for test file generation
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically generating the entire test file structure and markup language code through transformation of source code test cases, rather than requiring manual step-by-step conversion. This preliminary automated generation eliminates time-consuming manual typing and reduces errors associated with manual transcription.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary transformation tool that acts as a mediator between the source code test cases and the final markup language test files. This intermediary automatically translates source code into the required markup format, eliminating the need for manual conversion while ensuring accuracy through systematic transformation rules.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If test code is manually inserted into test definitions, then tests can be executed by automated testing tools, but manual effort and potential for errors increase

Engineering Contradiction:
Improvespeed of test execution setupVSAvoidease of test file creation
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system enables self-service by allowing test code to be automatically transformed and inserted into test definitions without requiring manual intervention. The transformation tool automatically processes source code test cases, generates the corresponding markup language, and populates the test file structure, making the process self-executing and eliminating manual insertion efforts.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The transformation process performs preliminary actions by pre-generating and pre-populating the test file with transformed code before execution. This preliminary automated preparation eliminates the need for manual code insertion during the test setup phase, thereby increasing productivity while maintaining ease of operation through automated workflows.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If source code is transformed to markup language, then compatibility with automated testing tools is achieved, but the transformation process complexity increases

Engineering Contradiction:
Improvecompatibility with testing toolsVSAvoidcomplexity of transformation process
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent employs an intermediary transformation tool that handles the complexity of converting source code to markup language. This intermediary absorbs the transformation complexity by implementing systematic translation rules and maintaining an internal representation of test cases, thereby shielding users from complexity while ensuring compatibility with automated testing tools through accurate markup generation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The transformation process is segmented into distinct phases: parsing source code into an internal representation, transforming the internal representation to markup language, and generating the final test file. This segmentation reduces overall complexity by breaking down the transformation into manageable, automated steps that can be executed systematically.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8028276B1Method and system for generating a test file
Publication Date: 2011.09.27 ORACLE AMERICAN INC
  • US8028276B1 patent drawing
  • US8028276B1 patent drawing
  • US8028276B1 patent drawing

AI summary

A method for generating a test file, that includes parsing annotated test code written in a source language to create a data structure representation of the annotated test code, generating test code in a markup language according to a plurality of testing definitions using the data structure representation, and storing the test code in the markup language in the test file.