Vous êtes sur la page 1sur 20

79

OSI Conformance Testing ©


D. R A Y N E R O. Introduction
Leader of the Protocol Standards Group, Dioision of Information
Technology and Computin~ National Physical Laboratory, Ted- It is now widely accepted that OSI Confor-
dington, Middelsex TWI I OLW, UK
mance Testing is crucial to the achievement of the
objective of OSI [1]. Standard test suites need to
Now that many international standards for Open Systems be developed for each OSI protocol standard, for
Interconnection (OSI) services and protocols have reached at use by suppliers, users, carriers or third-party test
least the Draft International Standard stage, there is much centres. This should lead to the comparability of
international activity in standardizing OSI conformance test results produced by different testers, and thereby
suites. This new activity is based on the emerging OSI confor-
to the mutual recognition of results which will
mance testing methodology and framework standards being
progressed by ISO and CCITT. This paper presents the major minimize the need for repeated conformance test-
aspects of this methodologyand framework. ing of the same system.
The standardization of conformance test suites
Keywords: Open Systems Interconnection, OSI, Confor- needs to be based upon a standard testing meth-
mance Testing, Protocols, Test Methods, Test Suite Design.
odology and approach to test suite specification.
The International Organization for Standardiza-
tion (ISO) and the International Consultative
Committee for Telephones and Telegraphs
(CCITT) are now working together to produce
just such a common methodology and framework
for conformance testing [2-6] applicable to OSI
standards and similar C C I T T X-series and T-series
recommendations (hereinafter just referred to as
'OSI standards'). ISO has been working on this
since 1984, basing its work on research and devel-
opment which began in 1979. As a consequence,
many of the ideas are now technically mature.
Indeed, the work is already being used as the basis
for standardization of test suites for X.25 termi-
nals, the OSI connection-oriented Transport Pro-
tocol (ISO 8073) and Message Handling Systems
(CCITT X.400 series). In April 1987, work also
Dr. D. Rayner has worked at NPL began in ISO on the standardization of confor-
since 1975 and has been leader of the
Protocol Standards Group at NPL mance test suites for Session, Presentation, Associ-
since 1980. The group has con- ation Control Service Elements, and File Transfer
centrated on protocol conformance
testing since 1979. From 1976 to 1982, Access and Management protocols.
he was closely involved with the Net- The OSI Conformance Testing Methodology
work Independent File Transfer Pro-
tocol (a fore-runner of the OSI FTAM and Framework is being progressed as a 5 part
protocol), having been both secretary standard. Part 1 concerns general concepts and
and later chairman of the FTP Imple-
mentor's Group. He became both BSI Part 2 concerns abstract test suite specification
and ISO rapporteur for OSI confor- (i.e. the specification of tests in a form which is
mance testing in 1983 and as such has led the standardization
in this field. independent of particular real testers and suitable
for standardization). Both of these have now
© UK Crown.
reached the Draft Proposal stage in ISO. They are
the parts required as the basis for conformance
North-Holland test suite standardization. The other 3 parts are
Computer Networks and ISDN Systems 14 (1987) 79-98 less developed; they concern executable test de-
80 D. Rayner / OSI ConformanceTesting

rivation, requirements on protocol implementors, tions into protocol classes, or at a detailed level,
and test laboratory operations. such as the range of values that must be supported
This paper presents the major aspects of the for specific parameters or timers.
methodology and framework, based mostly on They can come in two varieties:
matrial from Parts 1, 2 and 3 of the current drafts (a) those which concern the capabilities to be
of the multi-part standard. included in the implementation of the particu-
lar protocol;
(b) those which concern multi-layer dependencies
1. The Meaning of Conformance in O S I - placing constraints on the capabilities of the
underlying layers of the system.
Conformance in the context of OSI is con- If the static conformance requirements are in-
cerned only with the conformance of implementa- completely specified then all capabilities not ex-
tions and real systems to those OSI standards plicitly stated as static conformance requirements
which specify applicable requirements. Those are to be regarded as optional.
standards include protocol standards (both
single-layer and multi-layer) and transfer syntax 1.3. Dynamic Conformance Requirements
standards.
Throughout most of the OSI protocol standard,
1.1. Conformance Requirements the requirements and options define the set of
allowable behaviours of an implementation or real
There are three ways of looking at conformance system in instances of communication. This set
requirements. defines the maximum capability that a conforming
(1) The conformance requirements in a standard implementation or real system can have within the
can be: terms of the OSI protocol standard. These are the
(a) mandatory requirements: these are to be dynamic conformance requirements.
observed in all cases; Thus, dynamic conformance requirements are
(b) conditional requirements: these are to be all those requirements (and options) which de-
observed if the conditions set out in the termine what observable behauiour is permitted by
standard apply; the relevant OSI protocol standard(s) in instances
(c) options: these can be selected to suit the of communication.
implementation, provided that any re-
quirements applicable to the option are
1.4. Protocol Implementation Conformance State-
observed.
(2) The statements of conformance requirements
ment
in a standard can be stated
(a) positively: they state what shall be done; The protocol implementation conformance
(b) negatively (prohibitions): they state what statement (PICS) is a statement made by the
shall not be done. supplier of an OSI implementation or system,
(3) Conformance requirements fall into two stating the capabilities and options which have
groups: been implemented, and any features which have
(a) static conformance requirements; been omitted. It is needed so that the implementa-
(b) dynamic conformance requirements. tion can be tested for conformance against rele-
These are defined below. vant requirements, and against those requirements
only.
1.2. Static Conformance Requirements
1.5. A Conforming System
Static conformance requirements are those that
define the allowed minimum capabilities of an A conforming system or implementation is,
implementation, in order to facilitate interwork- therefore, one which is shown to satisfy both static
ing. These requirements may be at a broad level, a n d dynamic requirements, consistent with the
such as the grouping of functional units and op- capabilities and options stated in the PICS.
D. Rayner / OS1 ConformanceTesting 81

2. Types of Testing ruing implementations, e.g. as a preliminary to


data interchange.
In principle, the objective of conformance test- Basic interconnection tests are inappropriate:
ing is to establish whether the implementation • as a basis for claims of conformance by the
being tested conforms to the specification in the supplier of an implementation;
relevant standard. Practical limitations make it • as a means of arbitration to determine causes
impossible to be exhaustive, and economic consid- for communications failure.
erations may restrict testing still further. Basic interconnection tests should be standar-
Therefore, four types of testing are dis- dized as either a very small test suite or a subset of
tinguished, according to the extent to which they the conformance test suite. They can be used on
provide an indication of conformance: their own or together with a conformance test
• basic interconnection tests, which provide prima suite.
facie evidence that an implementation under
test (IUT) conforms;
• capability tests, which check that the observable 2.2. Capability Tests
capabilities of the I U T are in accordance with
the static conformance requirements and the
capabilities claimed in the PICS; These provide limited testing of each of the
• behaviour tests, which endeavour to provide as static conformance requirements in a standard, to
comprehensive testing as possible over the full ascertain what capabilities of the I U T can be
range of dynamic conformance requirements observed and to check that those observable capa-
specified by the standard, within the capabil- bilities are valid with respect to the static confor-
ities of the IUT; mance requirements and the PICS.
• conformance resolution tests, which probe in de- Capability tests are appropriate:
pth the conformance of an I U T to particular • to check as far as possible the consistency of the
requirements, to provide a definite y e s / n o PICS with the IUT;
answer and diagnostic information in relation • as a preliminary filter before undertaking more
to specific conformance issues; such tests are in-depth and costly testing;
not standardized. • to check that the capabilities of the I U T are
consistent with the static conformance require-
2.1. Basic Interconnection Tests ments;
• to enable efficient selection of behaviour tests
These provide limited testing of an I U T in to be made for a particular IUT;
relation to the main features in a standard, to • to check that the capabilities of the I U T are
establish that there is sufficient conformance for adequate to meet a particular user's needs;
interconnection to be possible, without trying to • when taken together with behaviour tests, as a
perform thorough testing. basis for claims of conformance.
Basic interconnection tests are appropriate: Capability tests are inappropriate:
• for detecting severe cases of non-conformance; • on their own, as a basis for claims of confor-
• as a preliminary filter before undertaking more mance by the supplier of an implementation;
costly tests; • for testing in detail the behaviour associated
• to give a prima facie indication that an imple- with each capability which has been imple-
mentation which has passed full conformance mented or not implemented;
tests in one environment still conforms in a new • for resolution of problems experienced during
environment (e.g. before testing an (N)-imple- live usage or where other tests indicate possible
mentation, to check that a tested ( N - 1 ) - non-conformance even though the capability
implementation has not undergone any severe tests have been satisfied.
change when linked to the (N)-implementation); Capability tests should be standardized within
• for use by users of implementations, to de- a conformance test suite. They can either be sep-
termine whether the implementations appear to arated into their own test group(s) or merged with
be usable for communication with other confor- the behaviour tests.
82 D. Rayner / 0S1 Conformance Testing

2.3. Behaoiour Tests which incorrect behaviour was already suspected


to occur, and would confirm whether or not the
These test an implementation as thoroughly as suspicions were correct.
is practical, over the full range of dynamic confor- Conformance resolution tests are appropriate:
mance requirements specified in a standard. Since • for providing a y e s / n o answer in a strictly
the number of possible combinations of events confined and previously identified situation (e.g.
and timing of events is infinite, such testing can- during implementation development, to check
not be exhaustive. There is a further limitation, whether a particular feature has been correctly
namely that these tests are designed to be run implemented, or during operational use, to in-
collectively in a single test environment, so that vestigate the cause of problems);
any faults which are difficult or impossible to • as a means for identifying and offering resolu-
detect in that environment are likely to be missed. tion for deficiencies in a current conformance
Therefore, it is possible that a non-conforming test suite.
implementation passes the conformance test suite; Conformance resolution tests are inappropriate:
one aim of the test suite design is to minimize the • as a basis for judging whether or not an imple-
number of times that this occurs. mentation conforms overall;
Behaviour tests are appropriate, when taken • as a condition for procurement.
together with capability tests, as a basis for the Conformance resolution tests are not standar-
conformance assessment process. dized.
Behaviour tests are inappropriate for resolution
of problems experienced during live usage or where 2.5. Other Types of Testing
other tests indicate possible non-conformance even
though the behaviour tests have been satisfied. In addition to conformance testing, other types
Behaviour tests should be standardized as the of testing have been proposed including:
bulk of a conformance test suite. • inter-operability testing to determine whether
two IUTs will actually inter-operate and if not
2.4. Conformance Resolution Tests why not;
• performance tests to measure the performance
These provide diagnostic answers, as near to characteristics of an IUT, such as its through-
definite as possible, to the resolution of whether put and responsiveness under various condi-
an implementation satisfies particular require- tions;
ments. Because of the problems of exhaustiveness • robustness tests to determine how well an IUT
noted above, the definitive answers are gained at recovers from various error conditions.
the expense of confining tests to a narrow field. There may be some overlap between these types
The test architecture and test method will nor- of test and conformance tests and where there is
mally be chosen specifically for the requirements then such tests could be extracted as a subset of a
to be tested, and need not be ones that are gener- full conformance test suite. However, where the
ally useful for other requirements; they may even test purpose is not concerned with conformance,
be ones that are regarded as being unacceptable then such tests fall outside the current scope of
for generally specified conformance tests, e.g. in- standardization.
volving implementation-specific methods using,
say, the diagnostic and debugging facilities of the
specific operating system. 3. Protocol Implementation Extra Information for
The distinction between behaviour tests and Testing (PIXIT)
conformance resolution tests may be illustrated by
the case of an event such as a Reset. The be- In order to test a protocol implementation, the
haviour tests may include only a representative Test Laboratory will require information relating
selection of conditions under which a Reset might to the IUT and its testing environment in addition
occur, and may fail to detect incorrect behaviour to that provided by the appropriate PICS. This
in other circumstances. The conformance resolu- 'Protocol Implementation eXtra Information for
tion tests would be confined to conditions under Testing' (PIXIT) will be provided by the client
D. Rayner / OSI Conformance Testing 83

submitting the implementation for testing. Protocol


The PIXIT may contain the following informa- Standards
tion:
(a) information needed by the test operator in
~ Dnalysi iorPlC~S ,
'
:1 Static
conformance
' I Requirements
order to be able to run the appropriate test Dynamic
Conformance
suite on the specific system (e.g. information
related to the test method to be used to run
the test cases, addressing information): Test Selection Conformance
i ~ Test Suite
(b) information already mentioned in the PICS
i

and which needs to be made precise (e.g. a Basic Interconnection Testing i


(optional)
timer value which is declared as a parameter
Capability Testing
in the PICS should be specified in the PIXIT);
(c) information to help determine which capabil- ........... Be h'avi~ ~%~st'i n'g........... /
ities stated in the PICS as being supported are 'I Analysis of Results I
testable and which are untestable;
(d) other administrative matters (e.g. the IUT
1
Final Conformance Review
identifier, reference to the related PICS). Synthesis and Conclusion
Test Report Production
The PIXIT should not conflict with the ap-
propriate PICS.
As the type of information required will vary
considerably according to the needs of individual Fig. 1. Test Procedure Outline.
real tester as well as test architectures and proto-
col layers, it is envisaged that responsibility for the
design of the PIXIT proforma will primarily re- It is also necessary to convert the abstract test
side with the Test Laboratory. However, guide- cases into corresponding executable test cases sui-
lines may be provided by the test realizers and table for the intended real tester. This convertion
protocol layer conformance testing standardiza- can be done before or after the selection and
tion groups. parameterization. The result of conversion, selec-
tion and parameterization is called a para-
meterized executable test suite, which is the actual
4. Test Procedure Overview test suite to be run.
The third step is the execution of the para-
It is important to understand how conformance meterized executable test suite. This can be thought
testing should relate to static and dynamic confor- of as comprising three phases: basic interconnec-
mance requirements and the PICS. There are many tion testing, which is optional, capability testing,
possible ways of interleaving various phases of and behaoiour testing,. If executed, basic intercon-
testing, enabling the selection of later tests to be nection testing can detect severe cases of noncon-
based on the results of earlier tests and paper formance, and thus passing this phase gives confi-
studies. However, Fig. 1 is used by ISO and dence that it is worthwhile engaging in more com-
CCITT to give an outline of the conformance test prehensive (and therefore more expensive) testing.
procedure. Capability testing is designed to ascertain the
There are five main steps in this procedure. The validity of the PICS with respect to the actual,
first step is the analysis of the PICS accompany- observable capabilities of the IUT. Behaviour test-
ing the IUT. The PICS will be analysed for its ing is, however, the main activity in this step,
own consistency, and its consistency with the static concentrating on checking the correct behaviour
conformance requirements specified in the rele- of the protocol implementation in a large repre-
vant standard(s). sentative sample of instances of communication.
The second step is test selection, in which the These will cover both simple and complex situa-
PICS and PIXIT are used to select the appropriate tions, involving both correct and erroneous be-
test cases from the conformance test suite and haviour on the part of the communicating partner.
parameterize them using the PIXIT information. It cannot be proved by testing that an implemen-
84 D. Rayner / OSI Conformance Testing

tation conforms dynamically in all instances of that associated with the matching foreseen out-
communication. However, it can be shown by come. If the observed outcome is unforeseen then
testing that an implementation consistently con- the abstract test suite specification will state what
forms dynamically in representative instances of default verdict shall be assigned.
communication. The verdict will be pass, fail or inconclusive:
The fourth step is the analysis of the results. • pass means that the observed outcome satisfies
This may in fact be interleaved with the execution the test purpose and is completely valid with
of different groups of test cases, but it is easiest to respect to the conformance requirements;
think of it coming after the test execution step is • fail means that the observed outcome is invalid
over. The results will be analysed with respect to with respect to the conformance requirements;
both the test purpose of each test case and the three categories of fail are used to distinguish
validity of the behaviour observed (i.e. with re- between those outcomes which fail with respect
spect to the relevant conformance requirements). to the test purpose, those which satisfy the test
This is discussed in more detail below. purpose despite the error, and those which are
The fifth step is the final conformance review, inconclusive with respect to the test purpose;
which involves a synthesis of the results of the • inconclusive means that the observed outcome
behaviour tests with what has been learned from is valid with respect to the conformance re-
the analysis of the PICS and the results of the quirements but inconclusive with respect to the
capability tests. It can then be seen whether the test purpose.
results are consistent with the capabilities stated The verdicts made in respect of individual test
in the PICS. A conclusion on the conformance of cases will be synthesised into an overall summary
the I U T to the requirements of the standard(s) can for the I U T based on the test case executed.
then be reached. These results are recorded in The results will be documented in a set of
standardized Conformance Test Reports, as dis- conformance test reports. These reports will be of
cussed below. two types: a System Conformance Test Report
At any state in this process the test laboratory (SCTR), and a Protocol Conformance Test Report
and its client can agree to abandon the process. (PCTR).
However, even if it is abandoned it is recom- The SCTR, which will always be provided,
mended that some sort of test report should be gives an overall summary of the conformance
produced to record the results achieved, such as status of the system under test (SUT), with respect
they are, but it must be clear that such a test to its single- or multi-layer IUT. A proforma for
report is not a full conformance test report. the SCTR will be standardized in Part 5 of the
Methodology and Framework standard [6].
4.1. Analysis of Results The P C T R is specific to each protocol tested in
the SUT; it documents all of the results of the test
The observed outcome is the series of events cases giving references to all input to and output
which occurred during execution of a test case; it from the conformance assessment process. If it is
includes all input to and output from the I U T at necessary to repeat the conformance assessment
the points of observation and control. process, this document should give all the infor-
The foreseen outcomes are identified and de- mation necessary to carry out such a re-assess-
fined by the abstract test case specification taken ment, and also give the results against which the
in conjunction with the protocol standard. For new results can be compared. A proforma for the
each test case, there may be one or more foreseen P C T R should be standardized with the related
outcome(s). Foreseen outcomes are defined prim- conformance test suite.
arily in abstract terms.
A verdict is a statement of pass, fail or incon-
5. Test Suite Production
clusive to be associated with every foreseen out-
come in the abstract test suite specification. The 5.1. Test Suite Structure
analysis of results is performanced by comparing
the observed outcomes with foreseen outcomes. Test suites have a hierarchical structure (see
The verdict assigned to an observed outcome is Fig. 2) in which a key level is the test case. Each
D. Rayner / 0S1 Conformance Testing 85

test case has a narrowly defined purpose, such as (d) includes a description of the initial state in
that of verifying that the I U T has a certain re- which the test body should start, in lieu of a
quired capability (e.g. the ability to support cer- preamble;
tain packet sizes) or exhibit a certain required (e) need not describe the postamble.
behaviour (e.g. behave as required when a particu- A generic test suite (i.e. a test suite composed of
lar event occurs in a particular state). generic test cases) has the coverage of the set or a
Within a test suite, nested test groups are used superset of all possible abstract test suites for a
to provide a logical ordering of the test cases. Test particular protocol.
groups may be nested to an arbitrary depth. They An abstract test case is derived from a generic
may be used to aid planning, development, under- case and the relevant protocol specification; it:
standing or execution of the test suite. (a) specifies the test case in terms of a particular
Test cases are modularized by using named test method;
subdivisions called test steps. Each test case com- (b) adds a more precise specification for se-
prises at least one test step: the series of events quences of events which are only described
covered by the test purpose (test body). It may informally in the generic test case;
include further test steps to put the I U T into the (c) adds the sequences of test events required to
state required for the test body to start from (the achieve the objectives of the preamble and
preamble) or to tidy up after the test body has postamble of the generic test case using a
finished (the postamble). Test steps may be nested specialized notation.
to an arbitrary depth. An executable test case is derived from an ab-
All test steps consist of a series of test events stract test case, and is in a form which allows it to
(e.g. the transfer of a single P D U or ASP to or be run on a real tester for testing a real implemen-
from the IUT). tation.

5.2. Types of Test Case 5.3. Main Steps of Test Suite Production Process

Three types of test case are defined: generic, In order to present the requirements and gen-
abstract and executable. eral guidance for abstract test suite specification,
A generic test case is one which: it is useful to assume a normal form of the process
(a) provides a refinement of the test purpose; of test suite production. Abstract test suite desig-
(b) specifies the sequences of test events (paths) in ners are not required to follow this normal form
the test body which correspond to verdicts of exactly, but are required to produce abstract test
' pass', ' fail' and 'inconclusive', using a special- suites which could have been produced by this
ized notation; process. Thus, they are recommended to use a
(c) is used as the common root of corresponding similar process involving the same steps but possi-
abstract test cases for different abstract test bly in a different order.
suites for the same protocol; Thus, the abstract test suite production process
is assumed to be as follows:
Test Suite
(a) study the relevant standard(s) to determine
what the conformance requirements (including
, ,
options) are which need to be tested, and what
: : : Libraries of
Common needs to be stated in the PICS;
Test Steps
Test Groups (b) decide on the test groups which will be needed
lllt]ll
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . .
to achieve the appropriate coverage of the
Test Cases conformance requirements and refine the test
groups into sets of test purposes;
(c) specify generic test cases for each test purpose,
Test Steps using some appropriate test notation;
. . . . ll Test Events
lLI] (d) choose the test method(s) for which the com-
plete abstract test cases need to be specified,
Fig. 2. Test Suite Structure. and decide what restrictions need to be placed
86 D. Rayner / OSI Conformance Testing

on the assumed capabilities of the testers and addendum to that standard, or in exceptional cir-
test coordination procedures; cumstances as an annex to the conformance test
(e) choose a test notation and in it specify the suite standard.
complete abstract test cases, including the test
step structure to be used;
(f) specify the inter-relationships among the test 7. Abstract Test Suite Structure
cases and those between the test cases and the 7.1. Basic Requirements
PICS, in order to determine the restrictions on
the selection of test cases for execution and on An abstract conformance test suite comprises a
the order in which they can be executed; number of test cases. The test cases are grouped
(g) consider the procedures for maintaining the into test groups, nested if necessary.
abstract test suite.
7.2. The Test Group Structure

6. Determining the Conformance Requirements and In order to ensure that the resulting confor-
PICS mance test suite provides adequate coverage of the
relevant conformance requirements, the test suite
Before a conformance test suite can be speci- designer is advised to design the test suite struc-
fied, the test suite designer must first determine ture in terms of nested test groups in a top down
what the conformance requirements are for the manner. There are many ways of doing this; no
relevant standard(s) and what is stated in the one way is necessarily right and the best approach
PICS proforma concerning the implementation of for one test suite might not even be appropriate
those standard(s). for another. Nevertheless, the test suite designer
Part 2 of the Methodology and Framework should ensure that the test suite includes test cases
standard [3] specifies the requirements to be met for each of the following categories where rele-
by protocol specifiers as a prerequisite to the vant:
production of a conformance test suite for a par- (a) capability tests (for static conformance re-
ticular protocol. It also gives additional guidance quirements);
for the production of new OSI protocol standards (b) behaviour tests of valid behaviour;
to improve the clarity of their conformance re- (c) behaviour tests of syntactically invalid be-
quirements. These requirements and guidance were haviour;
based on the U K input of a published conference (d) behaviour tests of inopportune behaviour
paper [7]. (i.e. syntactically valid events occurring at the
In practice early OSI standards might not con- wrong time);
tain a clear specification of all the relevant confor- (e) tests focusing on PDUs sent to the IUT;
mance requirements. In particular, the static con- (f) tests focusing on PDUs received from the
formance requirements might be badly specified IUT;
or even omitted. In such cases, the test suite (g) tests focusing on interactions between what is
designer is advised to try to progress an amend- sent and received;
ment or addendum to the relevant standard(s) to (h) tests related to each mandatory protocol fea-
clarify the conformance requirements. In the ab- ture;
sence of the conformance requirements being (i) tests related to each optional feature which is
clarified, then the test suite designer is recom- implemented;
mended to adopt as a short-term solution the (j) tests related to each protocol phase;
assumption that everything which is not explicitly (k) variations in the test event occurring in a
stated to be mandatory or conditional is optional. particular state;
The test suite standard then needs to state clearly (1) timing and timer variations;
what the implications of this are. (m) PDU encoding variations;
If no PICS proforma is included in a relevant (n) variations in values of individual parameters;
protocol standard, the test suite designer must (o) variations in combinations of parameter val-
provide a PICS proforma to be processed as an ues.
D. R a y n e r / OSI Conformance Testing 87

Table 1

A. Capability tests
A.1 Mandatory features
A.2 Optional features said by the PICS to be supported
B, Behaviour tests: response to valid behaviour by peer
B.1 Connection establishment phase (if relevant)
B.I.1 Focus on what is sent to the IUT
B.I.I.1 Test event variation in each state
B.l.l.3 Timing/timer variation
B.1.1.3 Encoding variation
B.l.l.4 Individual parameter value variation
B.l.l.5 Combination of parameter values
B.1.2 Focus on what is received from the IUT
- s u b s t r u c t u r e d as B. 1,1
B.1.3 Focus on interactions
- s u b s t r u c t u r e d as B . 1 . 1
B.2 Data transfer phase
- s u b s t r u c t u r e d as B . 1
B.3 Connection release phase (if relevant)
- substructured as B.1
C. Behaviour tests: response to syntactically invalid behaviour by peer
C.1 Connection establishment phase (if relevant)
C.1.1 Focus on what is sent to the IUT
C.I.I.1 Test event variation in each state
C.1.1.2 Encoding variation of the invalid event
C.1.1.3 Individual invalid parameter value variation
C.1.1.4 Invalid parameter value combination variation
C.1.2 Focus on what the IUT is requested to send
C.1.2.1 Individual invalid parameter values
C.1.2.2 Invalid combinations of parameter values
C.2 Data transfer phase
- substructuredas C.1
C.3 Connection release phase (if relevant)
- s u b s t r u c t u r e d as C. 1
D. Behaviour tests: response to inopportune events by peer
D.1 Connection establishment phase (if relevant)
D.I.1 Focus on what is sent to the IUT
D.I.I.1 Test event variation in each state
D.1.1.2 Timing/timer variation
D.l.l.3 Special encoding variations
D.l.l.4 Major individual parameter value variations
D.1.1.5 Variation in major combination of parameter values
D.1.2 Focus on what is requested to be sent by the IUT
- s u b s t r u c t u r e d as D , I . 1
D.2 Data transfer phase
- s u b s t r u c t u r e d as D . 1
D.3 Connection release phase (if relevant)
- s u b s t r u c t u r e d as D . 1

This list is not exhaustive; additional categories suitable structure for a single-layer test suite.
might be needed to ensure adequate coverage of If the test suite is to cover more than one layer,
the relevant conformance requirements for a then a single-layer test suite structure such as this
specific test suite. Furthermore, these categories could be replicated for each layer concerned. In
overlap one another and it is the task of the test addition, a correspondingly detailed structure
suite designer to put them into an appropriate could be produced for testing the capabilities and
hierarchical structure. Table 1 is an example of a behaviour of multiple layers taken as a whole,
88 D. Rayner / 0S1 Conformance Testing

including the interaction between the activities in very slow response for each relevant type of
adjacent layers. PDU;
(d) for test groups concerned with encoding varia-
7.3. Test Case Purposes tions:
• at least one test purpose for each relevant
The test suite designer must ensure that, for kind of encoding variation per relevant P D U
each test case in a conformance test suite, there is type;
a clear statement of the test purpose. It is sug- (e) for test groups concerned with valid individual
gested that these test purposes should be produced parameter values:
as the next refinement of the test suite after its • for each integer parameter, test purposes
structure in terms of test groups has been defined. concerned with the boundary values and
The test purposes could be produced directly from one randomly selected mid-range value;
studying those clauses in the relevant standard(s) • for bitwise parameters, test purposes for as
which are appropriate to the test group concerned many values as practical, but not less than
For some test groups the test purposes might be all the ' n o r m a l ' or common values;
derivable directly from the protocol state table; • for other parameters, at least one test pur-
for others, they might be derivable from the P D U pose concerned with a value different from
encoding definitions or the descriptions of particu- what is considered ' n o r m a l ' or default in
lar parameters, or from text which specifies the other test groups;
relevant conformance requirements. Alternatively, (f) for test groups concerned with invalid individ-
the test suite designer could employ a formal ual parameter values:
description of the protocol(s) concerned and de- • for each integer parameter, test purposes
rive test purposes from that by means of some concerned with invalid values adjacent to
automated approach. the allowed boundary values plus one other
Whatever method is used to derive the test randomly selected invalid value;
purposes, the test suite designer should ensure that • for bitwise parameters, test purposes for as
they provide an adequate coverage of the confor- many invalid values as practical;
mance requirements of the standard(s) concerned. • for all other types of parameter, at least one
There should be at least one test purpose related test purpose per relevant parameter;
to each distinct conformance requirement. (g) for test groups concerned with combinations
In addition, the following example gives gui- of parameter values:
dance on what 'adequate coverage' might mean: • at least one test purpose per 'critical' value
(a) for capability test groups: pair (representing a multi-dimensional
• at least one test purpose per relevant fea- boundary);
ture; • at least one test purpose per pair of inter-re-
• at least one test purpose per relevant P D U lated parameters to test a random combina-
type and each major variation of each such tion of relevant values.
type, using ' n o r m a l ' or default values for
each parameter; 7.4. Test Notation
(b) for test groups concerned with test event vari-
ation in each state: Once the test purposes have been defined, the
• at least one test purpose per relevant test cases can be written in a test notation. It is
state/event combination; recommended that generic test cases are produced
(c) for test groups concerned with timers and first. In these just the test body, the heart of the
timing: test case, will be written in a test notation. Ab-
• at least one test purpose concerned with the stract test cases, on the other hand, will be com-
expiry of each defined timer; pletely defined in a test notation.
• at least one test purpose concerned with ISO and C C I T T have defined an informal test
very rapid response for each relevant type notation for this purpose: the Tree and Tabular
of PDU; Combined Notation (TTCN) [8]. T T C N was origi-
• at least one test purpose concerned with nally designed for human readability, with the
D. Rayner / OSI Conformance Testing 89

ability to define all the relevant paths through a within the system under test or in a system
test case and assign verdicts to each. It has now remote from the system under test - if the
been enhanced by the addition of a BNF syntax latter then the ASPs or PDUs are dis-
description which serves as both a means of clari- tinguished by the addition of a double-quote
fying the human readable tabular notation and character (").
also as the basis of a machine-processable version Complete control and observation of the ( N -
which can be used as a transfer syntax when test 1)-ASPs (or ( N - 1)-ASP"s) will include control
suites are transferred between systems. and observation of the ( N ) - P D U s (or ( N ) -
There are three main sections to a T T C N PDU"s), but not vice versa.
specification: declarations, the dynamic part and It is possible that the ASP activity above the
constraints. The declaration part is used to declare IUT might be neither controllable nor observable,
test suite parameters, the points of control and directly or indirectly, in which case this activity is
observation, and the test events. The dynamic part said to be hidden. It is, however, assumed that the
includes behaviour descriptions which use a tree ( N - 1 ) - A S P activity will at least be indirectly
notation, labels, references to constraints, verdict observable and controllable, via some real means
assignments and synchronization requirements. of communication (e.g. via ( N - 1)-ASP"s). Thus
The constraints part can use either sequences of when the ( N - 1 ) - A S P s are neither controllable
numeric or character values, or the standard ab- nor observable directly, conformance testing can
stract syntax notation, ASN.1 [9], to describe in only be carried out if the ( N - 1)-service is pro-
detail the encoding of PDUs and their parameters. vided sufficiently reliably for control and observa-
tion to take place remotely.
It is important to make the distinction between
8. Abstract Test Methods the interactions which are controlled and ob-
served, and the subset of those observations on
8.1. Control and Observation and Abstraction which judgement is passed. Judgement can only
be passed on whether or not the conformance
The ISO abstract testing methodology is based requirements are being met. This will usually apply
upon the OSI reference model. Abstract test meth- to the PDUs exchanged rather than the particular
ods are described in terms of what outputs from realizations of ASPs. However, the reason for
the IUT are observed and what inputs to it can be wishing to control ASPs is to t r y to determine
controlled. More specifically, an abstract test more precisely which PDUs should be exchanged
method is described by identifying the points in a particular test.
closest to the IUT at which control and observa- The virtue of expressing control in terms of
tion are specified. ASPs is that this is an abstract form of specifica-
The OSI protocol standards define allowed be- tion which does not unduly hmit the freedom of
haviour of a protocol entity (i.e. the dynamic test laboratories to implement the tests in differ-
conformance requirements) in terms of the PDUs ent ways using whatever interfaces are accessible
and the abstract service primitives (ASPs) both externally, provided that the required degree of
above and below that entity. Thus the behaviour control and observation is available.
of an (N)-entity is defined in terms of the (N)- Associated with this abstract view of control
ASPs and ( N - 1)-ASPs (the latter including the and observation, there needs to be a correspond-
(N)-PDUs). Each of these two sets of interactions ingly abstract view of the testers which perform
could be observed and controlled from several the control and observation. They are referred to
different points, locally or externally. as the lower and upper testers. The lower tester
The possible points of observation and control (LT) is the means for providing control and ob-
are identified by three factors: servation of events which approximate to what the
(a) whether it is the ASPs or PDUs which are IUT sees at its lower SAP (i.e. the ( N - 1)-ASPs,
observed and controlled; ( N - 1 ) - A S P " s , ( N ) - P D U " s , etc). The upper tes-
(b) the layer identity of the ASPs or PDUs con- ter (UT) is the means for providing control and
cerned; observation of events which approximate to what
(c) whether they are controlled and observed the IUT sees at its upper SAP (i.e. the (N)-ASPs,
90 1). Rayner / OSI Conformance Testing

( N + 1)-ASPs, etc). In addition, there is the con- testing a multi-layer IUT is by incremental use of
cept of test coordination procedures (TCPs) which embedded methods, starting at the lowest layer
are the rules for cooperation between upper and and working up to the top.
lower testers during testing. The external test methods vary according to
Unfortunately, not all events or states defined their ability to define a test management protocol
in protocol standards can be controlled and ob- (TMP) to carry out the test coordination proce-
served by an upper tester which can only talk in dures, or to express the test coordination proce-
terms of ASPs. Therefore, the concept of abstract dures only in terms of requirements.
local primitive (ALP) has been introduced. An There may seem to be rather too many test
ALP is an abbreviation for a description of the methods, but already in practice all the single-layer
control a n d / o r observation to be performed by methods and the external embedded methods are
the upper tester, which cannot be expressed in being used. Furthermore, the standardization of
terms of ASPs but which relates to the events or these methods aims to enable test suite designers
states defined within the relevant protocol stan- to use the most appropriate method for their
dard(s). A typical ALP might be an abbreviation circumstances, rather than to restrict them to a
for 'do whatever is necessary to get the IUT to few possibly inappropriate methods.
send an XYZ-PDU', or 'put the IUT into the
busy state'. The PIXIT is used to determine which 8.3. Single-layer Test Methods for Single-layer IUTs
ALPs can be supported by an SUT, and therefore
which of the otherwise hidden protocol states and For single-layer test methods, the abstract
events are testable. model of the IUT is called the (N)-entity under
test.
8.2. Test Method Overview
8. 3.1. The Local Single-Layer Test Method
The two main classes of end-system test meth- The Local Single-layer (LS) abstract test method
ods are local and external. Local test methods are defines the points of control and observation as
characterised by observation and control being being at the service boundaries above and below
specified in terms of events occurring within the the (N)-entity under test. The test events are
SUT, at the layer boundaries immediately above specified in terms of (N)-ASPs above the IUT
and below the IUT. External test methods, on the and ( N - 1)-ASPs and ( N ) - P D U s below the IUT,
other hand, are characterised by the observation as shown in Fig. 3. In addition ALPs may be used
and control of PDUs taking place externally from as test events. Abstractly, a lower tester is consid-
the SUT, on the other side of the underlying ered to observe and control the ( N - 1)-ASPs and
service provider from the IUT. The local test ( N ) - P D U s while an upper tester observes and
methods are really only applicable to in-house controls the (N)-ASPs and ALPs. The require-
testing by suppliers, whereas the external test ments to be met by test coordination procedures
methods are also applicable to testing carried out used to coordinate the realizations of the upper
by users and third party test centres. They also and lower testers are defined in the abstract con-
have the advantage of being applicable to a realis- formance test suites, although the test coordina-
tic communications environment. tion procedures themselves are not.
There are three types of external test method:
distributed, coordinated and remote. Each comes in
three variant forms: single-layer, multi-layer and
embedded. Single-layer methods are designed for
testing a single-layer without reference to the layers
above it. Multi-layer methods are designed for TestI ~ASPs
testing a multi-layer IUT as a whole. Embedded
methods are designed for testing a single layer ](NI-PDUs
within a multi-layer IUT, using the knowledge of
what protocols are implemented in the layers above
~ -ASPs

the layer being tested. In fact, the preferred way of Fig. 3. The LS Test Method.
D. Rayner / OSI Conformance Testing 91

and lower testers. There is only a single point of


control and observation, at the opposite side of
ASPs the ( N - 1)-Service provider from the (N)-entity
under test. Test events are specified in terms of
( N - 1)-ASP"s, ( N ) - P D U s and test management
Service Provider PDUs, as shown in Fig. 5. ALPs are not needed as
test events in this method because the same effect
Fig. 4. The DS Test Method. can come from a suitably defined TM-PDU.
For lower layers (1-3) where it may be unre-
alistic to specify observation and control of ( N -
8. 3.2. The Distributed Single-Layer Test Method
1)-ASP"s, the observation and control will be
The Distributed Single-layer (DS) abstract test
specified in terms of TM-PDUs, ( N ) - P D U s and
method defines the points of control and observa-
when necessary the state of the underlying connec-
tion as being at the service boundaries above the
tion.
(N)-entity under test and at the opposite side of
the ( N - 1)-Service Provider from the (N)-entity
8. 3.4. The Remote Single-layer Test Method
under test. The test events are specified in terms
The Remote Single-layer (RS) abstract test
of (N)-ASPs above the IUT and ( N - 1 ) - A S P " s
method defines the point of control and observa-
and ( N ) - P D U s remotely, as shown in Fig. 4. In
tion as being on the opposite side of the ( N - 1)-
addition ALPs may be used as test events. Ab-
Service Provider from the (N)-entity under test.
stractly, lower and upper testers are again consid-
The test events are specified in terms of the ( N -
ered to observe and control the behaviour at the
1)-ASP"s and ( N ) - P D U s remotely, as shown in
respective points. The requirements to be met by
Fig. 6. In addition ALPs may be used as test
the test coordination procedures are again defined
events. Some requirements for test coordination
in the abstract conformance test suites, although
procedures may be implied or informally ex-
the procedures themselves are not.
pressed in the abstract conformance test suites,
For lower layers (1-3) where it may be unre-
but no assumptions are made regarding their
alistic to specify observation and control of ( N -
feasibility or realization.
1)-ASP"s, the lower tester observation and control
will be specified in terms of ( N ) - P D U s and when For the lower layers (1-3) where it is unrealistic
to specify observation and control of ( N - 1 ) -
necessary the state of the underlying connection.
The observation and control to be performed ASP's, the observation and control will be speci-
by the lower tester can optionally be specified in fied in terms of ( N ) - P D U s and when necessary
the state of the underlying connection.
terms of (N)-ASP"s where this will reduce the size
ALPs are particularly important in this method,
of the test case specification without loss of re-
as they provide the only means of specifying up-
quired precision.
per tester control over IUT initiated PDUs. Also
the only observations above the IUT that can be
8.3.3. The Coordinated Single-layer Test Method
The Coordinated Single-layer (CS) abstract test expressed in this method are those expressable as
method is an enhanced version of the DS method, ALPs. This is a major difference between this and
using a standardized upper tester and the defini- the DS and CS test methods.
tion of a test management protocol to realize the
test coordination procedures between the upper

:~]~' I_P.
roceduresi ;:::
L__~-(NI-PDU-s~
l (~-')-"S~'' I I
Service Provider Service Provider

Fig. 5. The CS Test Method. Fig. 6. The RS Test Method.


92 D. Rayner / OSI ConformanceTesting

8.4. Multi-layer Test Methods for Multi-layer IUTs


(LM, DM, CM, RM)

Multi-layer testing consists of testing all the


layers of a multi-layer IUT as a whole, when the
combined allowed behaviour of the multi-layer
implementation must be known, without control-
ling or observing any of the inter-layer boundaries I I I (N) I I I I ON) I
within the IUT. (N-I )- Service Provider (N-l)- Service Provider

The Local Multi-layer (LM) test method is like


the LS test method but the IUT goes from layer (a) Example of DSE test method: (b) Example of CSE test method:
testing (N+l)-protocol in testing (N+l)-protocol in
( N ) to ( N + n). Hence the test events are speci- n-layer IUT n-layer rUT
fied in terms of ( N + n ) - A S P s and ALPs above
the IUT and ( N - 1 ) - A S P s and ( N ) to ( N + n)- Fig. 7. The EmbeddedTest Methods.
PDUs below the IUT.
The three external multi-layer test methods
(DM, CM and RM) are like the corresponding method uses the same points of control and ob-
single-layer test methods (DS, CS and RS, respec- servation as the LM test method for the same set
tively) but for an IUT which goes from layer ( N ) of layers. The test events will also be specified in
to ( N + n). Thus for the DM test method, the test the same terms as for the LM test method. The
events are specified in terms of ( N + n)-ASPs and difference is that the LSE test method con-
ALPs above the IUT and ( N - 1)-ASP"s and ( N ) centrates on a single-layer at a time, whereas the
to ( N + n ) - P D U s remotely. For the CM test LM test method tests the multi-layer IUT as a
method, the test events are specified in terms of whole.
( N - 1 ) - A S P " s , ( N ) to ( N + n)-PDUs and TM- In the Distributed Single-layer Embedded
PDUs; the test management protocol should be (DSE) test method for layer ( N + i) within a
designed to operate over the ( N + n ) - S e r v i c e , multi-layer IUT from the layer ( N ) to ( N + n) the
where ( N + n) is the highest layer in the IUT. For points of observation and control are at the service
the RM test method, the test events are specified boundary above the IUT and at the opposite side
in terms of ALPs above the IUT and ( N - 1 ) - of the service provider from the IUT, as illustrated
ASP"s and ( N ) to ( N + n)-PDUs remotely; some in Fig. 7(a). The test events are specified in terms
requirements for test coordination procedures may of ( N + n ) - A S P s and ALPs above the IUT and
be implied or informally expressed, but no as- ( N + i - 1)-ASP"s and ( N + i) to ( N + n)-PDUs
sumptions are made regarding their feasibility or remotely. For the top layer in the multi-layer IUT,
realization. ( N + n), this method is the same as the DS test
method.
8.5. Single-layer Testing of Multi-layer IUTs or The Coordinated Single-layer Embedded (CSE)
SUTs (Embedded Methods) test method is a cross between the CM and DSE
test methods, in which the test events are specified
In embedded single-layer test methods testing in terms of ( N + i - 1)-ASP"s, ( N + i) to ( N + n)-
is specified for a single-layer within a multi-layer PDUs and TM-PDUs, as illustrated in Fig. 7(b).
IUT, including the specification of the protocol The test management protocol is designed to oper-
activity in the layers above the one being tested ate over the ( N + n)-Service.
but without specifying control or observation at The Remote Single-layer Embedded (RSE) test
service boundaries within the multi-layer IUT. method uses the same point of control and ob-
Thus in a multi-layer IUT from layer ( N ) to servation as the RS test method for the same
( N + n), abstract test cases for testing layer ( N + i) layer, but differs from the RS test method in that
include the specification of the PDUs in layers ( N + i + 1) to ( N + n)-PDUs are specified in test
( N + i + 1) to ( N + n) as well as those in layer cases for layer ( N + i).
(N+i). Successive use of a single-layer embedded test
The Local Single-layer Embedded (LSE) test method (from layer ( N ) to ( N + n ) ) is called
D. Rayner / OSI ConformanceTesting 93

incremental testing of a multi-layer IUT. 9.2. The Lower Tester


The embedded single-layer test methods are
defined for a single layer under test in a multi-layer The realization of the lower tester should have
IUT. This does not mean that there cannot be the ability to control the generation of ASPs and
accessible service boundaries within the multi-layer PDUs, and to observe and store the outcomes, as
IUT, just that no such boundaries are used in the defined in the abstract test cases.
test methods. Thus, all layers between the layer The realizations of lower testers can be classi-
under test and the highest layer for which abstract fied architecturally as follows:
test cases specify P D U s as test events are regarded (a) external lower tester - observing and control-
as being part of the multi-layer IUT. ling the I U T on the other side of the underly-
ing service-provider - see Fig. 8;
(b) local lower tester - observing and controlling
9. Real Testers the lower boundary of the I U T directly - see
Fig. 9;
9.1. Introduction (c) hybrid lower tester - capable of observing and
controlling the I U T both from the other side
A real tester is a realization of the lower tester, of its underlying service provider and directly
together with either a realization or specification at its lower boundary - this category is of
(as appropriate) of an upper tester and the specifi- more theoretical than practical interest but
cation of the way in which the test coordination could be build by enabling an external lower
procedures are to be realized. tester to interact with a probe within the SUT
It is important to recognise that there is not a positioned at the boundary in question - see
one-to-one mapping between abstract test meth- Fig. 10.
ods and real testers. Each abstract test method can External and hybrid lower testers can also be
be realized by more than one real tester and m a n y classified physically as follows:
real testers can each realize more than one ab- (i) networked - connected to the SUT via a
stract test method. network - see Fig. 11;
A real tester can be used to realize a particular (ii) linked - directly linked to the SUT (close-
abstract test method if an abstract test suite for coupled) - see Fig. 12;
that abstract test method can be translated into an (iii) divided - consisting of two inter-communi-
executable test suite for that real tester. This re- cating parts, one directly linked to the SUT
quires that the control and observation performed and the other connected to the first via a
by the realizations of the lower and upper testers network - see Fig. 13;
are at least as good as that specified in the ab- Real lower testers (which realize the lower tester)
stract test suite, and that the means of synchroniz- can also be classified internally as follows:
ing the lower and upper tester activities is at least (1) encoder/de¢oder - just encodes and decodes
capable of achieving the requirements of the test the ASPs and P D U s as required for the test
coordination procedures specified in the abstract case being run, without being an implementa-
test suite. tion of the protocol(s) in question;
(2) enhanced implementation - an implementa-

SUT

SUT
IUT
I PCO
Lower
[(N-1)-Serv|ceProvider ] Tester

Fig. 8. External Lower Tester. Fig. 9. Local Tower Tester.


94 D. Rayner / OSI Conformance Testing

SUT
Lower
Tester SUT

I I
Link

Fig. 12. Linked Lower Tester.


I (N-I) - Service Provider

Fig. 10. Hybrid Lower Tester.


(e) reconciling PDUs extracted from the received
underlying layer service primitives with the
tion of the protocol(s) concerned, modified by appropriate protocol specification(s) to assess
the addition of an error generator, configura- the validity of the syntax of each PDU and the
tion module or similar device to ensure that validity of the relationships between received
invalid or unusual ASPs or PDUs can be PDUs and previously submitted PDUs;
generated as required by the test case being (f) enabling the operation of the test coordination
run. procedures to synchronize behaviour of the
The basis of an enhanced implementation is lower and upper testers, to the extent per-
often referred to as a 'reference implementa- mitted by the test method in use;
tion' but this term is found to be confusing. It (g) reporting the observed behaviour in a way
is not the protocol implementation which which permits conformance to be assessed with
should be regarded as the reference, but rather respect to the relevant standard(s), and which
the abstract test suite. Also the protocol im- permits comparability with the results of other
plementation does not need to include every equivalent testing operations.
option as long as the additional features en-
able the desired control and observation to 9.3. The Upper Tester
take place. However, the protocol implementa-
tion could, if desired, be partially generated The ways in which the real tester can interact
with the IUT in the SUT are numerous in terms of
automatically from a formal description of the
protocol. upper testers with or without synchronization, and
one can identify several common implementation
All classes of external and hybrid lower tester
can be used to realize any of the external abstract types:
test methods. All classes of local and hybrid lower (a) the upper layers of the SUT are used to realize
tester can be used to realize any of the local upper tester functionality - this can only be
abstract test methods. used to realize the remote abstract test method
see Fig. 14;
The functions of a lower tester which are com-
-

mon across all test methods are the following: (b) upper tester realized by a human being at a
(a) executing the executable test cases; user interface that maps onto the IUT service
(b) forming PDUs for submission to the underly- boundary - see Fig. 15;
ing layer service; (c) upper tester realized by a portable remote
(c) operating the underlying layer service; scenario interpreter, taking its instructions
(d) analysing primitives received from the un- from files, with a mapping region between it
derlying service, including interpretation of the and the IUT service boundary - see Fig. 16;
data content;
Networked
Part of Linked
Lower Lower Part of SUT
Tester SUT Tester Lower
Tester

i @ i l__ @ I I Link i
Fig. 11. Networked Lower Tester. Fig. 13. Divided Lower Tester
D. Rayner / OSI Conformance Testing 95

SUT
implementation Tester I
of
Ferry
Xigher Layer
Protocols Lower [1
Tester I [
Active I:
Ferry
Control j
I Protocol"
Passive
Ferry
IUT Mapping Region

L. . . . . . . . . . . . . . . . . . . . . . . . I, ..o!°°,,
ii =, .... t.t,on I
Ferry I
ChT,, IUT
PCO'

Fig. 14. Upper Tester Functionality Using Normal Protocols. I


( N - l ) - Service P r o v i d e r

\
Test Channel
User Interface
Fig. 19. Upper Tester realized using a Ferry.
IUT
l e s t Management Astride Test
Protocol Responder
L........................
Lower
Fig. 15. Upper Tester Ftmctionality by Human User. Mapping

_••
Tester Region
Control
Specified
in scenarios Test Management Mapping IUT
Remote on disc Protocol Channel
Scenario / Region
Observation
Interpreter on disc / I
Mapping (N-I)-ServiceProvider
Region
KN
TestChannel
IUT
Fig. 20. Upper Tester realized by an Astride Test Responder.

Fig. 16. Upper Tester realized as a Portable Remote Scenario


Interpreter. (d) upper tester realized by a portable test re-
sponder operating a test management pro-
Test Management Test tocol, with a mapping region between it and
Protocol Responder
the IUT service boundary - see Fig. 17;
Mapping (e) upper tester embedded inside the IUT, func-
Region
tioning either as a remote scenario interpreter
IUT or as a test responder - see Fig. 18,
(f) upper tester realized as a passive ferry [10]
with a mapping region between it and the I U T
service boundary - see Fig. 19;
Fig. 17. Upper Tester realized as a Portable Test Responder. (g) upper tester realized as an astride test re-
sponder, communicating with both the I U T
and the lower service boundary beneath the
IUT - see Fig. 20.
Test Management If the real tester is claimed to support the Local
TR
Protocol or Distributed abstract test methods, the upper
IUT tester will have the ability to control and observe
......................
test events, and either store the outcomes for
off-line analysis or transmit appropriate informa-
tion to the real tester for analysis. If the real tester
Fig. 18. Upper Tester realized within the IUT. is claimed to support the Coordinated abstract
96 D. Rayner / OSI Conformance Testing

test method, the upper tester will have the ability Abstract Executable
to control and observe test events, and to use the
required test management protocol to exchange Generic Test
appropriate information with the lower tester. For Suite
the Remote abstract test method, there are no
requirements on the upper tester, so any of the ~ T e s t Method
possible types of upper tester can be used.
I Real Tester
Abstract Test ! I ExecutablesuiteTest
9.4. Synchronization Suite

If the real tester is claimed to support the ~PICS ~---PICS


Local, Distributed or Coordinated abstract test
methods, the real lower tester must have the abil- Real Testers, )
Selected Abstract Selected Executable
ity to synchronize with the realization of the upper Test Suite Test Suite
tester. For the Local method, this can be done
using inter-process communication. For the Coor- ~PIXIT ~---PIXIT
dinated method, synchronization will be done
using the required test management protocol. For
the Distributed method, synchronization can be
Parameterized
Abstract Test
P,,T Teter,l
Real
Parameterized
Executable Test
Suite Suite
done by any suitable test management protocol,
by a ferry protocol with inter-process communica-
Fig. 21. Test Suite Types.
tion, or through manual coordination (by use of a
telephone a n d / o r terminal connection to the SUT)
if this can be made precise enough to meet the suite as approximate for the PIXIT provided
requirements for test coordination procedures de- for the IUT; alternatively, the parameterized
fined in the test cases. executable test suite can be derived from the
Synchronization is optional for the Remote parameterized abstract test suite.
method, but can be done either through manual
coordination or through actions of the SUT (in- 10.2. Executable Test Suite Realization
cluding the use of higher layer protocols).
When deriving executable test cases from ab-
10. Executable Test Suites stract test cases, the executable test suite realizers
should ensure that the derivation process pre-
10.1. Executable Test Suite Derivation serves the meaning of each abstract test case and
the test method chosen.
An executable test suite is composed of a num- In particular, the executable test suite realizers
ber of executable test cases. These executable test must strictly maintain the test purpose of an ab-
cases are derived from abstract test cases con- stract test case in its executable version, thus
tained in standardized abstract test suites. This preserving the quality of the abstract test suite
derivation may take one of three forms shown in coverage with respect to the protocol standard.
Figure 21: Test groups and other relevant subdivisions in
(a) the executable test suite can be derived from the abstract test suite, should be preserved in the
the abstract test suite; process of derivation. Thus, basic interconnection,
(b) the selected executable test suite can be capability and behaviour test cases will be identi-
selected from the executable test suite as ap- fied in the executable test suite to the same extent
propriate for the PICS provided for the IUT; that they are in the abstract test suite.
alternatively, the selected executable test suite Additionally, the executable test suite realizers
can be derived from the selected abstract test must ensure that the assignments of verdicts to
suite; outcomes are translated accurately. This means
(c) the parameterized executable test suite can be that for every possible outcome of an executable
parameterized from the selected executable test test case there must be a corresponding outcome
D. Rayner / OSI Conformance Testing 97

in the abstract test case and the verdicts assigned (b) all basic interconnection test cases that require
to each of the two must be the same. the presence of a capability stated as present
The executable test suite realizer should ensure in the PICS;
that they understand the intent of the abstract test (c) all capability test cases for mandatory capabil-
case and implement this intent faithfully. ities;
Furthermore, attention of executable test suite (d) all capability test cases for optional or condi-
realizers is drawn to the necessity of checking the tional capabilities identified in the PICS as
correctness and feasibility of test coordination being implemented in the SUT;
procedures, as they are expressed in the abstract (e) all behaviour test cases that are mandatory;
test case. In the case of the Remote method, this (f) all behaviour test cases that assume the pres-
may imply detailed knowledge of the SUT and the ence of optional or conditional capabilities
testing environment. that are present in the SUT according to the
If the test method or real tester involves the use PICS;
of a Test Management Protocol (whether stan- (g) all behaviour test cases that assume the ab-
dardized or not), it may be desirable to include in sence of optional or conditional capabilities
the executable test suite additional test cases de- that are not present in the SUT according to
signed to verify that the upper tester has com- the PICS.
pletely and accurately implemented the required Once the Test Laboratory has selected the re-
Test Management Protocol. quired test cases - the 'selected executable test
In any case, the executable test suite realizers suite' - then the information provided in the
should ensure that they realize the intent of the P I X I T should be used to parameterize those test
test coordination procedures. cases. The resulting 'parameterized executable test
Conversely, the executable test suite realizers cases' are then ready to be executed.
need not maintain:
(a) a-one-to-one correspondence between abstract
and executable test cases; it is conceivable that 11. Conclusion
an abstract test case can be implemented as
several executable test cases, and vice versa, This paper has described the concepts con-
provided that all of the above requirements cerned with OSI conformance testing and the
are met; specification of abstract conformance test suites,
(b) all the hierarchical levels of the abstract test as they are being standardized by ISO and CCITT.
suite structure; The OSI Conformance Testing Methodology and
(c) anything in the abstract test suite which is Framework standard will lead the way to the
explicitly defined as being implementation de- production of standard conformance test suites
pendent. for OSI protocols and to the harmonization of
testing activities carried out by different test
10.3. Test Selection centres, suppliers and users. This in turn should
enable OSI to succeed in its objective of
The Test Laboratory will acquire from a test widespread interworking of open systems.
realizer an executable test suite for the chosen test
method and real tester for each relevant protocol
or set of protocols to be tested together. Acknowledgements
This executable test suite should include cross-
references from each executable test case to each The author, as ISO rapporteur for OSI confor-
abstract test case. mance testing, is in a privileged position to pro-
The Test Laboratory will select all those execu- duce this paper. He wishes to acknowledge the
table test cases which correspond to abstract test help of both ISO and C C I T T rapporteur groups,
cases appropriate to the SUT, This means that the without which this paper could not have been
Test Laboratory will select: written. He also wishes to acknowledge the advice
(a) all basic interconnection test cases that are and encouragement of his colleagues at N P L and
independent of the contents of the PICS; in the N C C C O M M S - A I D team at the National
98 D. Rayner/OSIConformance Testing

Computing Centre, Manchester, UK. His own [4] ISO/TC97/SC21, OSI conformance testing methodology
work at NPL is supported by (a) the Computing, and framework - Part 3: Executable Test Derivation,
Software and Communications Committee of the edited by D. Rayner, Tokyo, June 1987.
[5] ISO/TC97/SC21, OSI conformance testing methodology
Technology Requirements Board of the Depart- and framework - Part 4: Requirements on Suppliers and
ment of Trade and Industry, (b) the UK con- Clients of Test Laboratories, edited by D. Rayner, Tokyo,
sortium for OSI conformance testing (currently June 1987.
consisting of NCC, NPL, British Telecom, DEC, [6] ISO/TC97/SC21, OSI conformance testing methodology
IBM and ICL) and (c) the Corporation for Open and framework - Part 5: Test Laboratory Operations,
edited by D. Rayner, Tokyo, June 1987.
Systems. [7] D. Rayner, Towards an objective understanding of con-
formance, in: Protocol Specification, Testing and Verifica-
tion III, proc. 3rd international workshop on this subject,
held in Zurich on 31 May-2 June 1983, edited by H.
References Rudin and C.H. West, North Holland, 1983, 477-492.
[8] ISO/TC97/SC21, The tree and tabular combined nota-
[1] ISO/TC9/SC21, Information processing systems - Open tion, Annex E of Part 2 of [3], edited by A. Wiles,
Systems Interconnection - Basic Reference Model, ISO Vancouver, December 1987.
7498, 1984. [9] ISO/TC97/SC21, Information processing systems - Open
[2] ISO/TC97/SC21, OSI conformance testing methodology Systems Interconnection - Specification of Abstract Syn-
and framework - Part 1: General Concepts, ISO 2nd DP tax Notation One (ASN.1), ISO 2nd DIS 8824, 1986.
9646-1 revised text, edited by D. Rayner, Vancouver, [10] H.X. Zeng and D. Rayner, The impact of the ferry
December 1987. concept on protocol testing, in: Protocol Specification,
[3] ISO/TC97/SC21, OSI conformance testing methodology Testing and Verification V, proc. 5th international
and framework - Part 2: Abstract Test Suite Specifi- workshop on this subject, held in Moissac, Toulouse,
cation, ISO 2nd DP 9646-2 revised text, edited by D. France, on 10-13 June 1985, edited by M. Diaz, North
Rayner, Vancouver, December 1987. Holland, 1985, 519-531.

Vous aimerez peut-être aussi