← Back to Patent Explorer
US5513315A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for automatic testing of computer software

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1992-12-22
•
Granted: 1996-04-30
•
Expires: 2012-12-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method for automatically testing software using a deterministic acceptance test and random command sequence selections to more rapidly uncover errors in computer software. A results analyzer checks test parameters following the execution of each of a series of predetermined test commands and a series of random test commands to determine if the commands were properly executed. The test command sequences and test results determined by the results analyzer are stored in a log file which may be examined by the tester. The randomly selected test command sequence is stored in a tracker log file. The tester may reexecute the tracker file in its entirety or any portion selected by the tester as a means of determining the cause of an error in the software. The system also provides for error recovery. When an error is detected, the system restarts the test of the computer software and continues maintaining the log file and the tracker file. The system also uses the probabilities for various responses that an end-user may make in response to a particular screen display or program state. The system may select random responses corresponding to the probabilities. These probabilities are calculated for each individual screen display or software state. Because the present invention executes a random selection of command sequences, a particular applications program may be tested on multiple machines, thereby decreasing the overall time required for acceptance testing.

Inventors

  • 👤 James R. Tierney
  • 👤 Noel Cross

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 00:10
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3668; G06F11/3672; G06F11/3688

Claims Analysis

Total Claims: 76
Claim 1
Independent Claim 314 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a preliminary test file containing a series of predetermined commands for the computer software to test initial parameters of the computer software; an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said predetermined commands, said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file to determine if each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file; a test log file recording said test results for each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 2
Independent Claim 314 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a preliminary test file containing a series of predetermined commands for the computer software to test initial parameters of the computer software; an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said predetermined commands, said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file to determine if each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file; a test log file recording said test results for each of said predetermined commands, said random series of commands, and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 3
Dependent Claim 34 words
The system of claim 1, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 4
Dependent Claim 49 words
The system of claim 1 wherein said preliminary test file contains commands for the computer software to open and close a preselected series of computer files to test the ability of the computer software to open and close computer files of different sizes, said initial parameters being file sizes.
Claim 5
Dependent Claim 56 words
The system of claim 1, further including a display screen and wherein said preliminary test file contains commands for the computer software to resize screen displays on said video display screen in a preselected fashion to test the ability of the computer software to accommodate different display screen sizes, said initial parameters being display screen sizes.
Claim 6
Dependent Claim 38 words
The system of claim 1 wherein said preliminary test file contains commands for the computer software to edit files in a preselected fashion to test predetermined parameters of the computer software, said initial parameters being file editing capability.
Claim 7
Independent Claim 40 words
The system of claim I wherein said random test selector randomly selects commands from said operational profile which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 8
Dependent Claim 42 words
The system of claim 6 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 9
Dependent Claim 23 words
The system of claim 1 wherein said operational profile contains a different probability of end-user choices for each of said particular program states.
Claim 10
Dependent Claim 34 words
The system of claim 1, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 11
Independent Claim 241 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a preliminary test file containing a series of predetermined commands for the computer software to test initial parameters of the computer software; an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said predetermined commands, said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said predetermined commands, said random series of commands, and said portion of said tracker log file to determine if each of said predetermined commands, said random series of commands, and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said predetermined commands, said random series of commands, and said portion of said tracker log file.
Claim 12
Independent Claim 241 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a preliminary test file containing a series of predetermined commands for the computer software to test initial parameters of the computer software; an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said predetermined commands, said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said predetermined commands, said random series of commands, and said portion of said tracker log file to determine if each of said predetermined commands, said random series of commands, and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said predetermined commands, said random series of commands, and said portion of said tracker log file.
Claim 13
Dependent Claim 34 words
The system of claim 10, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 14
Dependent Claim 31 words
The system of claim 10, further including selection means for selecting a portion of said random series of commands recorded by said tracker log file for reexecution by said command simulator.
Claim 15
Dependent Claim 49 words
The system of claim 10 wherein said preliminary test file contains commands for the computer software to open and close a preselected series of computer files to test the ability of the computer software to open and close computer files of different sizes, said initial parameters being file sizes.
Claim 16
Dependent Claim 56 words
The system of claim 10, further including a display screen and wherein said preliminary test file contains commands for the computer software to resize screen displays on said video display screen in a preselected fashion to test the ability of the computer software to accommodate different display screen sizes, said initial parameters being display screen sizes.
Claim 17
Dependent Claim 38 words
The system of claim 10 wherein said preliminary test file contains commands for the computer software to edit files in a preselected fashion to test predetermined parameters of the computer software, said initial parameters being file editing capability.
Claim 18
Dependent Claim 40 words
The system of claim 10 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 19
Dependent Claim 42 words
The system of claim 16 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 20
Dependent Claim 23 words
The system of claim 10 wherein said operational profile contains a different probability of end-user choices for each of said particular program states.
Claim 21
Independent Claim 276 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands, and said portion of said tracker log file to determine if each of said random series of commands and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said selected portion of said tracker log file; a test log file recording said test results for each of said random series of commands and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 22
Independent Claim 276 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands, and said portion of said tracker log file to determine if each of said random series of commands and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said selected portion of said tracker log file; a test log file recording said test results for each of said random series of commands and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 23
Dependent Claim 34 words
The system of claim 19, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 24
Dependent Claim 40 words
The system of claim 19 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 25
Dependent Claim 42 words
The system of claim 21 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 26
Independent Claim 207 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands and said portion of said tracker log file to determine if each of said random series of commands and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said portion of said tracker log file.
Claim 27
Independent Claim 207 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: an operational profile containing a list of end-user choices in response to a particular program state of the computer software, said list being constructed according to probabilities of end-user choices in response to said particular program state; a random test selector to randomly select a series of commands from said operational profile for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands and said portion of said tracker log file to determine if each of said random series of commands and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said portion of said tracker log file.
Claim 28
Dependent Claim 34 words
The system of claim 23, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 29
Dependent Claim 31 words
The system of claim 23, further including selection means for selecting a portion of said random series of commands recorded by said tracker log file for reexecution by said command simulator.
Claim 30
Dependent Claim 40 words
The system of claim 23 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 31
Dependent Claim 42 words
The system of claim 26 wherein said random test selector randomly selects commands from said operational profile which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 32
Dependent Claim 23 words
The system of claim 23 wherein said operational profile contains a different probability of end-user choices for each of said particular program states.
Claim 33
Independent Claim 235 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a random test selector to randomly select a series of commands for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands, and said portion of said tracker log file to determine if each of said random series of commands and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said selected portion of said tracker log file; a test log file recording said test results for each of said random series of commands and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 34
Independent Claim 235 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a random test selector to randomly select a series of commands for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; means for selecting a portion of said tracker log file; a command simulator simulating on the computer software the selection of said random series of commands, and at least said selected portion of said tracker log; a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands, and said portion of said tracker log file to determine if each of said random series of commands and said selected portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said selected portion of said tracker log file; a test log file recording said test results for each of said random series of commands and said selected portion of said tracker log file; and an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 35
Dependent Claim 34 words
The system of claim 29, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 36
Dependent Claim 36 words
The system of claim 29 wherein said random test selector randomly selects commands which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 37
Dependent Claim 38 words
The system of claim 31 wherein said random test selector randomly selects commands which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 38
Independent Claim 166 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a random test selector to randomly select a series of commands for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands and said portion of said tracker log file to determine if each of said random series of commands and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said portion of said tracker log file.
Claim 39
Independent Claim 166 words
A system for automatically testing computer software and detecting errors in the computer software, the system comprising: a random test selector to randomly select a series of commands for the computer software to execute; a tracker log file to record each of said random series of commands selected by said random test selector; a command simulator simulating on the computer software the selection of said random series of commands, and at least a portion of said tracker log; and a results analyzer analyzing at least one test parameter of the computer software after the execution by the computer software of each of said random series of commands and said portion of said tracker log file to determine if each of said random series of commands and said portion of said tracker log file was properly executed by the computer software, said results analyzer generating a test result following the execution of each of said random series of commands and said portion of said tracker log file.
Claim 40
Dependent Claim 31 words
The system of claim 33, further including a test log file recording said test results for each of said random series of commands and said portion of said tracker log file.
Claim 41
Dependent Claim 38 words
The system of claim 33, further including an error recovery unit automatically restarting the computer software to continue testing the computer software if one of said random series of commands was not properly executed by the computer software.
Claim 42
Dependent Claim 34 words
The system of claim 33, further including examination means for examination of said test log to determine if any of said randomly selected series of commands was not properly executed by the computer software.
Claim 43
Dependent Claim 31 words
The system of claim 33, further including selection means for selecting a portion of said random series of commands recorded by said tracker log file for reexecution by said command simulator.
Claim 44
Dependent Claim 36 words
The system of claim 33 wherein said random test selector randomly selects commands which cause the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 45
Dependent Claim 38 words
The system of claim 38 wherein said random test selector randomly selects commands which cause the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 46
Independent Claim 205 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) testing initial parameters of the computer software by having the computer software execute a series of predetermined commands for the computer software; (b) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (c) recording each of said randomly selected commands in a tracker log file; (d) executing on the computer software said predetermined commands and said randomly selected commands; (e) analyzing the computer software after the execution of each of said predetermined commands and said randomly selected commands to determine if each of said predetermined commands and said randomly selected commands was properly executed by the computer software; (f) generating a test result following the execution of each of said predetermined commands and said randomly selected commands; (g) recording said test results in a test log file for each of said predetermined commands and said randomly selected commands; and (h) automatically restarting the computer software to continue testing the computer software if one of said randomly selected commands was not properly executed by the computer software.
Claim 47
Independent Claim 205 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) testing initial parameters of the computer software by having the computer software execute a series of predetermined commands for the computer software; (b) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (c) recording each of said randomly selected commands in a tracker log file; (d) executing on the computer software said predetermined commands and said randomly selected commands; (e) analyzing the computer software after the execution of each of said predetermined commands and said randomly selected commands to determine if each of said predetermined commands and said randomly selected commands was properly executed by the computer software; (f) generating a test result following the execution of each of said predetermined commands and said randomly selected commands; (g) recording said test results in a test log file for each of said predetermined commands and said randomly selected commands; and (h) automatically restarting the computer software to continue testing the computer software if one of said randomly selected commands was not properly executed by the computer software.
Claim 48
Dependent Claim 84 words
The method of claim 40, further including the steps of: (i) examining said test log file to determine if any of said randomly selected commands was not properly executed by the computer software; (j) selecting a portion of said tracker log file for reexecution; (k) reexecuting said selected portion of said tracker log file; and (l) using steps (e)-(g) to analyze, generate a test result and record said test result for each of the commands in said selected portion of said tracker log file.
Claim 49
Dependent Claim 46 words
The method of claim 40 wherein said step (a) of testing initial parameters includes commands for the computer software to open and close a preselected series of computer files to test the ability of the computer software to open and close computer files of different sizes.
Claim 50
Dependent Claim 46 words
The method of claim 40 wherein said step (a) of testing initial parameters includes commands for the computer software to resize screen displays on a video display screen in a preselected fashion to test the ability of the computer software to accommodate different display screen sizes.
Claim 51
Dependent Claim 34 words
The method of claim 40 wherein said step (a) of testing initial parameters includes commands for the computer software to edit files in a preselected fashion to test predetermined parameters of the computer software.
Claim 52
Dependent Claim 26 words
The method of claim 40, further including the step of constructing said list according to probabilities of end-user choices in response to said particular program state.
Claim 53
Dependent Claim 46 words
The method of claim 40 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 54
Dependent Claim 48 words
The method of claim 46 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 55
Independent Claim 157 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) testing initial parameters of the computer software by having the computer software execute a series of predetermined commands for the computer software; (b) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (c) recording each of said randomly selected commands in a tracker log file; (d) executing on the computer software said predetermined commands and said randomly selected commands; (e) analyzing the computer software after the execution of each of said predetermined commands and said randomly selected commands to determine if each of said predetermined commands and said randomly selected commands was properly executed by the computer software; and (f) generating a test result following the execution of each of said predetermined commands and said randomly selected commands.
Claim 56
Independent Claim 157 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) testing initial parameters of the computer software by having the computer software execute a series of predetermined commands for the computer software; (b) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (c) recording each of said randomly selected commands in a tracker log file; (d) executing on the computer software said predetermined commands and said randomly selected commands; (e) analyzing the computer software after the execution of each of said predetermined commands and said randomly selected commands to determine if each of said predetermined commands and said randomly selected commands was properly executed by the computer software; and (f) generating a test result following the execution of each of said predetermined commands and said randomly selected commands.
Claim 57
Dependent Claim 43 words
The method of claim 48, further including the steps of: (g) selecting a portion of said tracker log file for reexecution; (h) reexecuting said selected portion of said tracker log file; and (i) using steps (e)-(f) to analyze and generate a test result.
Claim 58
Dependent Claim 46 words
The method of claim 48 wherein said step (a) of testing initial parameters includes commands for the computer software to open and close a preselected series of computer files to test the ability of the computer software to open and close computer files of different sizes.
Claim 59
Dependent Claim 46 words
The method of claim 48 wherein said step (a) of testing initial parameters includes commands for the computer software to resize screen displays on a video display screen in a preselected fashion to test the ability of the computer software to accommodate different display screen sizes.
Claim 60
Dependent Claim 34 words
The method of claim 48 wherein said step (a) of testing initial parameters includes commands for the computer software to edit files in a preselected fashion to test predetermined parameters of the computer software.
Claim 61
Dependent Claim 26 words
The method of claim 48, further including the step of constructing said list according to probabilities of end-user choices in response to said particular program state.
Claim 62
Dependent Claim 46 words
The method of claim 48 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 63
Dependent Claim 48 words
The method of claim 54 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 64
Independent Claim 162 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (b) recording each of said randomly selected commands in a tracker log file; (c) executing on the computer software said randomly selected commands; (d) analyzing the computer software after the execution of each of said randomly selected commands to determine if each of said randomly selected commands was properly executed by the computer software; (e) generating a test result following the execution of each of said randomly selected commands; (f) recording said test results in a test log file for each of said randomly selected commands; and (g) automatically restarting the computer software to continue testing the computer software if one of said randomly selected commands was not properly executed by the computer software.
Claim 65
Independent Claim 162 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) randomly selecting a series of commands from an operational profile containing a list of end-user choices in response to a particular program state of the computer software; (b) recording each of said randomly selected commands in a tracker log file; (c) executing on the computer software said randomly selected commands; (d) analyzing the computer software after the execution of each of said randomly selected commands to determine if each of said randomly selected commands was properly executed by the computer software; (e) generating a test result following the execution of each of said randomly selected commands; (f) recording said test results in a test log file for each of said randomly selected commands; and (g) automatically restarting the computer software to continue testing the computer software if one of said randomly selected commands was not properly executed by the computer software.
Claim 66
Dependent Claim 84 words
The method of claim 56, further including the steps of: (h) examining said test log file to determine if any of said randomly selected commands was not properly executed by the computer software; (i) selecting a portion of said tracker log file for reexecution; (j) reexecuting said selected portion of said tracker log file; and (k) using steps (d)-(f) to analyze, generate said test result and record said test result for each of the commands in said selected portion of said tracker log file.
Claim 67
Dependent Claim 26 words
The method of claim 56, further including the step of constructing said list according to probabilities of end-user choices in response to said particular program state.
Claim 68
Dependent Claim 46 words
The method of claim 56 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 69
Dependent Claim 48 words
The method of claim 59 wherein said step (b) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.
Claim 70
Independent Claim 103 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) randomly selecting a series of commands for the computer software to execute; (b) recording each of said randomly selected commands in a tracker log file; (c) executing on the computer software said randomly selected commands; (d) analyzing the computer software after the execution of each of said randomly selected commands to determine if each of said randomly selected commands was properly executed by the computer software; and (e) generating a test result following the execution of each of said randomly selected commands.
Claim 71
Independent Claim 103 words
A method for automatically testing computer software and detecting errors in the computer software, the method comprising the steps of: (a) randomly selecting a series of commands for the computer software to execute; (b) recording each of said randomly selected commands in a tracker log file; (c) executing on the computer software said randomly selected commands; (d) analyzing the computer software after the execution of each of said randomly selected commands to determine if each of said randomly selected commands was properly executed by the computer software; and (e) generating a test result following the execution of each of said randomly selected commands.
Claim 72
Dependent Claim 26 words
The method of claim 61, further including the step of recording said test results in a test log file for each of said randomly selected commands.
Claim 73
Dependent Claim 36 words
The method of claim 61, further including the step of automatically restarting the computer software to continue testing the computer software if one of said randomly selected commands was not properly executed by the computer software.
Claim 74
Dependent Claim 80 words
The method of claim 61, further including the steps of: (f) examining said test log file to determine if any of said randomly selected commands was not properly executed by the computer software; (g) selecting a portion of said tracker log file for reexecution; (h) reexecuting said selected portion of said tracker log file; and (i) using step (d)-(e) to analyze and generate said test result for each of the commands in said selected portion of said tracker log file.
Claim 75
Dependent Claim 42 words
The method of claim 61 wherein said step (a) of randomly selecting a series of commands includes randomly selecting commands for the computer software to open and close computer files to test the ability of the computer software to open computer files.
Claim 76
Dependent Claim 48 words
The method of claim 65 wherein said step (a) of randomly selecting a series of commands from said operational profile includes randomly selecting commands for the computer software to edit said opened computer files to test the ability of the computer software to edit said opened computer files.

References Cited (Backward Citations)

US5157782A Cited
US5157779A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-04-30 1999-10-30 2000-04-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-04-30 2003-10-30 2004-04-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-04-30 2007-10-30 2008-04-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag