Testing in the Distributed Test Architecture

The introduction of multiple remote testers to apply a test or checking sequence introduces the possibility of controllability and observability problems. These problems can require the use of external coordination message exchanges among testers. It is d

  • PDF / 733,387 Bytes
  • 27 Pages / 430 x 660 pts Page_size
  • 73 Downloads / 216 Views

DOWNLOAD

REPORT


School of Computer Science, University of Windsor Windsor, Ontario, Canada N9B 3P4 [email protected] 2 Department of Information Systems and Computing, Brunel University Uxbridge, Middlesex, UB8 3PH, United Kingdom [email protected] 3 School of Information Technology and Engineering, University of Ottawa Ottawa, Ontario, Canada K1N 6N5 [email protected]

Abstract. The introduction of multiple remote testers to apply a test or checking sequence introduces the possibility of controllability and observability problems. These problems can require the use of external coordination message exchanges among testers. It is desirable to construct a test or checking sequence from the specification of the system under test such that it is free from these problems without requiring the use of external coordination messages. Here we define criteria on the specification of the system under test for this to be possible. For specifications satisfying the criteria, algorithms for constructing subsequences that eliminate the need for external coordination messages are given.

1

Introduction

Testing an implementation of a system under test (SUT) N is often carried out by constructing an input sequence from the specification M of the system, applying the input sequence in a test architecture, and analyzing the resulting output sequence to determine whether the implementation conforms to the specification on this input sequence. Conformance testing has been extensively studied in the context where M is a Finite State Machine (FSM) and N is a state-based system whose externally observable behaviour can also be represented by an FSM. This is motivated by the fact that FSMs are used to model a number of classes of systems including communications protocols [23] and control circuits [16]. The focus of much of the previous work has been on automatically generating input sequences from FSMs (see, for example, [1,12,13,29,28]). According to different test criteria, such an input sequence can be a test sequence [20,21] or a checking sequence [9,11,17]. The widespread use of distributed systems has led to interest in FSM-based testing when the SUT is a distributed system. A distributed system may have multiple sources of input and multiple destinations for output, often spread over a wide area across the machine boundary. This may lead to a distributed test architecture in which there is one tester at each interface/port. For example, R.M. Hierons et al. (Eds.): Formal Methods and Testing, LNCS 4949, pp. 157–183, 2008. c Springer-Verlag Berlin Heidelberg 2008 

158

J. Chen, R.M. Hierons, and H. Ural

when testing a layer of a protocol stack we can use one tester at the upper port and one tester at the lower port [4]. The application of a test or checking sequence in the distributed test architecture introduces the possibility of controllability and observability problems. The controllability problem manifests itself when a tester is required to send the current input and because it did not send the previous input and did not receive the p