Browse Prior Art Database

Generating Test Cases for % Include Processors

IP.com Disclosure Number: IPCOM000080101D
Original Publication Date: 1973-Oct-01
Included in the Prior Art Database: 2005-Feb-26
Document File: 2 page(s) / 19K

Publishing Venue

IBM

Related People

Healey, MJR: AUTHOR

Abstract

Top-down programming is conveniently achieved with the help of COPY or % INCLUDE statements and a library of program segments. Writing test cases for an include processor which allows deep nesting and segments in a variety of block sizes, record lengths, record formats, data sets and devices becomes complex and tedious, if it is all done manually. The technique described here is suitable for generating self-checking test cases for language processors; the same technique could be applied to testing linkage editors.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 64% of the total text.

Page 1 of 2

Generating Test Cases for % Include Processors

Top-down programming is conveniently achieved with the help of COPY or % INCLUDE statements and a library of program segments. Writing test cases for an include processor which allows deep nesting and segments in a variety of block sizes, record lengths, record formats, data sets and devices becomes complex and tedious, if it is all done manually. The technique described here is suitable for generating self-checking test cases for language processors; the same technique could be applied to testing linkage editors.

An include structure of arbitrary complexity can be represented as a tree:

For example the tree above shows a case where the primary source includes A; A includes B and F; B includes C and D; and D includes E. In practice, structured programs would often be much more complex than this, since a program segment ideally occupies less than a coding sheet, whereas problems to be coded come in all shapes and sizes.

The input to the generator represents the tree as a list containing nested sublists. Opening and closing parentheses denote beginning and ends of segments; integers represent the number of conventional language statements to be generated within segments (or in the primary input at that point). 3 ( 2 ( 1 ( 4 ) 3 ( ( 2 ) 9 ) 4 ) 15 ( 2 ) ) 5 A B C D E F corresponds to the above tree structure. The letters A - F are not actually part of the notation, but they indicate where segments begin.

The generator i...