Method of executing test scripts against multiple systems
AssigneeInternational Business Machines Corporation
InventorsRonald L. Linville, Robert K. Quinn, III
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsRonald L. Linville, Robert K. Quinn, III
Estimating the term…
A method of executing a plurality of tests scripts or one or more test script sets against a plurality of systems to be tested. The method comprises providing an instance of a test script set on a server, writing an initial system value corresponding to an initial system to be tested on a web page file hosted on the server, retrieving the initial system value from the web page file and launching a URL using the initial system value retrieved to execute the test script set against the initial system to be tested. The method further includes overwriting the web page file to change the initial system value to a next system value corresponding to a next system to be tested, retrieving the next system value from the web page file and launching a next URL using the next system value retrieved to execute the test script set against the next system to be tested.
A method of executing a set of automated test scripts against a plurality of systems to be tested, said method comprising the steps of:
A method of executing multiple sets of automated test scripts against a plurality of systems to be tested, said method comprising the steps of:
A computer readable storage medium having program instructions to execute a set of automated test scripts against a plurality of systems to be tested, said program instructions performing the steps of:
Dependencies are inferred from the claim text.
From the US filing history. Foreign family members aren’t listed.
Test management: for test execution, e.g. scheduling of test suites
Computing and data processing
About 1 month of term left · ends 6 Dec 2026 (estimated)
The present invention relates to a method of executing one or more test scripts or one or more test script sets against a plurality of computer systems to be tested.
System integration testing often involves the use of regression testing. Regression testing is the process of testing changes to computer programs to make sure that the older programming still works with the new changes. In large organizations, regression testing is a part of the software development process and is carried out by software professionals or testing specialists. These software professionals develop test sets or test script sets that will test new units of code. All or a subset of the established test sets or test script sets may be reused. When a new version of software is installed, the old test script sets are run against the new version to make sure that all the old capabilities of the software still work. Often organizations need to test the implementation of a software program across multiple computer systems or geographies. Thus, there is a need for a system and method of executing test scripts across multiple computer systems or geographies in a more efficient and economic manner by an organization.
In a first aspect of the invention, there is provided a method of executing a set of automated test scripts against a plurality of systems. The method comprises the steps of providing an instance of the set of automated test scripts on a server, writing to a system-under-test web page file hosted on the server an initial system-under-test value corresponding to an initial system to be tested, retrieving the initial system-under-test value from the system-under-test web page file and launching an initial URL using the initial system-under-test value retrieved to execute the set of automated test scripts against the initial system to be tested. The writing step preferably comprises creating a set-system-under-test script for each of the plurality of systems and executing an initial one of the set-system-under-test script created to generate the system-under-test web page file having the initial system-under-test value. The retrieving step preferably comprises creating a get-system-under-test script for navigating to the system-under-test web page file on the server, adding the get-system script to the beginning of each one of a plurality of test scripts within the set of automated test scripts and executing the get-system-under-test script to retrieve the initial system-under-test value from the system-under-test web page file. The launching step preferably comprises converting the initial system-under-test value to the initial URL and navigating a browser to the initial URL to execute the set of automated test scripts. The method preferably includes the steps of overwriting the system-under-test web page file to change the initial system-under-test value to a next system-under-test value corresponding to a next system to be tested, retrieving the next system-under-test value from the system-under-test web page file and launching a next URL using the next system-under-test value to execute the set of automated test scripts against the next system to be tested. The overwriting step preferably comprises executing another one of the set-system-under-test script created to change the initial system-under-test value to the next system-under-test value on the web page file. The method preferably comprises the steps of repeating the overwriting, retrieving and launching steps until the set of automated test scripts have been executed against each of the plurality of systems to be tested. In a preferred embodiment, the set of automated test scripts are created using a test script execution engine, whereas, the set of automated test scripts are executed, preferably, using a test script execution manager. Furthermore, in a preferred embodiment, the web page file is a static web page file.
The accompanying drawings which are incorporated in and form a part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
FIG. 1 is a flowchart demonstrating a method of executing a set of test scripts against a plurality of systems to be tested, in accordance with an embodiment of the invention.
FIG. 2 is a diagram demonstrating an execution sequence of a set of test scripts against a plurality of systems to be tested, in accordance with an embodiment of the invention.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit and scope of the invention. Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. Reference will now be made in detail to the preferred embodiments of the invention.
In one embodiment, the invention provides a method of executing a test set or a test script set (which is made up of a plurality of individual test scripts) for testing software installed on multiple computer systems. The method comprises providing an instance of a test script set on some type of a storage media, such as a disk or hard drive, preferably, a network drive, and more preferably, on a web server. As used herein, a test script set or test set refers to a set of automated and/or regression test scripts that have been created, preferably, using a commercially available test script execution tool or software. Preferably, each of these automated test scripts are grouped in a test script set, where the test script set is designed to achieve a specific testing goal, for example, to test a new version of an application or to test a specific function in an application. When creating a test script set, preferably, a selection is made as to which of the automated test scripts are to be included in that set. However, in a preferred alternative embodiment, instead of a test script set, a plurality of test scripts (one or more test scripts) are executed against multiple systems. In order to direct an instance of a test script set or test scripts to be executed against multiple systems, separate utility scripts called “set-system-under-test” or “set-system” scripts are created for each one of the computer systems to be tested. Each set-system script generates a data file, more preferably, a web page or web page file (also, referred to as system web page file or system-under-test web page file) that has written on it data or more specifically, a “system value” or a “system-under-test value” that corresponds to a computer system to be tested (that is, one system out of the plurality of systems to be tested). In a preferred embodiment, the web page file is a static web page file, however, the web page file created can be a dynamic web page that holds data specifying which system is to be tested. As used herein, the “system value” represents a mnemonic or code that corresponds to a specific computer system. Further, each computer system is represented by a unique Uniform Resource Locator (URL).
In order to run any of the test scripts or test script sets against a particular computer system, a test script first has to navigate to the URL of that computer system. As such, a second utility script or subroutine called “get-system-under-test” or “get-system” script is created for retrieving the system value corresponding to the computer system to be tested, which has been written by the set-system script onto the web page file. In a preferred embodiment, the get-system script is a subroutine that is added to each of the test scripts within a test script set. It is the get-system script that enables retrieval of the system value corresponding to a system to be tested. In particular, the get-system script navigates to the web page file and reads in the data or system value set by the set-system script. In a preferred embodiment, the system value written in the web page file is a mnemonic or code, which is looked up in a table that contains the corresponding URL (Uniform Resource Locator). Preferably, the system value is converted into the corresponding URL, a browser is navigated to that URL, such that, the URL corresponding to the system value is launched and the test script set is executed against that system. Moreover, if the test script set is to be executed against another computer system, then the appropriate set-system script is executed to overwrite the web page file, such that the initial system value is replaced with a new or next system value corresponding to that another computer system. Further, each of the test scripts within the test script set is serially executed, such that the get-system subroutine is executed first to retrieve the new or next system value for launching a next URL corresponding to that another system, followed by the execution of the actual test script. In a preferred embodiment, the set-system scripts are created using a commercially available test script execution engine or tool, more preferably, using the same engine or tool used for creating the test scripts. Also, the get-system script is created, preferably, using a commercially available test script execution engine or tool, more preferably, using the same engine or tool used for creating the test scripts. In a preferred embodiment, the test scripts, the set-system scripts and the get-system script are created using Mercury's QuickTest® Professional test script execution engine or tool.