Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability
Reexamination Certificate
1998-07-14
2001-12-11
Lee, Thomas (Department: 2183)
Error detection/correction and fault detection/recovery
Data processing system error or fault handling
Reliability and availability
C712S236000, C717S152000, C717S152000, C717S152000, C717S152000, C714S045000, C714S048000, C714S051000
Reexamination Certificate
active
06330692
ABSTRACT:
BACKGROUND OF THE INVENTION
The present invention relates to a method of determining a route to be tested in a load module test and, more particularly, to a method of determining a route to be tested in a load module test which is capable of storing the tested route paths and efficiently executing untested route paths at the time of testing a load module (program).
When a program for solving a large problem is composed, it is usually divided into several processes at the stage of planning the program, the modules obtained as a result of division are programmed by different one or more programmers separately from each other, and the programmed modules are compiled and linked through a linkage editor to produce the program for solving the problem.
Such a programming method adopting a division and group work system produces the following advantages:
(1) It is possible to shorten the time required for programming.
(2) Since it is possible to test the modules separately from each other before they are compiled and linked, debugging is facilitated and an accurate testing is enabled.
(3) It is not necessary to translate all the programs at each testing, and it is enough to pick out only an incomplete module and translate and check it.
FIG. 38
is an explanatory view of the above-described programming method. A problem is divided into four modules A to D, the modules (program modules) are programmed by programmers A to D, respectively, and the program modules are compiled and linked to produce a program for solving the problem.
In this manner, each program module is a partial or whole program which can be modified and replaced without influencing another partial program. There are three types of modules in such a program module. That is, they are (1) a source module, (2) an object module, and (3) a load module, as shown in FIG.
39
. The source module is an input unit to a language translator (compiler), and it is composed of a series of statements written by a programmer. The object module is a module of a machine language which is output from a compiler, and the load module is produced by linking more than one object modules, or an object module and a load module by a linkage editor.
In order to assure the quality of a program, it is essential to test all the route paths of a load module. It is therefore required to execute the testing of all the route paths as quickly as possible. The route path is the minimum branch condition section produced when the source modules constituting the load module are compiled.
However, in a large-scale testing of a load module which is constituted by a plurality of source modules, since the load module contains a large number of branch instructions, subroutine execution instructions, etc., the routes to be tested become complicated. For this reason, it takes a long time to test the routes and, besides, it is sometimes the case that only a specific route path is tested plural times.
It is therefore necessary to extract the information for effectively testing all the route paths and to provide the information to the test executing means. Conventionally, however, there has existed no testing system which is capable of testing a load module in the minimum time by reducing the items to be tested to the minimum. In the prior art, tested route paths are stored, the coverage ratio (=the number of tested route paths/the number of all the route paths) is measured, and on the basis of the coverage ratio information, a tester tests an untested route path from his experience or at random.
SUMMARY OF THE INVENTION
Accordingly, it is an object of the present invention to eliminate the above-described problems in the related art and to provide a method of determining a route to be tested which is capable of efficiently testing all the route paths to be tested in a load module test.
It is another object of the present invention to provide a method of determining a test route to be tested which is capable of efficiently testing all the route paths to be tested including a subroutine in a load module test.
It is still another object of the present invention to provide a method of determining a route to be tested which is capable of executing a higher-quality test by managing the number of untested minimum route patterns for each route pattern in a load module test.
It is a further object of the present invention to provide a method of determining a route to be tested in a load module test which is capable of effectively testing a modified part in a short time when the part of the load module is modified.
It is a still further object of the present invention to provide a method of determining a route to be tested in a load module test which is capable automatically selecting an untested route path so that each route path is tested equally to the utmost, raising the branch coverage ratio and enabling a higher-quality test.
To achieve these ends, in the present invention, an untested route pattern is tested, thereby (a) the current state of the testing of all the route patterns is managed with the untested route pattern changed to a tested route pattern, (b) the current state of the testing of all the route paths is managed with the route paths constituting the untested route pattern changed to tested route paths, and (c) the number of untested route paths for each untested route patterns is managed, and then in the untested route patterns, the one which is constituted by the largest number of untested route paths is determined to be the route pattern to be tested next. The thus-determined route pattern is tested and thereafter, route patterns to be tested are successively determined and tests are executed until there exists no untested route path. In this manner, since route patterns are tested by priority of the number of untested route paths constituting them, it is possible to efficiently test all the route paths.
In the present invention, when there are a plurality of untested route patterns which contain the largest number of untested route paths, the untested route pattern in which the number of steps of execution is the smallest is determined to be the route pattern to be tested next. In this manner, it is possible to efficiently test all the route paths.
In the present invention, with respect to a route pattern containing a route path which calls and executes a subroutine, the number of untested route paths except the route path containing the subroutine and the number of untested route paths in the subroutine are managed, respectively, and the numbers of these untested route paths are added up as the total number of untested route paths in the route pattern. A route pattern which is constituted by the largest number of untested route paths is determined to be the route pattern to be tested next. In this manner, in a load module test containing a process for calling and executing a subroutine, it is possible to effectively test a route path including a subroutine.
In the present invention, (a) when a load module is modified, the route paths which are not influenced by the modification are collected in the form of a block, and a route block is defined with various entry conditions into the block, (b) a route pattern is specified by using route paths and route blocks, (c) a route pattern which is constituted by the largest number of untested route paths and untested route blocks is determined to be the route pattern to be tested next, and (d) route patterns to be tested are successively determined and tests are executed until there exists no untested route path nor untested block. In this manner, when a part of a load module is modified, it is possible to effectively test the modified part in a short time with the combination of the modified part and the unmodified part taken into consideration.
In the present invention, two consecutive route paths are defined as a minimum route pattern and an untested route pattern is tested, thereby (a) the current state of the testing of all the route patterns is managed with the untested route pattern changed to a test
Imamura Tetsuro
Kamuro Shingo
Kubota Ikuko
Moriya Ikunori
Tosaka Hideki
Fujitsu Limited
Lee Thomas
Nguyen Dzung C.
Rosenman & Colin LLP
LandOfFree
Method of determining the route to be tested in a load... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method of determining the route to be tested in a load..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of determining the route to be tested in a load... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2577897