Patent US5652835A successfully refreshed from Google Patents.
US5652835A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for generating test data for an automated software testing system
Assignee: Apple Inc
•
Filing: 1995-09-27
•
Granted: 1997-07-29
•
Expires: 2015-09-27
Abstract
Abstract A method and apparatus for testing software programs systematically generates test data by removing from a potential test data candidate pool data which is syntactically incorrect for proper operation with the software program and then data which is semantically incorrect for the software program. The resulting reduced data collection is applied to the collection of components to generate output values which are then checked against post condition rules to verify that the software program operated correctly.
Inventors
- 👤 Christopher Moore Miller
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-07 06:17
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3668; G06F11/3672; G06F11/3688; G06F11/3684
Claims Analysis
Total Claims: 16
Claim 1
Independent Claim
125 words
A method for generating a plurality of valid parameter data each of which has an object state and each of which will operate with a subroutine under test from an application under test without causing an error, the method comprising the steps of: (a) generating a pool of potential parameter data from a lexical analysis of the application under test; (b) storing the pool of potential parameter data in a storage; (c) examining each potential parameter data of the stored pool of potential parameter data and selecting therefrom data with valid object states as candidate parameter data; and (d) examining each candidate parameter data selected in step (c) and selecting therefrom valid parameter data which will operate with the subroutine without causing an error condition.
Claim 2
Independent Claim
125 words
A method for generating a plurality of valid parameter data each of which has an object state and each of which will operate with a subroutine under test from an application under test without causing an error, the method comprising the steps of: (a) generating a pool of potential parameter data from a lexical analysis of the application under test; (b) storing the pool of potential parameter data in a storage; (c) examining each potential parameter data of the stored pool of potential parameter data and selecting therefrom data with valid object states as candidate parameter data; and (d) examining each candidate parameter data selected in step (c) and selecting therefrom valid parameter data which will operate with the subroutine without causing an error condition.
Claim 3
Independent Claim
121 words
A method for automated testing of a software program comprising parameter data and a subroutine operating on the parameter data to generate output data, the method, comprising the steps of: (a) examining the parameter data and generating a data consistent signal when the parameter data is internally consistent; (b) examining the parameter data and generating a data valid signal when the parameter data will operate with the subroutine without causing an error condition; (c) running the subroutine with the parameter data when the data consistent signal and the data valid signal are present; and (d) examining the parameter data and output data generated by the subroutine from the parameter data to determine whether an error occurred during operation of the subroutine.
Claim 4
Independent Claim
121 words
A method for automated testing of a software program comprising parameter data and a subroutine operating on the parameter data to generate output data, the method, comprising the steps of: (a) examining the parameter data and generating a data consistent signal when the parameter data is internally consistent; (b) examining the parameter data and generating a data valid signal when the parameter data will operate with the subroutine without causing an error condition; (c) running the subroutine with the parameter data when the data consistent signal and the data valid signal are present; and (d) examining the parameter data and output data generated by the subroutine from the parameter data to determine whether an error occurred during operation of the subroutine.
Claim 5
Dependent Claim
35 words
A method for automated testing of a software program according to claim 2, further comprising the steps of: (a) receiving user commands; and (b) generating wrapper code for running the subroutine with the parameter data.
Claim 6
Dependent Claim
36 words
A method for automated testing of a software program according to claim 2, wherein step (b) includes the step of discontinuing automated testing when the data valid signal indicates that the parameter data is not valid.
Claim 7
Dependent Claim
38 words
A method for automated testing of a software program according to claim 2, further comprising the step of examining the parameter data after the subroutine has been run and determining whether the parameter data is still internally consistent.
Claim 8
Dependent Claim
81 words
A method for automated testing of a software program according to claim 2, wherein the subroutine requires parameter data with a plurality of predetermined data types and wherein step (a) comprises the steps of: (a1) generating a plurality of test sets of parameter data, each of the plurality of test sets of parameter data having data with one of the plurality of predetermined data types; and (a2) selecting the test sets of parameter data wherein the parameter data is internally consistent.
Claim 9
Dependent Claim
52 words
A method for automated testing of a software program according to claim 2, wherein step a1, further comprises the steps of: a3. providing an invariant rule for each of the plurality of predetermined data types; and a4. associating an invariant rule with each of the plurality of test sets of parameter data.
Claim 10
Dependent Claim
54 words
A method for automated testing of a software program according to claim 2, wherein step (b) further comprises the step of examining the test sets of parameter data selected in step (a2) and further selecting test sets of parameter data wherein the parameter data will operate with the subroutine without causing an error condition.
Claim 11
Dependent Claim
52 words
A method for automated testing of a software program according to claim 2, wherein step (a) further comprises the steps of: (a3) providing an invariant rule for each of the plurality of predetermined data types; and (a4) associating an invariant rule with each of the plurality of test sets of parameter data.
Claim 12
Independent Claim
111 words
A method for generating a plurality of valid parameter data objects each of which has an object state and each of which will operate with a subroutine under test without causing an error, comprising the steps of: (a) generating a pool of potential parameter data objects; (b) storing the pool of potential parameter data objects; (c) examining each potential parameter data object in the stored pool of potential parameter data objects and selecting candidate parameter data objects with valid object states; and (d) examining each candidate parameter data object selected in step (c) and further selecting valid parameter data objects which will operate with the subroutine without causing an error condition.
Claim 13
Independent Claim
111 words
A method for generating a plurality of valid parameter data objects each of which has an object state and each of which will operate with a subroutine under test without causing an error, comprising the steps of: (a) generating a pool of potential parameter data objects; (b) storing the pool of potential parameter data objects; (c) examining each potential parameter data object in the stored pool of potential parameter data objects and selecting candidate parameter data objects with valid object states; and (d) examining each candidate parameter data object selected in step (c) and further selecting valid parameter data objects which will operate with the subroutine without causing an error condition.
Claim 14
Dependent Claim
63 words
A method for generating a plurality of valid parameter data objects according to claim 10, wherein each of the potential parameter data objects has a predetermined data type and step c, comprises the steps of: (c1) providing an invariant rule for each of the plurality of predetermined data types; and (c2) associating an invariant rule with each of the potential parameter data objects.
Claim 15
Independent Claim
135 words
A method for testing whether a subroutine, operating on parameter data with internal data states to generate output data, meets predetermined design requirements, the method comprising the steps of: (a) storing the subroutine and the parameter data in a storage; (b) examining each piece of parameter data and selecting therefrom parameter data having valid internal data states as candidate parameter data pieces, which have a data syntax which will operate with the subroutine; (c) examining the candidate parameter data selected in step (b) and selecting therefrom valid parameter data having data semantics in accordance with the predetermined design requirements; (d) running the subroutine with the valid parameter data selected in step (c); and (e) examining output data generated by the subroutine as a result of step (d) to determine whether the subroutine met design requirements.
Claim 16
Independent Claim
135 words
A method for testing whether a subroutine, operating on parameter data with internal data states to generate output data, meets predetermined design requirements, the method comprising the steps of: (a) storing the subroutine and the parameter data in a storage; (b) examining each piece of parameter data and selecting therefrom parameter data having valid internal data states as candidate parameter data pieces, which have a data syntax which will operate with the subroutine; (c) examining the candidate parameter data selected in step (b) and selecting therefrom valid parameter data having data semantics in accordance with the predetermined design requirements; (d) running the subroutine with the valid parameter data selected in step (c); and (e) examining output data generated by the subroutine as a result of step (d) to determine whether the subroutine met design requirements.
References Cited (Backward Citations)
US4821220A
Cited
US4953080A
Cited
US5041992A
Cited
US5133075A
Cited
US5050090A
Cited
US5075847A
Cited
US5060276A
Cited
US5125091A
Cited
US5283900A
Cited
US5181162A
Cited
US5093914A
Cited
US5075848A
Cited
US5437027A
Cited
US5297279A
Cited
US5241673A
Cited
US5423023A
Cited
US5280610A
Cited
US5327529A
Cited
US5327559A
Cited
US5151987A
Cited
US5291593A
Cited
US5119475A
Cited
US5297284A
Cited
US5317741A
Cited
US5305389A
Cited
US5421016A
Cited
US5339438A
Cited
US5428792A
Cited
US5259766A
Cited
US5293385A
Cited
US5327562A
Cited
US5371747A
Cited
US5339430A
Cited
US5307490A
Cited
US5339433A
Cited
US5315703A
Cited
US5325533A
Cited
US5432925A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2000-07-28 | 2001-01-27 | 2001-07-29 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2004-07-28 | 2005-01-27 | 2005-07-29 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2008-07-28 | 2009-01-27 | 2009-07-29 | $7700.00 | Window Closed / Lapsed |