DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This Office Action is in response to the filing date of 8/9/2024.
Claims 1-20 are pending and have been considered below.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1, 11, and 16 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by U.S. Pub. No. 20180349256 to Fong.
Per claims 1, 11, and 16, Fong teaches an apparatus comprising: at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured:
to obtain test step information in natural language (see at least paragraph [0073] “The training data input 102 for the classifier can include natural language descriptions and their associated test actions…”);
to apply the test step information to a machine learning system configured to map the test step information to one or more code functions (see at least paragraphs [0078 – 0082] “The classifier will be able to build word vectors out of the training data 102 that represent the sentiment and context of the original description and classify similar descriptions to the same action… receiving the first intermediate output and the second intermediate output and combining the first intermediate output and the second output to map the natural language description into a vector space indicative of whether the one or more word vectors of the natural language description are related with one another”);
to determine values for one or more parameters in the one or more code functions (see at least paragraph [0083] “…The steps may be provided in the form of computational instruction sets, including simulated inputs (e.g., mouse click at (X,Y)), login parameters, access credentials, interactions with interactive visual elements (e.g., dropdowns, pick lists, radio buttons)…”); and
to execute the one or more code functions in a test script execution environment utilizing the determined values for the one or more parameters (see at least paragraph [0083] “The neural network is maintained on the system, and in some embodiments, the system is a special purpose machine that is designed as an data infrastructure for supporting the automatic generation and/or execution of test scripts based only on natural language descriptions, free of human input…”).
Claims 1, 11, and 16 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by U.S. Pub. No. 20200019488 to Singh.
Per claims 1, 11, and 16, Singh teaches an apparatus comprising: at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured:
to obtain test step information in natural language (see at least FIG. 2; see also at least paragraph [0017] “a test case document (such as the test case document 100 of FIG. 1) is, at 210, inputted, uploaded to, or otherwise accessed by a software-based test automate generation tool…”);
to apply the test step information to a machine learning system configured to map the test step information to one or more code functions (see at least paragraphs [0020] “…machine learning such as deep learning can be used to identify the elements. In particular, with the help of deep learning and the previously created XML (which contains Label, Value, Action and Type), the tool can try to find the best match for the element. If the element cannot be found uniquely using the multi-dimensional (e.g., 4D, etc.) structure of tags, then a deep learning algorithms can be used (which was trained using historical data characterizing previous executions) to find the right element uniquely among the other matches…”);
to determine values for one or more parameters in the one or more code functions (see at least paragraph [0020] “…Properties associated with the identified element can, at 245, then be stored. The properties can, include, for example, one or more of classname, tagname, lsdata, ID, and the like…”); and
to execute the one or more code functions in a test script execution environment utilizing the determined values for the one or more parameters (see at least paragraph [0021] “The final data structure 255 is ready once all of the actions have been iterated through. Using this final data structure, at 260, the test automate can be generated. This test automate can now be executed…”).
Claims 1-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by EP3846034B1 to Sheshadri.
Per claims 1, 11, and 16, Fong teaches an apparatus comprising: at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured:
to obtain test step information in natural language (see at least paragraph [0014] “…the input dataset may include one or more mapping specifications associated with program code that is to be tested…”);
to apply the test step information to a machine learning system configured to map the test step information to one or more code functions (see at least paragraph [0014] “…The one or more testing engines 120 may be configured to utilize machine learning and artificial intelligence techniques to process an input dataset and produce one or more outputs facilitating testing of aspects of the input dataset…”);
to determine values for one or more parameters in the one or more code functions (see at least paragraph [0032] “…transform a natural language input dataset into input parameters and output parameters that may be used in a data testing process (e.g., a testing process that may be utilized with a CI/CD pipeline during software development), the testing engines disclosed herein may be configured to provide additional functionality to automate other aspects of the testing process…”); and
to execute the one or more code functions in a test script execution environment utilizing the determined values for the one or more parameters (see at last paragraph [0032] “…The testing engines of embodiments may be configured to utilize the input and output parameters derived from the input dataset by the tokenization and LSTM modelling techniques described above to automatically generate test scripts that include test conditions derived from the input and output parameters and configured to be applied, during testing, to the relevant test data, as described in more detail below. At step 350, the testing process 300 includes executing the one or more test scripts automatically generated by the testing engines…”).
Per claims 2, 12, and 17, Sheshadri further teaches:
wherein the machine learning system comprises a long short-term memory (LSTM) neural network (see at least FIG. 2; see at least paragraph [0024] “To illustrate, as shown in FIG. 2, the vectorized data 262 may be provided as an input to a long short term memory (LSTM) network model 270…”).
Per claim 3, Sheshadri further teaches:
wherein the LSTM neural network comprises a plurality of inputs, a plurality of sequential computation stages coupled to respective ones of the inputs and generating respective hidden values, and at least one output (see at least FIG. 2).
Per claims 4, 13, and 18, Sheshadri further teaches:
wherein the inputs of the LSTM neural network are configured to receive respective text tokens in a sequence of text tokens of the test step information in natural language (see at least paragraph [0017] “FIG. 2, the input data 202 may be provided to a tokenizer block 210…”).
Per claim 5, Sheshadri further teaches
wherein the output of the LSTM neural network comprises a particular code function mapped to the sequence of text tokens (see at least paragraph [0031] “…the classifier layer 276 may be configured to analyze the output vector using a softmax function and then determine a classification to assign the data being evaluated based on the output of the softmax function…”).
Per claim 6, Sheshadri further teaches:
wherein determining values for one or more parameters in the one or more code functions comprises: preparing one or more variables associated with the one or more code functions; and specifying values for the one or more parameters in the one or more code functions based at least in part on the prepared variables (see at least paragraph [0031] “…the one or more classes may include three classes, such as a "straight move" class, an "assignment" class, and a "rule" class. The straight move class may be associated with a move action (e.g., move A to B) and any terms following the move may become output parameters associated with the "straight move" class. The "assignment" class may be associated with an assignment operation (e.g., assign X to Y), which may result in the corresponding input text (e.g., the analyzed data) being returned as an output parameter. The "rule" class may be associated with simple and complex rule-type operations, such as "if-else" statements and the like, which may generate zero or more input parameters and zero or more output parameters…”).
Per claims 7, 14, and 19, Sheshadri further teaches:
wherein the machine learning system is trained utilizing a plurality of annotated test cases and corresponding test scripts that match respective ones of the test cases (see at least paragraph [0012] “…The techniques disclosed herein may also enable more robust testing techniques to be provided through additional training of the artificial intelligence models utilized to automate aspects of the testing configuration process…”).
Per claim 8, Sheshadri further teaches:
wherein a given one of the test cases comprises test step information that includes a list of descriptive sentences each describing a corresponding test step of the given test case (see at least paragraph [0021] “the natural language data included in the input data 202 included the sentence "This document is for patent." A vectorized form of this sentence may be generated as follows: "This" : 1 "document" : 1 "was" : 0 "is" : 1 "for" : 1 "patent" : 1 "how" : 0…”).
Per claim 9, Sheshadri further teaches:
wherein a given one of the test scripts comprises a list of code functions matching respective steps of a given one of the test cases (see at least paragraph [0014] “…the input dataset may include one or more mapping specifications associated with program code that is to be tested…”).
Per claims 10, 15, and 20, Sheshadri further teaches
wherein a given one of the test cases comprises an automatically-generated test case with associated annotations each illustratively identifying a corresponding entity, operation or instance in a particular ontology (see at least paragraph [0049] “…the techniques disclosed herein may be utilized to test 100% of executed test cases (e.g., due to the identification of the test data based on the set of input parameters and the set of output parameters derived as described with reference to FIG. 2).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PHILLIP H NGUYEN whose telephone number is (571)270-1070. The examiner can normally be reached Monday-Friday 9:00AM-5:00PM.
US20210209011 relates to automated testing using AI.
US20230012264 test automation.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Wei Zhen can be reached at (571) 272-3708. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/PHILLIP H NGUYEN/Primary Examiner, Art Unit 2191