IP Library Granted Patent US 8,543,980
Granted Patent B2
US 8,543,980 · App. 12/861,794 · Granted Sep 24, 2013

State driven testing

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 8,543,980
App. No.
12/861,794
Granted
Sep 24, 2013
Kind
B2
Abstract

Software testers can generate test scripts for validating and verifying software without navigating all possible actions or keywords. The current application state is described with one or more test objects. Each test object has one or more associated test methods and each test method can describe one or more state transitions. Only test methods accessible through test objects in the current application state are displayed to the software tester. The current state changes only if the state transition described by the test method selected by the software tester indicates a change from the current state.

Claims (17)

1. A method for testing software comprising: a processor in communication with a database, the processor configured for: providing a current state, a plurality of test objects, and a plurality of test methods, wherein the current state includes a first set of test objects that has at least one test object, the test methods can be associated with one or more state transitions, and each test method is associated with one test object; identifying each test method associated with at least one test object included within the first set of test objects; obtaining input that selects a test method; modifying the current state if the selected test method is associated with a state transition that results in a state different from the current state, the modified current state including a second set of test objects that has at least one test object, wherein at least one test object is not included in both the first set of test objects and the second set of test objects; identifying each test method associated with at least one test object included within the second set of test objects; and generating a test script that executes the software.

2. The method of claim 1 , wherein the processor is further configured for: if the first set of test objects includes more than one test object, obtaining input that selects one of the test objects, and wherein for the identifying each test method associated with the at least one test object included within the first set of test objects, the at least one test object is the selected test object.

3. The method of claim 1 , wherein the identifying each test method associated with at least one test object included within the first set of test objects includes identifying each test methods associated with all test objects within the first set of test objects.

4. The method of claim 1 , wherein the test script describes both test methods and test objects.

5. The method of claim 1 , wherein the processor is further configured for maintaining an application state stack of consecutive states.

6. The method of claim 1 , wherein the plurality of test objects and the plurality of test methods with their associated state transitions represents the test framework, which describes all possible navigation through the software.

7. The method of claim 6 , wherein the current state can include multiple aspects and further comprising obtaining user input to select one of the multiple aspects.

8. The method of claim 7 , wherein the subset of available actions that is dependent on the current state is also dependant on the selected aspect.

9. The method of claim 6 , further comprising maintaining an application state stack of consecutive states.

10. A method for testing software comprising a processor in communication with a database, the processor configured for: providing a current state and a plurality of actions, at least a portion of the actions are each associated with state transitions; presenting a user with a subset of available actions, the subset of available actions being dependent on the current state; obtaining user input to select an action from the subset of available actions; modifying the current state if the selected action is associated with a state transition; presenting a user with a modified subset of available actions, the modified subset of available actions being dependent on the modified current state; and generating a test script that executes the software.

11. A computer program product embodied in a computer readable medium in communication with a processor and a database and comprising computer instructions for: providing a current state and a plurality of actions, at least a portion of the actions are each associated with state transitions; presenting a user with a subset of available actions, the subset of available actions being dependent on the current state; obtaining user input to select an action from the subset of available actions; modifying the current state if the selected action is associated with a state transition; presenting a user with a modified subset of available actions, the modified subset of available actions being dependent on the modified current state;

and generating a test script that executes the software.

12. The computer program product of claim 11 , wherein the current state can include multiple aspects and further comprising obtaining user input to select one of the multiple aspects.

13. The computer program product of claim 12 , wherein the subset of available actions that is dependent on the current state is also dependant on the selected aspect.

14. The computer program product of claim 11 , further comprising maintaining an application state stack of consecutive states.

15. A system comprising: a memory configured to store application states, test objects and test methods and their relationships; and a processor configured to generate a test script in response to a user selecting a test method from a subset of accessible test methods, the subset of accessible test methods being determined by the relationship between the test methods, the test objects and the application states.

16. The system of claim 15 , wherein the processor is further configured to maintain an application state stack and modify the application state stack in response to the selection of test methods.

Assignments (7)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2010
From: AMBICHL, ERNST, DR.; STRASSER, DIETMAR
To: MICRO FOCUS (US), INC.
Reel/Frame 024901/0013 →