IP Library Granted Patent US 9,658,931
Granted Patent B2
US 9,658,931 · App. 14/219,953 · Granted May 23, 2017

Method for monitoring a graphical user interface on a second computer display from a first computer

Inventors: Douglas P. Simons (Fort Collins, CO); Jonathan D. Gillaspie (Golden, CO)
Assignee: TESTPLANT INC.
G06F11/2273G06F3/0487G06F3/04817G06F3/04842G06F9/4445G03G15/50G06F3/1415G06F11/3414G06F11/36G06F11/3672G06F2201/875G06T7/001G06T7/0008G06T7/246G06T9/004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,658,931
App. No.
14/219,953
Granted
May 23, 2017
Kind
B2
Abstract

A high level interface between a remote computer and local computer operator permits the remote computer to be controlled via a sequence of interactions. The remote computer may be monitored for display information which is expected, and also controlled in the event the expected information either is or is not obtained. Command language extensions are provided which extend and complement a basic scripting language. Scripts with embedded command language extensions may be executed through a remote interface, permitting remote testing, operation and evaluation. The development of the scripts, including embedded command language extensions, may be prepared through execution of commands at the local computer on a depiction of the GUI received from the remote computer, and subsequently saved as a script.

Claims (67)

1. A computer system for testing a remote system, the computer system comprising:

a memory unit that stores instructions; and

at least one processing unit that executes the instructions to:

receive a representation of a graphical user interface of the remote system; and

control a flow of execution based on a testing script, the flow of execution including:

search the received representation of the remote system graphical user interface for a graphical element based on an image analysis; and

responsive to a result of searching the received representation of the remote system graphical user interface for the graphical element, automatically provide a signal through a communications channel to execute an emulated user input action on the remote system graphical user interface, wherein the input action is specified by a specific script command in the testing script.

2. The computer system of claim 1 , wherein the at least one processing unit further executes the instructions to:

receive an additional representation of the graphical user interface of the remote system subsequent to automatically providing the signal to the remote system to execute the input action; and

search the additionally received representation of the remote system graphical user interface for another graphical element based on an image analysis.

3. The computer system of claim 1 , wherein the graphical element comprises less than the entire representation of the remote system graphical user interface.

4. The computer system of claim 1 , wherein the graphical element comprises at least one selected from a group comprising: an icon, text, a text box, and a prompt.

5. The computer system of claim 1 , wherein the input action emulates an input command of a peripheral input device including at least one selected from a group comprising: a keyboard, a mouse, and a touch screen device.

6. The computer system of claim 1 , wherein the input action includes at least one selected from a group comprising: a mouse click, a mouse movement, and text entry.

7. The computer system of claim 1 , wherein the at least one processing unit further executes the instructions to:

determine a location of the graphical element when a presence of the graphical element is found within the received representation of the remote system graphical user interface.

8. The computer system of claim 1 , wherein the at least one processing unit further executes the instructions to:

automatically provide as the signal, a first signal to execute an input action at the remote system, in response to a detected presence of the graphical element in the received representation of the remote system graphical user interface during the search.

9. The computer system of claim 8 , wherein the at least one processing unit further executes the instructions to:

automatically provide as the signal, a second signal to execute a second input action at the remote system, in response to a detected absence of the graphical element in the received representation of the remote system graphical user interface during the search.

10. The computer system of claim 1 , wherein the at least one processing unit further executes the instructions to:

indicate a failure, in response to a detected absence of the graphical element in the received representation of the remote system graphical user interface during the search.

11. The computer system of claim 1 , wherein the at least one processing unit further executes the instructions to:

capture user input effected with respect to the representation of the remote system graphical user interface display; and

generate the testing script based on the captured user input.

12. A monitoring system comprising:

a computer system including a memory unit that stores instructions and at least one processing unit that executes the instructions; and

a remote system that is connected to the computer system,

wherein the at least one processing unit executes the instructions to:

receive a representation of a graphical user interface of the remote system; and

control a flow of execution based on a testing script, the flow of execution including:

search the received representation of the remote system graphical user interface for a graphical element based on an image analysis; and

responsive to a result of searching the received representation of the remote system graphical user interface for the graphical element, automatically provide a signal through a communications channel to execute an emulated user input action on the remote system graphical user interface, wherein the input action is specified by a specific script command in the testing script.

13. The monitoring system of claim 12 , wherein the at least one processing unit further executes the instructions to:

receive an additional representation of the graphical user interface of the remote system subsequent to automatically providing the signal to the remote system to execute the input action; and

search the additionally received representation of the remote system graphical user interface for another graphical element based on an image analysis.

14. The monitoring system of claim 12 , wherein the graphical element comprises less than the entire representation of the remote system graphical user interface.

15. The monitoring system of claim 12 , wherein the graphical element comprises at least one selected from a group comprising: an icon, text, a text box, and a prompt.

16. The monitoring system of claim 12 , wherein the input action emulates an input command of a peripheral input device including at least one selected from a group comprising: a keyboard, a mouse, and a touch screen device.

17. The monitoring system of claim 12 , wherein the input action includes at least one selected from a group comprising: a mouse click, a mouse movement, and text entry.

18. The monitoring system of claim 12 , wherein the at least one processing unit further executes the instructions to:

determine a location of the graphical element when a presence of the graphical element is found within the received representation of the remote system graphical user interface.

19. The monitoring system of claim 12 , wherein the at least one processing unit further executes the instructions to:

automatically provide as the signal, a first signal to execute a first input action at the remote system, in response to a detected presence of the graphical element in the received representation of the remote system graphical user interface during the search.

20. The monitoring system of claim 19 , wherein the at least one processing unit further executes the instructions to:

automatically provide as the signal, a second signal to execute a second input action at the remote system, in response to a detected absence of the graphical element in the received representation of the remote system graphical user interface during the search.

21. The monitoring system of claim 12 , wherein the at least one processing unit further executes the instructions to:

indicate a failure, in response to a detected absence of the graphical element in the received representation of the remote system graphical user interface during the search.

22. The monitoring system of claim 12 , wherein the at least one processing unit further executes the instructions to:

capture user input effected with respect to the representation of the remote system graphical user interface display; and

generate the testing script based on the captured user input.

23. A non-transitory computer-readable storage medium storing instructions for enabling a computer to implement a method for testing a computer system, the method comprising:

receiving, at the computer, a representation of a graphical user interface of the remote system; and

controlling, at the computer, a flow of execution based on a testing script, the flow of execution including:

searching the received representation of the remote system graphical user interface for a graphical element based on an image analysis; and

responsive to a result of searching the received representation of the remote system graphical user interface for the graphical element, automatically providing a signal through a communications channel to execute an emulated user input action on the remote system graphical user interface, wherein the input action is specified by a specific script command in the testing script.

24. The non-transitory computer-readable storage medium of claim 23 , wherein the method further comprises:

receiving, at the computer, an additional representation of the graphical user interface of the remote system subsequent to automatically providing the signal to the remote system to execute the input action; and

searching, at the computer, the additionally received representation of the remote system graphical user interface for another graphical element based on an image analysis.

25. The non-transitory computer-readable storage medium of claim 23 , wherein the graphical element comprises less than the entire representation of the remote system graphical user interface.

26. The non-transitory computer-readable storage medium of claim 23 , wherein the graphical element comprises at least one selected from a group comprising: an icon, text, a text box, and a prompt.

27. The non-transitory computer-readable storage medium of claim 23 , wherein the input action emulates an input command of a peripheral input device including at least one selected from a group comprising: a keyboard, a mouse, and a touch screen device.

28. The non-transitory computer-readable storage medium of claim 23 , wherein the input action includes at least one selected from a group comprising: a mouse click, a mouse movement, and text entry.

29. The non-transitory computer-readable storage medium of claim 23 , wherein the method further includes:

determining, at the computer, a location of the graphical element when a presence of the graphical element is found within the received representation of the remote system graphical user interface.

30. The non-transitory computer-readable storage medium of claim 23 , wherein the method further includes:

automatically providing, by the computer, as the signal, a first signal to execute an input action at the remote system, in response to a detected presence of the graphical element in the received representation of the remote system graphical user interface during the search.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Dec 18, 2020
From: SILICON VALLEY BANK
To: TESTPLANT INC.
Reel/Frame 054688/0615 →
CHANGE OF NAME Recorded Aug 7, 2020
From: TESTPLANT INC.
To: EGGPLANT SOFTWARE, INC.
Reel/Frame 053437/0402 →
SECURITY INTEREST Recorded Jun 28, 2018
From: TESTPLANT INC.
To: SILICON VALLEY BANK
Reel/Frame 046231/0828 →
SECURITY AGREEMENT Recorded Dec 1, 2014
From: TESTPLANT INC.
To: SILICON VALLEY BANK
Reel/Frame 034499/0484 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2014
From: SIMONS, DOUGLAS P.; GILLASPIE, JONATHAN D.
To: REDSTONE SOFTWARE, INC.
Reel/Frame 034048/0237 →
CHANGE OF NAME Recorded Oct 28, 2014
From: REDSTONE SOFTWARE INC.
To: TESTPLANT INC.
Reel/Frame 034048/0325 →
Continuity (3)
Continuation 12963620 · Dec 8, 2010
Continuation 10678043 · Oct 1, 2003
Related Publication 20140208222A1 · Jul 24, 2014