IP Library Granted Patent US 11,120,213
Granted Patent B2
US 11,120,213 · App. 15/879,897 · Granted Sep 14, 2021

Intelligent verification of presentation of a user interface

Inventors: Lucy Shang (Palo Alto, CA); Daniel Ni (Beijing, CN); Zhenjun Zhuo (Beijing, CN); Zohar Hirshfeld (Palo Alto, CA); Jim Peng (Palo Alto, CA)
Assignee: VMWARE, INC.
G06F40/197G06F9/45529G06F16/986G06F40/106G06F40/226G06F40/58G06K9/00469
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 11,120,213
App. No.
15/879,897
Granted
Sep 14, 2021
Kind
B2
Abstract

Various examples for performing an intelligent verification of a user interface to be rendered or otherwise presented, for instance, in a display of a client device are described. A web server can simulate, for at least one of a plurality of geographic locations, a rendering of a web page using hypertext markup language (HTML) for various geographic locations, where the rendering of the web page is simulated using a corresponding language. The web server can identify an anomaly in at least a portion of the web page as rendered based on a user interface verification rule stored in a data store. The web server can perform a remedial action based at least in part on a type of the anomaly identified.

Claims (64)

1. A system for performing an intelligent verification of a display of a user interface, comprising:

at least one computing device comprising at least one processor; and

program instructions in the at least one computing device that, when executed by the at least one processor of the at least one computing device, cause the at least one computing device to:

for at least one of a plurality of geographic locations, simulate a rendering of a web page using hypertext markup language (HTML) for the at least one of the plurality of geographic locations, wherein rendering of the web page comprises geographic location spoofing for a virtual machine to render the web page corresponding to a spoofed geographic location of the of the virtual machine, wherein the rendering of the web page is simulated to include translated content using a language corresponding to the spoofed geographic location;

identify an anomaly that causes the translated content to expand beyond an intended region of the web page as rendered, wherein the anomaly is identified based in least in part on an inconsistency between an actual size of the translated content of the web page as rendered, and a size of the intended region that is indicated by a user interface verification rule stored in a data store corresponding to the spoofed geographic location, wherein the user interface verification rule defines an intended size of an amount of text or a container in the web page as rendered, the anomaly comprises the amount of text or the container in the web page as rendered not matching the intended size, and the anomaly is identified based at least in part on a pixel analysis of the amount of text or the container in the web page as rendered;

in response to the anomaly being identified in the web page, determine a remedial action based at least in part on a type of the anomaly identified; and

perform the remedial action on the at least one computing device.

2. The system of claim 1 , further comprising program instructions executable in the at least one computing device that, when executed by the at least one computing device, cause the at least one computing device to:

translate text stored in the data store to be dynamically included in the web page from a first language to a second language using a machine-translation service; and

including the text as translated to the second language in the web page as rendered.

3. The system of claim 1 , wherein:

the user interface verification rule defines a proper display of a date or a time corresponding to the at least one of the plurality of geographic locations;

the anomaly comprises an improper display of the date or time in the web page as rendered determined based at least in part on the at least one of the plurality of geographic locations; and

the anomaly is identified based at least in part on a regular expression matching of the date or the time as rendered as compared to the date or the time as stored in a data store.

4. The system of claim 1 , wherein:

the user interface verification rule defines a proper display of a monetary amount corresponding to the at least one of the plurality of geographic locations;

the anomaly comprises an improper display of the monetary amount in the web page as rendered; and

the anomaly is identified based at least in part on a regular expression matching of the monetary amount as rendered as compared to the monetary amount as stored in a data store.

5. The system of claim 1 , wherein the user interface verification rule is associated with a particular content category of the translated content.

6. The system of claim 1 , wherein:

the user interface verification rule defines an intended display of an amount of text in the web page as rendered;

the anomaly comprises the amount of text not matching the intended display; and

the anomaly is identified based at least in part on a string comparison performed between the amount of text identified from the web page as rendered and the amount of text as stored in the data store.

7. The system of claim 1 , wherein the rendering of the web page is simulated in the virtual machine, wherein the virtual machine is configured to comprise one of a plurality of web browser applications, one of a plurality of operating systems, a display resolution, and at least one language preference.

8. A non-transitory computer-readable medium for performing an intelligent verification of a display of a user interface embodying program instructions in a client device that, when executed by the client device, cause the client device to:

for at least one of a plurality of geographic locations, simulate a rendering of a web page using hypertext markup language (HTML) for the at least one of the plurality of geographic locations, wherein rendering of the web page comprises geographic location spoofing for a virtual machine to render the web page corresponding to a spoofed geographic location of the of the virtual machine, wherein the rendering of the web page is simulated to include translated content using a language corresponding to the spoofed geographic location;

identify an anomaly that causes the translated content to expand beyond an intended region of the web page as rendered, wherein the anomaly is identified based in least in part on an inconsistency between an actual size of the translated content of the web page as rendered, and a size of the intended region that is indicated by a user interface verification rule stored in a data store corresponding to the spoofed geographic location, wherein the user interface verification rule defines an intended size of an amount of text or a container in the web page as rendered, the anomaly comprises the amount of text or the container in the web page as rendered not matching the intended size, and the anomaly is identified based at least in part on a pixel analysis of the amount of text or the container in the web page as rendered;

in response to the anomaly being identified in the web page, determine a remedial action based at least in part on a type of the anomaly identified; and

perform the remedial action on the at least one computing device.

9. The non-transitory computer-readable medium of claim 8 , further comprising program instructions executable in the at least one computing device that, when executed by the at least one computing device, cause the at least one computing device to:

translate text stored in the data store to be dynamically included in the web page from a first language to a second language using a machine-translation service; and

including the text as translated to the second language in the web page as rendered.

10. The non-transitory computer-readable medium of claim 8 , wherein:

the user interface verification rule defines a proper display of a date or a time corresponding to the at least one of the plurality of geographic locations;

the anomaly comprises an improper display of the date or time in the web page as rendered determined based at least in part on the at least one of the plurality of geographic locations; and

the anomaly is identified based at least in part on a regular expression matching of the date or the time as rendered as compared to the date or the time as stored in a data store.

11. The non-transitory computer-readable medium of claim 8 , wherein:

the user interface verification rule defines a proper display of a monetary amount corresponding to the at least one of the plurality of geographic locations;

the anomaly comprises an improper display of the monetary amount in the web page as rendered; and

the anomaly is identified based at least in part on a regular expression matching of the monetary amount as rendered as compared to the monetary amount as stored in a data store.

12. The non-transitory computer-readable medium of claim 8 , wherein the user interface verification rule is associated with a particular content category of the translated content.

13. The non-transitory computer-readable medium of claim 8 , wherein:

the user interface verification rule defines an intended display of an amount of text in the web page as rendered;

the anomaly comprises the amount of text not matching the intended display; and

the anomaly is identified based at least in part on a string comparison performed between the amount of text identified from the web page as rendered and the amount of text as stored in the data store.

14. The non-transitory computer-readable medium of claim 8 , wherein the rendering of the web page is simulated in the virtual machine, wherein the virtual machine is configured to comprise one of a plurality of web browser applications, one of a plurality of operating systems, a display resolution, and at least one language preference.

15. A computer-implemented method for performing an intelligent verification of a display of a user interface, comprising:

simulating, for at least one of a plurality of geographic locations, a rendering of a web page using hypertext markup language (HTML) for the at least one of the plurality of geographic locations, wherein rendering of the web page comprises geographic location spoofing for a virtual machine to render the web page corresponding to a spoofed geographic location of the of the virtual machine, wherein the rendering of the web page is simulated to include translated content using a language corresponding to the spoofed geographic location;

identifying an anomaly that causes the translated content to expand beyond an intended region of the web page as rendered, wherein the anomaly is identified based in least in part on an inconsistency between an actual size of the translated content of the web page as rendered, and a size of the intended region that is indicated by a user interface verification rule stored in a data store corresponding to the spoofed geographic location, wherein the user interface verification rule defines a proper display of a date or a time corresponding to the at least one of the plurality of geographic locations, the anomaly comprises an improper display of the date or time in the web page as rendered determined based at least in part on the at least one of the plurality of geographic locations, and the anomaly is identified based at least in part on a regular expression matching of the date or the time as rendered as compared to the date or the time as stored in a data store;

in response to the anomaly being identified in the web page, determining a remedial action based at least in part on a type of the anomaly identified; and

performing the remedial action on the at least one computing device.

16. The computer-implemented method of claim 15 , further comprising:

translating text stored in the data store to be dynamically included in the web page from a first language to a second language using a machine-translation service; and

including the text as translated to the second language in the web page as rendered.

17. The computer-implemented method of claim 15 , wherein the user interface verification rule is associated with a particular content category of the translated content.

18. The computer-implemented method of claim 15 , wherein:

the user interface verification rule defines a proper display of a monetary amount corresponding to the at least one of the plurality of geographic locations;

the anomaly comprises an improper display of the monetary amount in the web page as rendered; and

the anomaly is identified based at least in part on a regular expression matching of the monetary amount as rendered as compared to the monetary amount as stored in a data store.

19. The computer-implemented method of claim 15 , wherein:

the user interface verification rule defines an intended size of an amount of text or a container in the web page as rendered;

the anomaly comprises the amount of text or the container in the web page as rendered not matching the intended size; and

the anomaly is identified based at least in part on a pixel analysis of the amount of text or the container in the web page as rendered.

20. The computer-implemented method of claim 15 , wherein the rendering of the web page is simulated in the virtual machine, wherein the virtual machine is configured to comprise one of a plurality of web browser applications, one of a plurality of operating systems, a display resolution, and at least one language preference.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2018
From: SHANG, LUCY; LI, DANIEL; ZHUO, ZHENJUN; HIRSHFELD, ZOHAR; PENG, JIM
To: VMWARE, INC.
Reel/Frame 044762/0592 →