Test Case Generation and Test Case Specification Based on Message Sequence Charts


A distributed system has to meet several requirements, which are defined by the application area, the users, or in the case of communication systems by international standards. In general, the set of requirements is called the system specification. Often testing is the only possibility to check whether a system conforms to its specification. Nevertheless, the test of a distributed system is a complex procedure, which comprises several phases with various tasks. Therefore the test procedure for communication systems is standardized by the international ISO/IEC standard 9646: <i>'OSI Conformance Testing Methodology and Framework'</i> (CTMF). The CTMF procedure distinguishes between the phases <i>test specification</i>, <i>test realization</i>, and <i>test result analysis</i>. <p> In the test specification phase, the test cases are developed. The system specification is analyzed and so-called <i>test purposes</i> are identified. A test purpose describes the objective of a test case. For each test purpose a corresponding test case is specified. <p> The test realization phase comprises the test itself and all tasks which are necessary to execute the test cases. The test cases have to be implemented on test devices, e.g. as C programs, and executed. The test results are recorded in a <i>test log</i>. <p> In the test result analysis phase, the test log is evaluated and a test report is produced. The test report indicates how close the system conforms to the specification. <p> This thesis deals with the use of formal languages in the test specification phase, particularly the use of the Message Sequence Chart (MSC) language for the generation and specification of test cases. MSC is a new graphical trace language, which has been standardized in 1992 by ITU-TS as recommendation Z.120. For the application of MSCs in the test specification phase we pursued two approaches. <p> In the first approach MSCs are used as a user-friendly test case description language, i.e. MSCs are formalized and extended in such a way that they are able to express complete test cases. Additionally, MSC test case descriptions are transformed into the standardized TTCN language, which is more appropriate for further processing or may serve as input for commercially available test equipment. This work has been carried out in cooperation with the Siemens-Albis AG (Zürich). <p> In the second approach MSCs are used in combination with SDL specifications in order to generate complete test cases. It is assumed that the allowed behavior of the system which should be tested is defined by an SDL specification and that the purpose of a test case is given by an MSC. Informally spoken, a test case is generated by simulating the SDL specification until the MSC, i.e. the test purpose, is performed. For the representation of the generated test cases again TTCN is used. This work has been supported by the research project <i>'Conformance Testing - A Tool for the Generation of Test Cases'</i> funded by Swiss PTT. <p> These two approaches and the languages MSC, SDL, and TTCN define the scope of this thesis. The thesis is structured into three parts. <p> The first part includes this introduction and the description of the Inres system (Chapter 2). Inres is a small communication protocol which serves as an example in most of the following chapters. <p> In the second part the languages MSC, TTCN, and SDL are introduced (chapters 3, 4 and 5) The language descriptions are written in a tutorial like manner and should enable to understand MSC, SDL, and TTCN specifications. <p> The third part describes the application of MSCs in conformance testing. In Chapter 6 the generation of TTCN test cases from MSCs is explained. The test case generation with test purpose specification by MSCs is described in last chapter of this thesis. <p> All chapters of this thesis are self-contained. It is possible to read a chapter without knowledge of the other chapters. This is due to the fact that the work has been carried out in different research projects. A lot of the presented work is already published in conference proceedings, technical reports, and project reports. The chapters of this thesis refer to these publications.
Document Type: 
Ph.D. Theses
Bern, Switzerland
Institute of Computer Science, University of Bern
2024 © Software Engineering For Distributed Systems Group

Main menu 2