User extensible testing system
First Claim
1. In a window-based computer system comprising a central processing unit (CPU), memory, input/output devices comprising a keyboard, mouse and display, wherein the input and output of information is performed through windows defined on the display, a user extensible, automated testing system generating test results for the testing of application programs which compares master data to actual data generated during the testing of the application program, said test results comprising the differences between the master data and actual data, said user extensible, automated testing system comprising:
- journaling means coupled to said window system for generating and replaying a journal file comprising a list of events representative of user actions performed during a user session which, when replayed, cause the application program to be executed in a predetermined manner which tests the application program;
filter means for eliminating portions of data which are not determinative of the test results, said filter means accepting data generated from the testing of the application programs, said filter means comprising;
filter functions which, when executed, filter portions of data, each filter function identified by name;
a filter list file, comprising a list of names of at least one filter function to filter portions of data, said filter list file referenced to determine available filter functions;
filter execution means coupled to the filter list file and the central processing unit such that the filter functions are executed by the central processing unit to filter portions of data according to the filter functions listed in the filter list file; and
filter modification means coupled to the filter list file, filter functions and to the input/output devices through the window system, the filter modification means modifying the filter list file such that filter functions can be added, deleted or changed;
save data means to save data generated during the testing of the application program, said save data means being coupled to the window system and to the filter means such that data output from said filter means is input to said save data means, said save data means comprising;
save data functions, which, when executed, save predetermined portions of the data, each save data function identified by a name;
save data execution means coupled to said save data functions and the central processing unit such that said save data functions are executed by the central processing unit to save predetermined portions of the data according to specified save data functions, said save data execution means enabled by a plurality of events placed in the journal file representative of user actions which selects the save data function; and
save data modification means coupled to the save data functions and to the input/output devices through the window system so as to modify the save data functions such that save data functions can be added, deleted or changed;
comparison means for comparing predetermined portions of data from the master data to corresponding portions of data from the actual data, said comparison means being coupled to the save data means such that portions of data saved by the save data functions are input to the comparison means, said comparison means comprising;
comparison functions, each identified by name, which, when executed, compare predetermined portions of the master data with corresponding predetermined portions of the actual data, determine the differences between the predetermined portions of the master data and actual data, and cause a failure file to be generated containing the actual data saved which have differences as determined by the comparison function;
comparison execution means coupled to the comparison functions and the central processing unit so as to compare predetermined portions of the master data and actual data according to the comparison functions, said comparison execution means enabled after execution of save data is completed;
comparison modification means to modify the comparison functions, said comparison modification means coupling the comparison functions to the input/output devices through the window system such that comparison functions can be added, deleted or changed;
wherein the testing system is extensible by modification of the filter functions, save data functions, comparison functions.
1 Assignment
0 Petitions
Accused Products
Abstract
A user extensible, automated testing system comprises a plurality of modules, each of which is user extensible. The journal module provides the ability to record events representative of user actions taken to execute certain tasks which farm the test. The filter module provides the means to filter out data which is not determinative of the pass or fail status of a test. The save data module provides the means to save data which subsequently compared to master data to determine the pass/fail status of the test. The compare module provides the means to compare the data saved with the master data to determine differences between the data and therefore the pass/fail status of the test. The review module provides a graphical review of the differences between the master data and actual data. Each module is user extensible whereby the user may update, change or delete portions of the module functionality in order to tailor the testing system to a particular computer system or computer software application.
195 Citations
78 Claims
-
1. In a window-based computer system comprising a central processing unit (CPU), memory, input/output devices comprising a keyboard, mouse and display, wherein the input and output of information is performed through windows defined on the display, a user extensible, automated testing system generating test results for the testing of application programs which compares master data to actual data generated during the testing of the application program, said test results comprising the differences between the master data and actual data, said user extensible, automated testing system comprising:
-
journaling means coupled to said window system for generating and replaying a journal file comprising a list of events representative of user actions performed during a user session which, when replayed, cause the application program to be executed in a predetermined manner which tests the application program; filter means for eliminating portions of data which are not determinative of the test results, said filter means accepting data generated from the testing of the application programs, said filter means comprising; filter functions which, when executed, filter portions of data, each filter function identified by name; a filter list file, comprising a list of names of at least one filter function to filter portions of data, said filter list file referenced to determine available filter functions; filter execution means coupled to the filter list file and the central processing unit such that the filter functions are executed by the central processing unit to filter portions of data according to the filter functions listed in the filter list file; and filter modification means coupled to the filter list file, filter functions and to the input/output devices through the window system, the filter modification means modifying the filter list file such that filter functions can be added, deleted or changed; save data means to save data generated during the testing of the application program, said save data means being coupled to the window system and to the filter means such that data output from said filter means is input to said save data means, said save data means comprising; save data functions, which, when executed, save predetermined portions of the data, each save data function identified by a name; save data execution means coupled to said save data functions and the central processing unit such that said save data functions are executed by the central processing unit to save predetermined portions of the data according to specified save data functions, said save data execution means enabled by a plurality of events placed in the journal file representative of user actions which selects the save data function; and save data modification means coupled to the save data functions and to the input/output devices through the window system so as to modify the save data functions such that save data functions can be added, deleted or changed; comparison means for comparing predetermined portions of data from the master data to corresponding portions of data from the actual data, said comparison means being coupled to the save data means such that portions of data saved by the save data functions are input to the comparison means, said comparison means comprising; comparison functions, each identified by name, which, when executed, compare predetermined portions of the master data with corresponding predetermined portions of the actual data, determine the differences between the predetermined portions of the master data and actual data, and cause a failure file to be generated containing the actual data saved which have differences as determined by the comparison function; comparison execution means coupled to the comparison functions and the central processing unit so as to compare predetermined portions of the master data and actual data according to the comparison functions, said comparison execution means enabled after execution of save data is completed; comparison modification means to modify the comparison functions, said comparison modification means coupling the comparison functions to the input/output devices through the window system such that comparison functions can be added, deleted or changed; wherein the testing system is extensible by modification of the filter functions, save data functions, comparison functions. - 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, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. In a window-based computer system comprising a central processing unit (CPU), memory, input/output devices comprising a keyboard, mouse and display, wherein the input and output of information is performed through windows defined on the display, a user extensible, automated testing process generating test results for the testing of application programs which compares master data to actual data generated during the testing of the application program, said test results comprising the differences between the master data and actual data, said user extensible, automated process for testing the application program comprising the steps of:
-
generating events representative of user actions performed during a user session, said events comprising events to execute the application program; generating events to perform comparisons between the master data and actual data comprising the steps of; filtering portions of data which are not determinative of the test results by executing filter functions which filter portions of data, each filter function identified by name and identified in a filter list file, said filter list file comprising a list of names of filter functions available to filter portions of data and is modified to add, delete or change filter functions; saving data generated during the testing of the application program according to save data functions which save predetermined portions of the data, each save data function identified by a name and enabled by a plurality of events placed in the journal file representative of user actions which selects the save data function, said save data functions are modified to add, delete or change save data functions; comparing predetermined portions of data from the master data to corresponding portions of data from the actual data, according to comparison functions each identified by name, to determine differences between predetermined portions of the master data and actual data, said comparison functions are modified to add, delete or change comparison functions; and generating a failure file containing the actual data saved if differences are determined; generating a journal file by recording events representative of user actions performed during a user session, said user actions comprising actions to execute the application program and actions to perform comparisons between master data and actual data; and replaying the journal file which causes the events recorded to be executed to test the application program by executing the application program and performing comparisons between the master data and actual data. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78)
-
Specification