×

Overall test tool migration pipeline

  • US 10,459,829 B2
  • Filed: 06/12/2017
  • Issued: 10/29/2019
  • Est. Priority Date: 06/07/2017
  • Status: Active Grant
First Claim
Patent Images

1. A system having a hardware processor for test tool migration between at least one Source Languages and at least one Target Languages, in automation testing with a pre-processing module, an in-flight module and a post-processing module having Source Code as input that includes an Object Repository (701), a Test Data (702) and Test Scripts (703), the system comprising:

  • a) a pre-processing module (301), which takes the Source Code (700) in a Source Language as input and comprises an input/output (IO) Configurator (704) and an Analyser (705), wherein;

    i) the IO Configurator (704), which has an input/output (IO) Configuration Reader (22), an input/output (IO) Location Reader (23) and a Sniffer (24), is configured such that the Source files (21) are input to the IO Configuration Reader (22), which reads basic settings (20) including user-interface (UI) look and feels settings, default settings and script types from a properties file, and is configured such that the IO Location Reader (23) reads the location of Source files, Object Repositories and Target files;

    ii) the Sniffer (24) is configured to get high-level information about the Source Code (700) including the first level of information about lines of code, functions, files, and complexity of the code, and is configured to scan through the entire Source code that is selected for conversion, and configured to analyze various programming artefacts selected from a group consisting of a location, a method, a condition, and a loop;

    iii) the Analyser (705) comprises a Source Analyser (706) and a Dependency Analyser (707) configured such that;

    the Source Analyser (706) scans the entire Source Code (700) selected for conversion and analyses various programming artefacts selected from a group consisting of methods, conditions, and loops, based on the Source Language; and

    the Dependency Analyser (707) examines the Source Code (700) for dependency artefacts based on the Target Language; and

    iv) the pre-processing module produces intermediate Analysis Reports (25);

    b) an in-flight module (302), which takes inputs from the pre-processing module and comprises a Template Generator (708) and a Converter (709) that work together to produce Tool generated raw Source (302a), the converter (709) configured to perform the parsing and lexing required to make a Source Language of the Source files (21) independent, and which simplifies the migration across to a Target platform selection, and the Template Generator (708) configured to generate an appropriate template of a Test Scripts (703) in a Target Language, based on the Target platform selection, the in-flight module further comprising a Lexer consisting of a Lexical Analyser (101), a Syntax Analyser (102), and a Parser including a Semantic Analyser (103) and Intermediate Code Generator (104) and that works to make Source file Language independent and simplifies migration, wherein;

    i) the in-flight module (31) takes inputs from the pre-processor module (26) from the Sniffer (24) and the Dependency Analyser (707), such that the Converter (709) does parsing and lexing; and

    ii) the Converter (709) reads Language independent code and Language independent Object Repositories and converts them to a neutral Language and then to a Target platform, such that the neutral Language is an intermediate low-level Language which can connect to both the Source Language and the Target Language; and

    c) a post-processing module (303), which reads the Tool generated raw Source (302a) and further comprises a Validator (721), a Smart (migration) Remedy Engine (SME) (722), a best practise analyser (723), a TODO resolver (724) to generate Final Scripts (735) in a Target Language, including Technical Logs (733) and Reports (734) for analysis, wherein the post-processing module further comprises (a) at least one users (725), (b) Tool generated raw Source (302a), (c) a Validator (721), (d) a best practise analyser (723), (e) a Smart migration Remedy Engine (722), (f) a TODO Resolver (724), and (g) at least one Final Scripts (735) wherein;

    i) the Tool generated raw Source (302a) comprises an Object Repository (718), Test Data (719) and Scripts (720);

    ii) the Validator (721) validates the Tool generated raw Source (302a) for syntax and semantic errors through a Target Language Compiler (726), checking the lines of the Source for Target Language Syntax and Target Language Semantics and lists warnings (727), stack traces and errors (728);

    iii) the best practise analyser (723) comprises a Suggestion Library (729) and Training module (730) that provide inputs on remedying the Tool generated raw Source (302a) based on historical Data;

    iv) the Smart migration Remedy Engine (722) consists of a Log Engine (733) and a Report Engine (734) that take inputs from the Training module (730) and produce Technical Logs (733) and Reports (734) to aid and autocorrect remediation process;

    v) the TODO Resolver (724) consists of a user interface and provides options to the user (725) for resolving the ambiguity, issues, and warnings with best practise suggestions; and

    vi) the Final Scripts (735) are generated based on the inputs given by the user (725) in the TODO Resolver (724).

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×