Automated software testing and validation system
First Claim
1. A method for automated software testing and validation comprising:
- identifying a software application under test (AUT), the AUT including processes, each process having at least one user interface display;
learning, for at least one process in the AUT, a test thread tree corresponding to the user interface displays in the process, each of the interface displays having at least one data object;
generating, from the test thread tree, a grid enumerating a plurality of test cases indicative of the data objects in the process; and
generating, from the test thread tree, a script indicative of the plurality of test cases, the script operable to be executed by a test engine.
2 Assignments
0 Petitions
Accused Products
Abstract
An automated software testing system allows automated test script generation, execution, and result correlation in a recreatable and adaptable manner. A software Application Under Test (AUT) is identified and includes a process having a sequence of Graphical User Interface (GUI) windows. A test thread tree is generated corresponding to the windows in the process. A grid is generated to enumerate test cases indicative of the windows and data objects in the thread. Also generated is a script indicative of each of the test cases. The script is executed to apply each of the test cases to the AUT and receive a response for each test case from the AUT. A report of expected responses is generated, and compared to the actual responses to provide a test result indicative of the status for each test case in question.
62 Citations
30 Claims
-
1. A method for automated software testing and validation comprising:
-
identifying a software application under test (AUT), the AUT including processes, each process having at least one user interface display;
learning, for at least one process in the AUT, a test thread tree corresponding to the user interface displays in the process, each of the interface displays having at least one data object;
generating, from the test thread tree, a grid enumerating a plurality of test cases indicative of the data objects in the process; and
generating, from the test thread tree, a script indicative of the plurality of test cases, the script operable to be executed by a test engine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A graphical user interface display operable by a user for interfacing with a software Application Under Test (AUT) comprising:
-
at least one process, the process having a sequence of user interface displays, the user interface displays each having at least one data object;
a learn module operable by a user to navigate the interface displays in the process and gather a test thread tree indicative of a sequence of data objects;
a grid corresponding to the test thread tree, the grid having test case entries including column entries corresponding to the sequence of data objects;
and a script corresponding to the test thread tree, the script operable to be executed by a test engine for retrieving the test case entries from the grid and applying the column entries to the sequence of data objects corresponding to a test case. - View Dependent Claims (18, 19, 20)
-
-
21. A method of automated script testing of an application under test comprising:
-
providing a software application under test (AUT), the AUT having a Graphical User Interface (GUI) for sending and receiving messages corresponding to user instructions;
identifying at least one process in the AUT, each of the processes having a sequence of user interface displays, each of the user interface displays having at least one data object;
traversing, by a learn module, the sequence of user interface displays in the process to build a test thread tree indicative of the sequence of data objects in the process;
generating, from the test thread tree, a grid adapted to store a set of object values corresponding to each of the data objects in the process, the grid further operable to store a plurality of test cases each containing the set of object values;
generating, from the test thread tree, a script operable to be executed by a test engine, the grid responsive to the test engine;
generating, from the test thread tree, a report indicative of an expected response to each of the data objects in the grid;
executing the script by iterating through each test case in the grid and, in each test case, applying the object values to the corresponding data objects in the process;
receiving a response from the AUT based on the applied object values;
and comparing the response to the expected response to generate a result. - View Dependent Claims (22, 23)
-
-
24. A system for automated software testing and validation comprising:
-
a software application under test (AUT), the AUT including processes, each process having at least one user interface display;
a learning module operable to learning for the processes in the AUT, a test thread tree corresponding to the user interface displays in the process, each of the interface displays having at least one data object;
a grid, generated from the test thread tree, enumerating a plurality of test cases indicative of the data objects in the process;
a script, generated from the test thread tree, indicative of the plurality of test cases; and
a test engine, the script and the grid responsive to the test engine for executing the script and applying the corresponding test cases to the AUT. - View Dependent Claims (25, 26, 27, 28)
-
-
29. A computer program product having computer program code for automated software testing and validation comprising:
-
computer program code for identifying a software application under test (AUT), the AUT including processes, each process having at least one user interface display;
computer program code for learning, for at least one process in the AUT, a test thread tree corresponding to the user interface displays in the process, each of the interface displays having at least one data object;
computer program code for generating, from the test thread tree, a grid enumerating a plurality of test cases indicative of the data objects in the process;
and computer program code for generating, from the test thread tree, a script indicative of the plurality of test cases, the script operable to be executed by a test engine.
-
-
30. A system for automated software testing and validation comprising:
-
means for identifying a software application under test (AUT), the AUT including processes, each process having at least one user interface display;
means for learning, for at least one process in the AUT, a test thread tree corresponding to the user interface displays in the process, each of the interface displays having at least one data object;
means for generating, from the test thread tree, a grid enumerating a plurality of test cases indicative of the data objects in the process; and
means for generating, from the test thread tree, a script indicative of the plurality of test cases, the script operable to be executed by a test engine.
-
Specification