Systematically exploring programs during testing
First Claim
Patent Images
1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
- receive a request at a testing service to test operation of a program;
programmatically perform a first event that simulates a first user interaction on a first screen display associated with the program, wherein the first screen display includes a first element;
determine that a graphical change occurred to the first screen display based at least in part on programmatically performing the first event;
programmatically identify a type of the first element based at least in part on the graphical change to the first screen display, wherein programmatically identifying includes one or more of a graphical analysis of a shape of the first element, or a response caused by the performance of the first event;
determine one or more tests to perform based at least in part on the type of the first element;
cause the first element on the first screen display to be tested using the one or more tests;
programmatically perform a second event that simulates a second user interaction on the first screen display associated with the program;
programmatically identify that the first screen display changed to a second screen display of the program caused by the second event, wherein the second screen display includes a second element;
programmatically identify a type of the second element based at least in part on a shape of the second element;
determine one or more second tests to perform based at least in part on the type of the second element;
cause the second element to be tested using the one or more second tests;
store test results associated with the testing; and
provide the test results in response to the request.
1 Assignment
0 Petitions
Accused Products
Abstract
A testing service is used to test the operation of a program. The testing service systematically explores the display screens generated by the program. The testing service also identifies the elements that are displayed on the screen and programmatically interacts with the elements. Test data including performance metrics and screen captures may be recorded during the testing. Test results associated with the testing of the program are provided to an authorized user.
-
Citations
20 Claims
-
1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
-
receive a request at a testing service to test operation of a program; programmatically perform a first event that simulates a first user interaction on a first screen display associated with the program, wherein the first screen display includes a first element; determine that a graphical change occurred to the first screen display based at least in part on programmatically performing the first event; programmatically identify a type of the first element based at least in part on the graphical change to the first screen display, wherein programmatically identifying includes one or more of a graphical analysis of a shape of the first element, or a response caused by the performance of the first event; determine one or more tests to perform based at least in part on the type of the first element; cause the first element on the first screen display to be tested using the one or more tests; programmatically perform a second event that simulates a second user interaction on the first screen display associated with the program; programmatically identify that the first screen display changed to a second screen display of the program caused by the second event, wherein the second screen display includes a second element; programmatically identify a type of the second element based at least in part on a shape of the second element; determine one or more second tests to perform based at least in part on the type of the second element; cause the second element to be tested using the one or more second tests; store test results associated with the testing; and provide the test results in response to the request. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for testing a program, the system comprising:
one or more processor-based computing devices configured to programmatically identify a shape of a first element included in a first display screen associated with an execution of the program; programmatically identify a type of the first element based, at least in part, on a graphical analysis of the shape of the first element; based at least in part on programmatically identifying a type of the first element, cause the first element to be programmatically tested; programmatically identify a shape of a second element included in the first display screen; programmatically identify a type of the second element based, at least in part, on a graphical analysis of the shape of the second element; based at least in part on programmatically identifying a type of the second element, cause the second element to be programmatically tested; store test results associated with a program; and provide the test results. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
16. A computer-implemented method for testing the operation of a program, the method implemented with a computer system having at least one processor coupled with computer-executable instructions, which when executed by the processor, perform the method steps, comprising:
-
programmatically identifying a first element included in a first screen display associated with an execution of the program based, at least in part, on a programmatic analysis of graphical data associated with a first screen display, wherein the programmatic analysis of the graphical data includes identifying a shape of the first element; programmatically identifying a type of the first element based at least in part on the shape of the first element; causing the first element to be tested based at least in part on the type of the first element; programmatically identifying a second element included in the first screen display based, at least in part, on a programmatic analysis of graphical data associated with the first screen display, wherein the programmatic analysis of the graphical data includes identifying a shape of the second element; programmatically identifying a type of the second element based at least in part on the shape of the second element; causing the second element to be tested based at least in part on the type of the second element; storing test results associated with the first element and the second element; and providing the test results. - View Dependent Claims (17, 18, 19, 20)
-
Specification