IP Library Granted Patent US 10,339,485
Granted Patent B2
US 10,339,485 · App. 13/715,206 · Granted Jul 2, 2019

Efficiently generating test cases

Inventors: Satish Chandra (Bangalore, IN); Kommineni Vasanta Lakshmi (Bangalore, IN); Nishant Sinha (Bangalore, IN); Saurabh Sinha (Karnataka, IN); Suresh Thummalapenta (Bangalore, IN); Anand Krishna Vaishampayan (Indiranagar, IN)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06Q10/0637G06F9/44G06F9/46G06F11/3672G06F11/3604
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,339,485
App. No.
13/715,206
Granted
Jul 2, 2019
Kind
B2
Abstract

Techniques, an apparatus and computer program product for generating test cases for covering enterprise rules and predicates are disclosed by receiving data associated with at least one of a business requirement and a business scenario as input, wherein the data comprise at least one of a set of predefined rules; based on the data, generating at least one or more test cases as output without any human intervention, wherein the output comprises a test script for the business requirement or the business scenario, and wherein the data associated with the at least one of a business requirement and a business scenario comprise at least one of a business rule, business requirement and predicate, the data associated with the at least one of business requirement and business scenario are stored as a linked graph in a repository, and wherein each node of the linked graph is mapped to previously stored data in the repository, wherein the repository comprises either one of a structured or unstructured data, and the data are obtained from the requirement specifications.

Claims (38)

1. A method for test case creation, the method comprising:

utilizing at least one processor to execute computer code configured to perform the steps of:

generating at least one test case for testing an application, wherein the application comprises a web-based application and wherein the generating comprises:

receiving, as input, data corresponding to an application, wherein the data further comprises at least one of a business requirement and a business scenario as at least one of a set of predefined rules;

generating a link graph based upon the data, wherein the link graph comprises nodes representing pages of the application and edges representing possible navigations between pages of the application, wherein traversal of a path through nodes and edges of the link graph triggers an antecedent of one of the set of predefined rules and identifies consequent variables of the one of the set of predefined rules;

the generating a link graph comprising generating a static link graph and a dynamic link graph, wherein the static link graph identifies files referenced or included in the files of the application related to the one of the set of predefined rules and are identified from a shallow scan of the pages of the application and wherein the dynamic link graph is generated by dynamically exploring navigational elements within the application and identifies navigation edges and corresponding pages of the application within the application;

storing the link graph in a repository, wherein each node of the link graph is mapped to previously stored data in the repository, wherein the previously stored data comprises at least one rule corresponding to the at least one of a set of predefined rules; and

using the link graph, generating at least one or more test cases for the application as output, wherein the output comprises a test script for the application that conforms to the at least one of the business requirement and the business scenario, wherein the generating comprises identifying at least one path through the link graph that covers the at least one of a set of predefined rules and driving testing of the application along the at least one path; and

testing the web-based application by implementing the generated at least one test case.

2. The method as claimed in claim 1 , wherein the data associated with the at least one business requirement and a business scenario comprise at least one of a business rule, business requirement, and predicate.

3. The method as claimed in claim 1 , wherein the repository comprises either one of structured or unstructured data.

4. The method as claimed in claim 1 , wherein the data are obtained from the requirement specifications.

5. The method as claimed in claim 1 , wherein the data are mapped with historical data available in the public domain to create nodes in the link graph.

6. The method as claimed in claim 1 , wherein the data include an antecedent, a consequent, and one or more invariant conditions.

7. The method as claimed in claim 6 , wherein the antecedent, the consequent, and the one or more invariant conditions are stated in a vocabulary of one or more enterprise rule variables.

8. A system comprising at least a processor and a memory, the system configured for creation of test cases, wherein the system:

generates at least one test case for testing an application, wherein the application comprises a web-based application and wherein the system in generating:

receives, as input, data corresponding to an application, wherein the data further comprises at least one of a business requirement and a business scenario as at least one of a set of predefined rules;

generates a link graph based upon the data, wherein the link graph comprises nodes representing pages of the application and edges representing possible navigations between pages of the application, wherein traversal of a path through nodes and edges of the link graph triggers an antecedent of one of the set of predefined rules and identifies consequent variables of the one of the set of predefined rules;

the generating a link graph comprising generating a static link graph and a dynamic link graph, wherein the static link graph identifies files referenced or included in the files of the application related to the one of the set of predefined rules and are identified from a shallow scan of the pages of the application and wherein the dynamic link graph is generated by dynamically exploring navigational elements within the application and identifies navigation edges and corresponding pages of the application within the application;

storing the link graph in a repository, wherein each node of the link graph is mapped to previously stored data in the repository, wherein the previously stored data comprises at least one rule corresponding to the at least one of a set of predefined rules; and

using the link graph, generating at least one or more test cases for the application as output, wherein the output comprises a test script for the application that conforms to the at least one of the business requirement and the business scenario, wherein the generating comprises identifying at least one path through the link graph that covers the at least one of a set of predefined rules and driving testing of the application along the at least one path; and

tests the web-based application by implementing the generated at least one test case.

9. The system as claimed in claim 8 , wherein the data associated with the at least one business requirement and a business scenario comprise at least one of a business rule, business requirement, and predicate.

10. The system as claimed in claim 8 , wherein the repository comprises either one of structured or unstructured data.

11. The system as claimed in claim 8 , wherein the data are obtained from the requirement specifications.

12. The system as claimed in claim 8 , wherein the data are mapped with historical data available in the public domain to create nodes in the link graph.

13. The system as claimed in claim 8 , wherein the data include an antecedent, a consequent, and one or more invariant conditions.

14. The system as claimed in claim 13 , wherein the antecedent, the consequent, and the one or more invariant conditions are stated in a vocabulary of one or more enterprise rule variables.

15. A computer program product in a non-transitory computer-readable storage medium for use in a data processing system, the computer program product holding computer program instructions which, when executed by the data processing system perform a method for test case creation, the method comprising:

generating at least one test case for testing an application, wherein the application comprises a web-based application and wherein the generating comprises:

receiving, as input, data corresponding to an application, wherein the data further comprises at least one of a business requirement and a business scenario as at least one of a set of predefined rules, wherein the data associated with the at least one business requirement and a business scenario comprise at least one of a business rule, business requirement and predicate;

generating a link graph based upon the data, wherein the link graph comprises nodes representing pages of the application and edges representing possible navigations between pages of the application, wherein traversal of a path through nodes and edges of the link graph triggers an antecedent of one of the set of predefined rules and identifies consequent variables of the one of the set of predefined rules;

the generating a link graph comprising generating a static link graph and a dynamic link graph, wherein the static link graph identifies files referenced or included in the files of the application related to the one of the set of predefined rules and are identified from a shallow scan of the pages of the application and wherein the dynamic link graph is generated by dynamically exploring navigational elements within the application and identifies navigation edges and corresponding pages of the application within the application;

storing the link graph in a repository, wherein each node of the link graph is mapped to previously stored data in the repository, wherein the previously stored data comprises at least one rule corresponding to the at least one of a set of predefined rules and wherein the repository comprises either one of structured or unstructured data; and

using the link graph, generating at least one or more test cases for the application as output without any human intervention, wherein the output comprises a test script for the application that conforms to the at least one of the business requirement and the business scenario, wherein the generating comprises identifying at least one path through the link graph that covers the at least one of a set of predefined rules and driving testing of the application along the at least one path; and

testing the web-based application by implementing the generated at least one test case.

16. The computer program product as claimed in claim 15 , wherein the data are obtained from the requirement specifications, and wherein the data are mapped with historical data available in the public domain to create nodes in the link graph.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2012
From: CHANDRA, SATISH; LAKSHMI, KOMMINENI VASANTA; SINHA, NISHANT; SINHA, SAURABH; THUMMALAPENTA, SURESH; VAISHAMPAYAN, ANAND KRISHNA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029511/0255 →
Continuity (1)
Related Publication 20140172512A1 · Jun 19, 2014