Method and framework for test case management
First Claim
1. A computer-implemented method for testing software applications using a plurality of test cases representing different practical scenarios, comprising:
- reading, by the computer, object data defining a plurality of test cases, each test case identifying unique object(s) corresponding to the test case, each test case further identifying central test activities to be performed by a test program upon all objects of the test cases and individual test activities to be performed by the test program upon the objects corresponding to the respective test case, execution of each individual test activity within a specific test case being independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases;
scheduling, by the computer, execution of the central test activities and the individual test activities by;
scheduling execution of central test activities of a first set of test cases;
scheduling execution of the individual test activities of the first set of test cases according to their positions with respect to the central test activities within the respective the first set of test cases, wherein execution of an individual test activity of a first test case within the first set of test cases occurs concurrently with execution of another individual test activity of a second test case within the first set of test cases;
scheduling execution of central test activities of a second set of test cases;
scheduling execution of the individual test activities of the second set of test cases according to their positions with respect to the central test activities within the respective the second set of test cases, wherein execution of an individual test activity of a first test case within the second set of test cases occurs concurrently with execution of another individual test activity of a second test case within the second set of test cases; and
executing the central test activities and the individual test activities of the first set of test cases as scheduled; and
executing the central test activities and the individual test activities of the second set of test cases as scheduled,wherein each central test activity is only executed once at a synchronization point for all of concurrently executing test cases.
2 Assignments
0 Petitions
Accused Products
Abstract
In accordance with an embodiment of the present invention, a method may include obtaining a list of active life cycle test objects in a test run from a life cycle test object controller, and obtaining a list of active central activity test objects in the test run from a central activity test object controller. While a test period remains in the test run, the method may continue selecting a next test period, requesting the test step initialization controller initialize the next test period, requesting all central activity test objects associated with the next test period to execute their beginning central activities, requesting all life cycle test objects associated with the next test period to execute their test activities, and requesting all central activity test objects associated with the next test period to execute their ending central activities.
-
Citations
59 Claims
-
1. A computer-implemented method for testing software applications using a plurality of test cases representing different practical scenarios, comprising:
-
reading, by the computer, object data defining a plurality of test cases, each test case identifying unique object(s) corresponding to the test case, each test case further identifying central test activities to be performed by a test program upon all objects of the test cases and individual test activities to be performed by the test program upon the objects corresponding to the respective test case, execution of each individual test activity within a specific test case being independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases; scheduling, by the computer, execution of the central test activities and the individual test activities by; scheduling execution of central test activities of a first set of test cases; scheduling execution of the individual test activities of the first set of test cases according to their positions with respect to the central test activities within the respective the first set of test cases, wherein execution of an individual test activity of a first test case within the first set of test cases occurs concurrently with execution of another individual test activity of a second test case within the first set of test cases; scheduling execution of central test activities of a second set of test cases; scheduling execution of the individual test activities of the second set of test cases according to their positions with respect to the central test activities within the respective the second set of test cases, wherein execution of an individual test activity of a first test case within the second set of test cases occurs concurrently with execution of another individual test activity of a second test case within the second set of test cases; and executing the central test activities and the individual test activities of the first set of test cases as scheduled; and executing the central test activities and the individual test activities of the second set of test cases as scheduled, wherein each central test activity is only executed once at a synchronization point for all of concurrently executing test cases. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A non-transitory machine-readable medium having stored thereon a plurality of executable instructions to perform a method for testing software applications using a plurality of test cases representing different practice scenarios, comprising:
-
reading object data defining a plurality of test cases, each test case identifying unique object(s) corresponding to the test case, each test case further identifying central test activities to be performed by a test program upon all objects of the test cases and individual test activities to be performed by the test program upon the objects corresponding to the respective test case, execution of each individual test activity within a specific test case being independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases; scheduling, by the computer, execution of the central test activities and the individual test activities by; scheduling execution of central test activities of a first set of test cases; scheduling execution of the individual test activities for the first set of test cases according to their positions with respect to the central test activities within the respective the first set of test cases, wherein execution of an individual test activity of a first test case within the first set of test cases occurs concurrently with execution of another individual test activity of a second test case within the first set of test cases; scheduling execution of central test activities of a second set of test cases; scheduling execution of the individual test activities of the second set of test cases according to their positions with respect to the central test activities within the respective the second set of test cases, wherein execution of an individual test activity of a first test case within the second set of test cases occurs concurrently with execution of another individual test activity of a second test case within the second set of test cases; and executing the central test activities and the individual test activities of the first set of test cases as scheduled; and executing the central test activities and the individual test activities of the second set of test cases as scheduled, wherein each central test activity is only executed once at a synchronization point for all of the concurrently executing test cases. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A non-transitory machine-readable medium having stored thereon a plurality of executable instructions encoding a test framework, the test framework comprising:
-
a test run controller; at least one life cycle test object registered to the test run controller, wherein each of the at least one life cycle test object is independent of any other, each life cycle test object including at least one life cycle test object activity to be executed during a predetermined test period; a life cycle test object controller registered to the test run controller and the at least one life cycle test object, the life cycle test object controller to maintain a list of the at least one life cycle test object; at least one central activity test object registered to the test run controller, each central activity test object to be executed during a test period without any life cycle test object activities being executed; a central activity test object controller registered to the test run controller and the at least one central activity test object, the central activity test object controller to maintain a list of the at least one central activity test object; a test period initialization controller registered to the test run controller, the test period initialization controller to read object data defining a plurality of test cases, each test case identifying unique object(s) corresponding to the test case, each test case further identifying the at least one life cycle object corresponding individual test activities and the at least one central activity test object corresponding central test activities to be performed by the test run controller upon all objects of the test cases, and to schedule execution of the central test activities and the individual test activities, wherein execution of an individual test activity of a first test case occurs concurrently with execution of another individual test activity of a second test case; an application to be tested, the application connected to the test period initialization controller, the at least one life cycle test object and the at least one central activity test object; and a test result controller to receive results from the test run controller, the life cycle test object controller, the central activity test object controller, the test period initialization controller, the at least one life cycle test object, and the at least one central activity test object, wherein execution of each individual test activity within a specific test case is independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases, and wherein the each central test activity is only executed once at a synchronization point for all concurrently executing test cases. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52)
-
-
53. A non-transitory computer-readable medium having stored thereon a plurality of executable instructions to perform a method of managing operations of a test program to test functionality of an application program, comprising:
-
reading, by the computer, object data defining a plurality of test cases, wherein the object data is a data structure comprising fields for; a plurality of test cases, each test case identifying object(s) managed by the computer application to which the respective test case relates, each test case storing; first fields for storage of identifiers representing central test activities common to all the test cases, the central test activity identifiers identifying respective test operations to be performed by the test program upon all objects of the test cases, the first fields identifying a time when the respective central test operation is to be performed during execution of the test cases; second fields for storage of identifiers representing individual test activities unique to the respective test case, the individual test activity identifiers identifying respective test operations to be performed by the test program upon the objects of the respective test case, the second fields identifying a time when the respective individual test activity is to be performed during execution of the respective test cases, scheduling, by the computer, execution of the central test activities and the individual test activities by; scheduling execution of the central test activities upon the objects of all the test cases to occur simultaneously, scheduling execution of the individual test activities of the respective test cases according to their position with respect to the central test activities within the respective test cases, wherein execution of an individual test activity of a first test case occurs concurrently with execution of another individual test activity of a second test case, wherein execution of each individual test activity within a specific test case is independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases, and executing the central test activities and the individual test activities as scheduled, wherein each central test activity is only executed once at a synchronization point for all of the concurrently executing test cases.
-
-
54. A computer-implemented method of managing operations of a test program to test functionality of an application program, comprising:
-
reading, by the computer, object data defining a plurality of test cases, each test case identifying unique object(s) corresponding to the test case, each test case further identifying central test activities to be performed by the test program upon all objects of the test cases and individual test activities to be performed by the test program upon the objects corresponding to the respective test case, execution of each individual test activity within a specific test case being independent of execution of individual test activities of any other test cases so that an addition of a new test case does not affect any existing test cases; scheduling, by the computer, execution of the central test activities and the individual test activities by; scheduling execution of the central test activities upon the objects of all the test cases to occur simultaneously, scheduling execution of the individual test activities of the respective test cases according to their position with respect to the central test activities within the respective test cases, wherein execution of an individual test activity of a first test case occurs concurrently with execution of another individual test activity of a second test case; and executing the central test activities and the individual test activities as scheduled, wherein each central test activity is only executed once at a synchronization point for all of the concurrently executing test cases. - View Dependent Claims (55, 56, 57, 58, 59)
-
Specification