IP Library › Granted Patent US 10,949,225
Granted Patent B2
US 10,949,225 · App. 16/268,755 · Granted Mar 16, 2021

Automatic detection of user interface elements

Inventors: Warren Mark Fernandes (Mumbai, IN); Mohammad Saad Rashid (Delhi, IN); Sai Phani Sharath Chandra Danthalapelli (Warangal, IN); Sonam Saxena (Lucknow, IN); Mithilesh Kumar Singh (Ara, IN)
Assignee: SAP SE
G06F9/451G06F11/0793G06F11/1415G06N5/027G06F2201/805
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 10,949,225
App. No.
16/268,755
Filed
Feb 6, 2019
Granted
Mar 16, 2021
Kind
B2
Examiner
KO, CHAE M
Art Unit
2114
USPC
714/15
Abstract

The present disclosure involves systems, software, and computer implemented methods for automatically detecting user interface elements. One example method includes accessing master frame information for a user interface of an application. The master frame information includes first captured user interface information captured during a first execution of a scenario for the application. A subsequent execution of the scenario is performed, including capturing second captured user interface information. A determination is made that the subsequent execution of the scenario has not passed successfully, due to a non-functional error. A determination is made that the non-functional error is based on a failure to locate a user interface element specified in the master frame. A recovery strategy is performed, using the first captured user interface information and the second captured user interface information, to automatically locate the user interface element.

Claims (40)

1. A computer-implemented method comprising:

accessing master frame information for a user interface of an application, the master frame information including first captured user interface information captured during a first execution of a scenario for the application;

performing a subsequent execution of the scenario, including capturing second captured user interface information;

determining that the subsequent execution of the scenario has not passed successfully;

in response to determining that the subsequent execution of the scenario has not passed successfully, determining that the subsequent execution of the scenario has failed due to a non-functional error;

determining that the non-functional error is based on a failure to locate a user interface element specified in the master frame; and

performing a recovery strategy, using the first captured user interface information and the second captured user interface information, to automatically locate the user interface element.

2. The method of claim 1 , further comprising performing, during the subsequent execution of the scenario, an action on the located user interface element.

3. The method of claim 1 , further comprising updating the master frame based on the second captured user interface information.

4. The method of claim 1 , wherein the recovery strategy is a tree localization strategy that comprises automatically locating the user interface element in the second captured user interface information at a same relative position as a corresponding user interface element in the first captured user interface information.

5. The method of claim 1 , wherein the recovery strategy is a multiple attribute strategy that comprises locating the user interface element by determining that the user interface element is a closest match for same-attribute values to a corresponding user interface element in the first captured user interface information.

6. The method of claim 1 , wherein the recover strategy is a visual positioning strategy that comprises locating the user interface element by determining that the user interface element is at a same visual position in the second captured user interface information as a corresponding user interface element in the first captured user interface information.

7. The method of claim 6 , further comprising creating an artificial intelligence model and using the artificial intelligence model to automatically identify different types of user interface elements.

8. The method of claim 1 , wherein the scenario is based on a scenario description document written in a human-readable language.

9. The method of claim 8 , wherein the master frame maps user interface elements and associated actions in the scenario description document to the first captured user interface information.

10. The method of claim 1 , wherein the first captured user interface information includes document object model properties and screen coordinates of user interface elements of the application.

11. A system comprising:

one or more computers; and

a computer-readable medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

accessing master frame information for a user interface of an application, the master frame information including first captured user interface information captured during a first execution of a scenario for the application;

performing a subsequent execution of the scenario, including capturing second captured user interface information;

determining that the subsequent execution of the scenario has not passed successfully;

in response to determining that the subsequent execution of the scenario has not passed successfully, determining that the subsequent execution of the scenario has failed due to a non-functional error;

determining that the non-functional error is based on a failure to locate a user interface element specified in the master frame; and

performing a recovery strategy, using the first captured user interface information and the second captured user interface information, to automatically locate the user interface element.

12. The system of claim 11 , wherein the operations further comprise performing, during the subsequent execution of the scenario, an action on the located user interface element.

13. The system of claim 11 , wherein the operations further comprise updating the master frame based on the second captured user interface information.

14. The system of claim 11 , wherein the recovery strategy is a tree localization strategy that comprises automatically locating the user interface element in the second captured user interface information at a same relative position as a corresponding user interface element in the first captured user interface information.

15. The system of claim 11 , wherein the recovery strategy is a multiple attribute strategy that comprises locating the user interface element by determining that the user interface element is a closest match for same-attribute values to a corresponding user interface element in the first captured user interface information.

16. A computer program product encoded on a non-transitory storage medium, the product comprising non-transitory, computer readable instructions for causing one or more processors to perform operations comprising:

accessing master frame information for a user interface of an application, the master frame information including first captured user interface information captured during a first execution of a scenario for the application;

performing a subsequent execution of the scenario, including capturing second captured user interface information;

determining that the subsequent execution of the scenario has not passed successfully;

in response to determining that the subsequent execution of the scenario has not passed successfully, determining that the subsequent execution of the scenario has failed due to a non-functional error;

determining that the non-functional error is based on a failure to locate a user interface element specified in the master frame; and

performing a recovery strategy, using the first captured user interface information and the second captured user interface information, to automatically locate the user interface element.

17. The computer program product of claim 16 , wherein the operations further comprise performing, during the subsequent execution of the scenario, an action on the located user interface element.

18. The computer program product of claim 16 , wherein the operations further comprise updating the master frame based on the second captured user interface information.

19. The computer program product of claim 16 , wherein the recovery strategy is a tree localization strategy that comprises automatically locating the user interface element in the second captured user interface information at a same relative position as a corresponding user interface element in the first captured user interface information.

20. The computer program product of claim 16 , wherein the recovery strategy is a multiple attribute strategy that comprises locating the user interface element by determining that the user interface element is a closest match for same-attribute values to a corresponding user interface element in the first captured user interface information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2019
From: FERNANDES, WARREN MARK; RASHID, MOHAMMAD SAAD; DANTHALAPELLI, SAI PHANI SHARATH CHANDRA; SAXENA, SONAM; SINGH, MITHILESH KUMAR
To: SAP SE
Reel/Frame 048250/0151 →
Continuity (1)
Related Publication 20200249964A1 · Aug 6, 2020
Cited By (2)
US 12,340,547 US 12,619,342