Chapter 5
Multi Component TTCN-3
Test systems often have to control several interfaces of the system under test (SUT). At each of these interfaces, the test system might have to take a different role towards the SUT. For example, in the extended Domain Name System (DNS) example in Section 2.1.9, the test system takes a number of roles, a DNS client, a domain name root server and a remote domain server. In TTCN-3, one or more ports can describe each interface towards the SUT, and each role can be reflected by a parallel test component.
In this chapter, we will present how test cases using several test components can be written. We will especially focus on how test components can be created and how the ports of the test components can be connected. The test components together with the connections among the ports are called test configuration. Test configurations in TTCN-3 are dynamic. This means that they can change while executing a test case. Compared to the use of a single test component as introduced in the previous chapter, there are several major differences. These differences are highlighted in the following.
- Sequential versus concurrent behaviour: The behaviour of each test component in isolation is sequential. In the single component case, the main test component (MTC) is the only component. Therefore, the behaviour of the whole test case is sequential. When several test components are used, their behaviour can be executed sequentially but also concurrently. The behaviour ...