Académique Documents
Professionnel Documents
Culture Documents
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
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
:~]~' I_P.
roceduresi ;:::
L__~-(NI-PDU-s~
l (~-')-"S~'' I I
Service Provider Service Provider
SUT
SUT
IUT
I PCO
Lower
[(N-1)-Serv|ceProvider ] Tester
SUT
Lower
Tester SUT
I I
Link
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'
\
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.
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
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.