IP Library › Granted Patent US 9,323,649
Granted Patent B2
US 9,323,649 · App. 14/040,906 · Granted Apr 26, 2016

Detecting error states when interacting with web applications

Inventors: Evgeny Beskrovny (Ramat Gan, IL); Omer Tripp (Bronx, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F11/3672G06F11/3664G06F11/3692
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,323,649
App. No.
14/040,906
Filed
Sep 30, 2013
Granted
Apr 26, 2016
Kind
B2
Art Unit
2113
USPC
714/38.14
Abstract

Detecting error states when interacting with web applications is performed by accessing a first web page of a web application, determining that the first web page includes an input validation operation, configuring an input to cause the input validation operation to effect an error state, providing the input to the first web page, thereby effecting the error state, identifying a feature that is absent from the first web page before the input is provided to the first web page and present in the first web page after the input is provided to the first web page, and detecting that a second web page of the web application is in an error state if the feature is present in the second web page.

Claims (67)

1. A method for detecting error states when interacting with web applications, the method comprising:

accessing a first web page of a web application;

determining that the first web page includes an input validation operation;

configuring an input to cause the input validation operation to effect an error state;

providing the input to the first web page, thereby effecting the error state;

identifying a feature that is

absent from the first web page before the input is provided to the first web page, and

present in the first web page after the input is provided to the first web page;

detecting that a second web page of the web application is in an error state if the feature is present in the second web page; and

providing one or more different inputs to the second web page until the feature is absent from the second web page, thereby bypassing the error state.

2. The method according to claim 1 and further comprising crawling the web application while performing any of the accessing, determining, configuring, providing, identifying, and detecting.

3. The method according to claim 1 and further comprising randomly configuring the different inputs.

4. The method according to claim 1 and further comprising:

analyzing the input validation operation to identify a characteristic of the input validation operation; and

configuring any of different inputs based on the characteristic.

5. The method according to claim 1 wherein the determining comprises determining by statically analyzing software instructions within the first web page.

6. The method according to claim 1 and further comprising:

performing the accessing, determining, configuring, providing, and identifying on a plurality of web pages of the web application; and

determining as a common feature any feature identified during the identifying that is common to a predefined number or percentage of the plurality of web pages,

wherein the detecting comprises detecting that the second web page of the web application is in an error state if the common feature is present in the second web page.

7. The method according to claim 1 wherein the accessing, determining, configuring, providing, identifying, and detecting steps are implemented in any of

computer hardware configured to perform the steps, and

computer software configured to perform the steps and embodied in a non-transitory, computer-readable storage medium.

8. A system for detecting error states when interacting with web applications, the system comprising:

a web application analyzer configured to

access a first web page of a web application, and

determine that the first web page includes an input validation operation;

a web application tester configured to

configure an input to cause the input validation operation to effect an error state, and

provide the input to the first web page, thereby effecting the error state; and

and error state detector configured to

identify a feature that is

absent from the first web page before the input is provided to the first web page, and

present in the first web page after the input is provided to the first web page,

detect that a second web page of the web application is in an error state if the feature is present in the second web page; and

providing one or more different inputs to the second web page until the feature is absent from the second web page, thereby bypassing the error state.

9. The system according to claim 8 and further comprising a crawler configured to crawl the web application and provide at least one of the web application analyzer, the web application tester, and the error state detector with access to at least one of the web pages.

10. The system according to claim 8 wherein at least one of the web application analyzer, the web application tester, and the error state detector is embodied in a crawler configured to crawl the web application.

11. The system according to claim 8 wherein the web application tester is configured to randomly configure the different inputs.

12. The system according to claim 8

wherein the web application analyzer is configured to analyze the input validation operation to identify a characteristic of the input validation operation, and

wherein the web application tester is configured to configure any of different inputs based on the characteristic.

13. The system according to claim 8 wherein the web application analyzer is configured to determine that the first web page includes an input validation operation by statically analyzing software instructions within the first web page.

14. The system according to claim 8

wherein the web application analyzer, the web application tester, and the error state detector are configured to process a plurality of web pages of the web application, and

wherein the error state detector is configured to

determine as a common feature at least one feature identified by the error state detector in the plurality of web pages that is common to a predefined number or percentage of the plurality of web pages, and

detecting that the second web page of the web application is in an error state if the common feature is present in the second web page.

15. The system according to claim 8 wherein the web application analyzer, the web application tester, and the error state detector are implemented in any of

computer hardware, and

computer software embodied in a non-transitory, computer-readable storage medium.

16. A computer program product for detecting error pages when interacting with web applications, the computer program product comprising:

a non-transitory, computer-readable storage medium; and

computer-readable program code embodied in the computer-readable storage medium, wherein when executed by a computer the computer-readable program code is configured to

access a first web page of a web application,

determine that the first web page includes an input validation operation,

configure an input to cause the input validation operation to effect an error state,

provide the input to the first web page, thereby effecting the error state,

identify a feature that is

absent from the first web page before the input is provided to the first web page, and

present in the first web page after the input is provided to the first web page,

detect that a second web page of the web application is in an error state if the feature is present in the second web page; and

providing one or more different inputs to the second web page until the feature is absent from the second web page, thereby bypassing the error state.

17. The computer program product according to claim 16 wherein the computer-readable program code is configured to

perform the accessing, determining, configuring, providing, and identifying on a plurality of web pages of the web application,

determine as a common feature any of the features that is common to a predefined number or percentage of the plurality of web pages, and

detect that the second web page of the web application is in an error state if the common feature is present in the second web page.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2013
From: BESKROVNY, EVGENY; TRIPP, OMER
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031307/0101 →
Continuity (1)
Related Publication 20150095721A1 · Apr 2, 2015