US5708774A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Automated testing of software application interfaces, object methods and commands
Assignee: International Business Machines Corp
•
Filing: 1996-07-23
•
Granted: 1998-01-13
•
Expires: 2016-07-23
Abstract
Abstract Automated testing of software application interfaces, object methods and commands, including testing software using order-based genetic algorithms to search for and detect symptoms of software errors by generating test sequences which converge on points in invocation space more likely to cause error symptoms.
Inventors
- 👤 Edward Barnes Boden
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-06 12:51
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
111 words
Method of operating a digital computer to generate symptoms of errors in source code, comprising the steps of: a) generating from order-based genetic algorithms at a testing system a set of coded representations of sequences of function invocations; b) executing said source code on a target system; c) sending said set of coded representations to said target system; d) interpreting on said target system the coded representations in said set to generate a sequence of function invocations; e) interpreting function invocation results in sequence; f) collecting said sequence of function invocations and returning said sequence and said results to said testing system; g) evaluating said results to identify symptoms of errors.
Claim 2
Dependent Claim
111 words
Method of operating a digital computer to generate symptoms of errors in source code, comprising the steps of: a) generating from order-based genetic algorithms at a testing system a set of coded representations of sequences of function invocations; b) executing said source code on a target system; c) sending said set of coded representations to said target system; d) interpreting on said target system the coded representations in said set to generate a sequence of function invocations; e) interpreting function invocation results in sequence; f) collecting said sequence of function invocations and returning said sequence and said results to said testing system; g) evaluating said results to identify symptoms of errors.
Claim 3
Dependent Claim
38 words
The method of claim 1, further comprising the steps of: h) responsive to said evaluation results, generating a new set of coded representations of function invocations, and with that new set; and i) repeating steps a through g.
Claim 4
Dependent Claim
89 words
The method of claim 2, wherein step g) further comprises the steps of: g1) performing a fitness evaluation, including: maintaining a set of class object representations of the function invocations under test; recognizing in said function invocation results those which match one of said coded representations; and discovering the result category; g2) repeating step g1) for each function invocation in the sequence; g3) evaluating the invocation sequence independent of said results for its value in finding errors; and g4) feeding said value and said result category into step h).
Claim 5
Dependent Claim
61 words
The method of claim 1, wherein step e) further comprises the steps of: e1) responsive to generation of information results, inserting information results in the collected sequence; e2) responsive to generation of action results, inserting representations of the return code in said collected sequence; and e3) responsive to generation of exception results, inserting representations of exception codes in said collected sequence.
Claim 6
Dependent Claim
69 words
The method of claim 1, wherein said step d) further comprises the steps of: d1) parsing said coded representations into commands; d2) parsing each parameter; and d3) constructing each parsed parameter into machine representations in sequence, including: for scalar parameters, converting said coded representations into machine coding; and for pointer parameters, constructing from said coded representation applications specific data types which are pointers to objects, structures, or the like.
Claim 7
Independent Claim
57 words
A system for detecting symptoms of software errors, comprising: an order-based genetic algorithm for generating test sequences which converge on points in invocation space more likely to cause error symptoms; and a test interface for interpreting and executing said test sequences, and returning execution results to said order-based genetic algorithm for use in generating subsequent test sequences.
Claim 8
Independent Claim
57 words
A system for detecting symptoms of software errors, comprising: an order-based genetic algorithm for generating test sequences which converge on points in invocation space more likely to cause error symptoms; and a test interface for interpreting and executing said test sequences, and returning execution results to said order-based genetic algorithm for use in generating subsequent test sequences.
Claim 9
Dependent Claim
19 words
The system of claim 6 wherein said order-based genetic algorithm includes a cross population manager and an evaluation component.
Claim 10
Dependent Claim
43 words
The system of claim 7 wherein said cross population manager comprises means for generating a first population of test sequences and subsequent populations of test sequences, each such sequence defining a plurality of calls or command invocations for execution by said test interface.
Claim 11
Dependent Claim
40 words
The system of claim 8 wherein said evaluation component comprises means for executing a fitness function to provide an evaluated population of parent chromosomes for use by said cross population manager in deriving the child chromosomes defining a subsequent population.
Claim 12
Dependent Claim
17 words
The system of claim 9 wherein said fitness function is a weighted sum of execution result factors.
Claim 13
Dependent Claim
68 words
Apparatus for storing signals for controlling the operation of a digital computer, said signals comprising: order-based genetic algorithm signals for operating said digital computer to generate test sequences which converge on points in invocation space more likely to cause error symptoms; and test interface signals for operating said digital computer to interpret and execute said test sequences, and return execution results for use in generating subsequent test sequences.
Claim 14
Dependent Claim
68 words
Apparatus for storing signals for controlling the operation of a digital computer, said signals comprising: order-based genetic algorithm signals for operating said digital computer to generate test sequences which converge on points in invocation space more likely to cause error symptoms; and test interface signals for operating said digital computer to interpret and execute said test sequences, and return execution results for use in generating subsequent test sequences.
Claim 15
Dependent Claim
71 words
A digital transmission link for transmitting signals for controlling the operation of a digital computer, said signals comprising: order-based genetic algorithm signals for operating said digital computer to generate test sequences which converge on points in invocation space more likely to cause error symptoms; and test interface signals for operating said digital computer to interpret and execute said test sequences, and return execution results for use in generating subsequent test sequences.
Claim 16
Dependent Claim
71 words
A digital transmission link for transmitting signals for controlling the operation of a digital computer, said signals comprising: order-based genetic algorithm signals for operating said digital computer to generate test sequences which converge on points in invocation space more likely to cause error symptoms; and test interface signals for operating said digital computer to interpret and execute said test sequences, and return execution results for use in generating subsequent test sequences.
References Cited (Backward Citations)
US4696003A
Cited
US4926427A
Cited
US5343554A
Cited
US5119377A
Cited
US5193178A
Cited
US5493682A
Cited
US5513315A
Cited
US5357527A
Cited
EP0666535A2
Cited
US5455938A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-01-12 | 2001-07-14 | 2002-01-13 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-01-12 | 2005-07-14 | 2006-01-13 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-01-12 | 2009-07-14 | 2010-01-13 | $7700.00 | Window Closed / Lapsed |