Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
206 words
In a computer system comprising a software interface having a plurality of procedures and corresponding test functions for testing said procedures, a method for automatically generating a test driver for executing said test functions in sequence, said method comprising the steps of: a) declaring at least one local variable to be used by said test functions for testing said plurality of procedures, wherein said at least one local variable is modified by a first test function in said plurality of functions and said modified local variable is used by a second test function in said plurality of functions, and expressing formally sequential execution order of said test functions using said at least one local variable; b) specifying assignable attribute values selected for each of said test function parameter attributes, said test functions comprising a plurality of parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked; and c) generating said test driver based on said local variable declaration and said formally expressed sequential execution order of said test functions and said specified assignable attribute values, said generated test driver when invoked executes said test functions in said designated order with all combinations of said specified assignable attribute values.
Claim 2
Dependent Claim
206 words
In a computer system comprising a software interface having a plurality of procedures and corresponding test functions for testing said procedures, a method for automatically generating a test driver for executing said test functions in sequence, said method comprising the steps of: a) declaring at least one local variable to be used by said test functions for testing said plurality of procedures, wherein said at least one local variable is modified by a first test function in said plurality of functions and said modified local variable is used by a second test function in said plurality of functions, and expressing formally sequential execution order of said test functions using said at least one local variable; b) specifying assignable attribute values selected for each of said test function parameter attributes, said test functions comprising a plurality of parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked; and c) generating said test driver based on said local variable declaration and said formally expressed sequential execution order of said test functions and said specified assignable attribute values, said generated test driver when invoked executes said test functions in said designated order with all combinations of said specified assignable attribute values.
Claim 3
Dependent Claim
16 words
The method as set forth in claim 1, wherein, said test functions are auto-checking test functions.
Claim 4
Dependent Claim
34 words
The method as set forth in claim 1, wherein, said formally expressed test function execution order and said specified attribute value specifications are augmented by local test variable declarations and supplemental test function definitions.
Claim 5
Dependent Claim
37 words
The method as set forth in claim 1, wherein, said software interface is object oriented, said formally expressed test function execution order and said specified attribute value specifications are augmented by supplemental object type and method definitions.
Claim 6
Dependent Claim
50 words
The method as set forth in claim 1, wherein, said step c) comprises generating an include file for said generated test driver, said include file comprising attribute definitions and user supplied test data creation and deletion function definitions, said include file being included at compilation of said generated test driver.
Claim 7
Dependent Claim
50 words
The method as set forth in claim 1, wherein, said step c) comprises generating test driver functions for said generated test driver, said test driver functions being called by said generated test driver during its execution to provide said generated test driver with a particular combination of said attribute values.
Claim 8
Dependent Claim
77 words
The method as set forth in claim 1, wherein, said step c) comprises the steps of: c.1) parsing and tokenizing said formally expressed test function execution order and said specified attribute value specifications based on a formal grammar; c.2) generating intermediate representations for said formally expressed test function execution order and said specified attribute value specifications, said intermediate representation being a syntax tree; and c.3) generating executable code for said test driver using said generated intermediate representations.
Claim 9
Dependent Claim
189 words
In a computer system comprising a software interface having a plurality of procedures and corresponding test functions for testing said procedures, wherein said test functions comprising a plurality parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked, a method for sequentially executing said test functions in order with pre-selected combinations of said attribute values, said method comprising the steps of: a) creating one of said pre-selected combinations of said attribute values for said test functions; b) creating test data for said created one of said pre-selected combinations of said attribute values; c) evaluating a test expression expressing execution order of said test functions to determine next test functions to be executed; d) executing said next test functions using said created test data; e) repeating said steps c) through d) to execute said test functions in accordance with the execution order expressed by said test expression; f) deleting said test data created for said created one of said pre-selected combinations of said attribute values; and g) repeating said steps a) through f) for each of pre-selected combinations of said attribute values.
Claim 10
Dependent Claim
189 words
In a computer system comprising a software interface having a plurality of procedures and corresponding test functions for testing said procedures, wherein said test functions comprising a plurality parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked, a method for sequentially executing said test functions in order with pre-selected combinations of said attribute values, said method comprising the steps of: a) creating one of said pre-selected combinations of said attribute values for said test functions; b) creating test data for said created one of said pre-selected combinations of said attribute values; c) evaluating a test expression expressing execution order of said test functions to determine next test functions to be executed; d) executing said next test functions using said created test data; e) repeating said steps c) through d) to execute said test functions in accordance with the execution order expressed by said test expression; f) deleting said test data created for said created one of said pre-selected combinations of said attribute values; and g) repeating said steps a) through f) for each of pre-selected combinations of said attribute values.
Claim 11
Dependent Claim
36 words
The method as set forth in claim 8, wherein, said test functions are auto-checking test functions; and said step d) further comprises accumulating execution statistics for said test functions after executing each of said test functions.
Claim 12
Dependent Claim
48 words
The method as set forth in claim 8, wherein, said created one of said pre-selected combinations of said attribute values is created in said step c) by calling test driver functions to provide an assignable attribute value for each of said attributes of said chosen test function's parameters.
Claim 13
Dependent Claim
39 words
The method as set forth in claim 8, wherein, said test data is created and deleted in said steps b) and f) by calling a user supplied test data creation and a user supplied test data deletion function respectively.
Claim 14
Dependent Claim
169 words
In a computer system comprising a software interface having a plurality of procedures, a method for testing said software interface, said method comprising the steps of: a) providing corresponding test functions for each of said procedures; b) formally expressing a sequential execution order of said test functions, and specifying selected combinations of attribute values to be used with said designated order of executing said test functions, said selected combinations of attribute values being selectively assigned to attributes of said test function' parameter attributes when said test functions are invoked to test said procedures in order, said test functions comprising a plurality of parameters having a plurality of attributes; c) generating a test driver that executes said test functions in said expressed execution order with said selected combinations of said attribute values, said test driver calling user supplied test data creation and deletion functions to create and delete test data for each of said selected combinations of said attribute values; and d) providing said test data creation and deletion functions.
Claim 15
Dependent Claim
169 words
In a computer system comprising a software interface having a plurality of procedures, a method for testing said software interface, said method comprising the steps of: a) providing corresponding test functions for each of said procedures; b) formally expressing a sequential execution order of said test functions, and specifying selected combinations of attribute values to be used with said designated order of executing said test functions, said selected combinations of attribute values being selectively assigned to attributes of said test function' parameter attributes when said test functions are invoked to test said procedures in order, said test functions comprising a plurality of parameters having a plurality of attributes; c) generating a test driver that executes said test functions in said expressed execution order with said selected combinations of said attribute values, said test driver calling user supplied test data creation and deletion functions to create and delete test data for each of said selected combinations of said attribute values; and d) providing said test data creation and deletion functions.
Claim 16
Dependent Claim
38 words
The method as set forth in claim 12, wherein, said test functions are auto-checking test functions; and said test driver accumulates test statistics for said selected auto-checking test functions after executing each of said selected auto-checking test functions.
Claim 17
Dependent Claim
232 words
In a computer system comprising a central processing unit (CPU) and a software interface having a plurality of procedures and corresponding test functions for testing said procedures, an apparatus for automatically generating a test driver for sequentially executing said test functions in order, said apparatus comprising: a) designating means comprising said CPU for receiving declaration of at least one local variable that is modified during testing of said procedures, said at least one local variable for facilitating passing of execution results form one test function to another test function evaluating a test expression, and designation formal expression of execution order of said test functions; b) specification means comprising said CPU for receiving specifications of assignable attribute values selected for each of said attributes of said test function' parameter attributes, said test functions comprising a plurality of parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked; and c) generation means coupled to said designation and specification means comprising said CPU for generating said test driver based on said local variable declaration, said designated formal expression of execution order of test functions and said specified assignable attribute values, said generated test driver when invoked executes said designated test functions in accordance with said formally expressed order of execution, with all combinations of said specified assignable attribute values, using said at least one declared local variable.
Claim 18
Dependent Claim
232 words
In a computer system comprising a central processing unit (CPU) and a software interface having a plurality of procedures and corresponding test functions for testing said procedures, an apparatus for automatically generating a test driver for sequentially executing said test functions in order, said apparatus comprising: a) designating means comprising said CPU for receiving declaration of at least one local variable that is modified during testing of said procedures, said at least one local variable for facilitating passing of execution results form one test function to another test function evaluating a test expression, and designation formal expression of execution order of said test functions; b) specification means comprising said CPU for receiving specifications of assignable attribute values selected for each of said attributes of said test function' parameter attributes, said test functions comprising a plurality of parameters having a plurality of attributes, said attributes being assigned attribute values when said test functions are invoked; and c) generation means coupled to said designation and specification means comprising said CPU for generating said test driver based on said local variable declaration, said designated formal expression of execution order of test functions and said specified assignable attribute values, said generated test driver when invoked executes said designated test functions in accordance with said formally expressed order of execution, with all combinations of said specified assignable attribute values, using said at least one declared local variable.
Claim 19
Dependent Claim
16 words
The apparatus as set forth in claim 14, wherein, said test functions are auto-checking test functions.
Claim 20
Dependent Claim
44 words
The apparatus as set forth in claim 14, wherein, said formal test expressions include local test variable declarations; and said designation and specification means are also for receiving supplemental test function definitions to augment some of said test function designations and attribute value specifications.
Claim 21
Dependent Claim
43 words
The apparatus as set forth in claim 14, wherein, said software interface is object oriented, and said designation and specification means are also for receiving supplemental object type and method definitions to augment some of said test function designations and attribute value specifications.
Claim 22
Dependent Claim
52 words
The method as set forth in claim 14, wherein, said generation means is also for generating an include file for said generated test driver, said include file comprising attribute definitions and user supplied test data creation and deletion function definitions, said include file being included at compilation of said generated test driver.
Claim 23
Dependent Claim
52 words
The apparatus as set forth in claim 14, wherein, said generation means is also for generating test driver functions for said generated test driver, said test driver functions being called by said generated test driver during its execution to provide said generated test driver with a particular combination of said attribute values.
Claim 24
Dependent Claim
106 words
The apparatus as set forth in claim 14, wherein, said generation means comprises: c.1) parsing means coupled to said designation and specification means comprising said CPU for parsing and tokenizing elements of said test expression and said attribute value specifications based on a formal grammar; c.2) intermediate representation generation means coupled to said parsing means comprising said CPU for generating intermediate representations for said test expression and said attribute value specifications, said intermediate representation being a syntax tree; and c.3) code generation means coupled to said intermediate representation generation means comprising said CPU for generating executable code for said test driver using said generated intermediate representations.