Font Size: a A A

Research And Implementation For TTCN-3 Procedure-based Communication Mechanism

Posted on:2017-02-06Degree:MasterType:Thesis
Country:ChinaCandidate:X P FanFull Text:PDF
GTID:2308330485953708Subject:Information security
Abstract/Summary:PDF Full Text Request
With the development of computer technology, the importance of software and service to test becomes increasingly prominent. TTCN-3 is a powerful, flexible description language for testing, and its application fields have been extended from initial protocol testing to lots of testing fields, such as interoperability testing, service testing, and CORBA-based platform testing. The execution of TTCN-3 requires tools to support. Research on TTCN-3 began earlier abroad, and there are already some commercial tools, but they are expensive and their internal implementation is confidential, which is detrimental for the domestic research and promotion of the use of TTCN-3. Loong Testing is the only domestic testing platform that can be freely downloaded, and it is offered by University of Science and Technology of China. But the platform only supports message-based communication mechanism for testing, it has not supported the procedure-based communication yet, so it does not meet demand for the test requirements of SOA framework and the cloud service which only supply service interfaces.Loong Testing adopts compiled execution. That converts TTCN-3 abstract test suite into C++intermediate file first, and then schedule the intermediate file for execution. Thus, the platform which supports procedure-based communication mechanism includes a compiler and executor. The main role of the compiler is to convert TTCN-3 abstract test suite into executable test suite. Since TTCN-3 has rich types, it is much complex if directly generate intermediate C++ file. Therefore, the implementation of the compiler is divided into a compiler module and a translator module. A single scan could not complete the compilation, as TTCN-3 supports forward reference. Taking into account the needs of efficiency and additional information, the whole process completed in three scanning. During first scanning, syntax analysis and semantic analysis adopt the top-down recursive descent parsing. In the stage of semantics analysis proceed static semantics checking and refresh the information in symbol table, a method of scope denotation expression in symbol table based on linked list is put forward. The third scanning in translation module, which translates directly into C++ code. At last, the memory management of the compilation is studied, and the memory pool scheme is compared with the traditional implementation.However, the intermediate file generated by the compiler cannot be executed directly, which needs the support of the executor. The design and implementation of TTCN-3 executor which supports procedure-based communication involves three parts:the data structure and message format are designed to support the procedure-based communication, the snapshot and locking mechanism are implemented to ensure the integrity of the information; The TE interface of the procedure-based communication primitives is designed, and the internal processing of the communication primitives among test components and between the test component and the system under test is realized; The communication interfaces interacted with TCI and TRI are designed, TCI and TRI which related to the procedure-based communication are realized. At last, the memory of the execution phase is studied and the solution is given.Integrated the procedure-based communication, Loong Testing platform is used as a test of DNS domain name query service. The whole process of compilation, translation, and scheduling TTCN-3 test suite is got through. The result demonstrates the effectiveness of our design and implementation. The Loong Testing platform can meet requirements of testing for SOA architecture and cloud computing.
Keywords/Search Tags:TTCN-3, procedure-based communication, testing tool, compiler, executor
PDF Full Text Request
Related items