定义

实参:在调用位置定义的作为参数传递给被调用实体(函数、测试例、可选步等等)的值、模板或名称引用(标识符)

基本类型:见6.1.0

兼容类型:见6.7

通信端口:抽象机制,使测试成分之间的通信便利

数据类型:简单基本类型、基本串类型、结构类型、特殊数据类型以及所有用户基于以上类型自定义的类型的共用名称

定义的类型或定义的TTCN-3类型:所有TTCN-3预定义类型和所有在模块中或从其他TTCN-3模块中传入的用户定义类型

动态参数化:参数化的一种,在动态参数化过程中,实参依赖于运行期事件,如实参的值是在运行期间接收或依赖于通过一种逻辑关系接收到的值

例外:在基于过程的通信的情况下,如果一个应答实体不能以正常期望的响应来响应对一个远程过程的调用,则它将产生例外

形参:值或模板的名称引用,不是在一个实体定义时被解析,而是在调用它的时候被解析

强分类:根据类型名称相同来严格要求类型的兼容性,不允许有例外

模板:TTCN-3模板是特殊的数据结构,用于传输一组不同的值或检查收到的一组值是否与模板说明匹配

测试套:TTCN-3模块,他通过引进语句显式或隐式地完整描述所有定义和完整定义一组测试例所需的行为描述

测试系统接口:提供从TTCN-3测试系统的可用端口到实际测试系统的可用端口的映射

类型兼容性:语言特性,它允许使用一个给定类型的值或模板作为另一个类型的实际值

缩写

CORBA 公共信息请求调度体系结构
API 应用程序接口
ASN.1 抽象语法符号一

------------------------------------------------
基本语言元素

0 概述
TTCN-3的顶层单元是模块。模块不能包含子模块,但是它可以从其他模块中引入定义。模块可以带有参数列表去提供测试套参数化的一个形式。一个模块由一个定义部分和一个控制部分组成。模块的定义部分定义测试成分、通信端口、数据类型、常数、测试数据模板、函数、测试端口上调用的过程特征、测试例等等。模块的调用部分调用测试例并控制他们的执行。控制部分也可以声明变量等,程序语言(如if-else)可以用于各个测试例的选择和执行顺序。TTCN-3不支持全局变量的概念。

模板是一种特殊的数据结构,它为描述在测试端口上被发送和接收的测试数据提供参数化和匹配机制。在这些通信端口上的操作提供基于消息和基于过程的通信能力。

测试例表达动态测试行为,TTCN-3程序语言包括强有力的行为描述机制。

TTCN-3模块定义        module
其他模块的定义引入    import
组定义            group
数据类型定义        type
通信端口定义        port
测试成分定义        component
特征定义        signature
外部函数/常量定义    external
常量定义        const
数据/特征模板定义    template
函数定义        function
可选步定义        altstep
测试例定义        testcase
变量声明        var
定时器声明        timer

1.语言元素的顺序

任意的。在一个语句和声明酷爱中,所有的声明应该在该块的开始处进行声明。

 

例:
//这是一个TTCN-3声明的合法混合

var MyVartype MyVar2 := 3;
const integer MyConst := 1;
if (x>10)
{
  var integer MyVar1:=1;
  :
  MyVar1:=MyVar1 +10;
  :
}

1.1向前引用
应该尽量避免向前引用

2.参数化

2.0 静态参数化和动态参数化

a.不能参数化的语言元素有:const var  timer control group import

b.语言元素模块允许静态的值参数化去支持测试套参数,也就是说,在编译时这个参数化既可以是可解析的也可以是不可解析的,但是它应该在运行时候被解析,这就意味着在运行时模块的参数值是全局可见的,但是不能改变。

c.所有用户定义的类型定义和特殊配置类型地址--类型支持静态值的参数化,即这个参数化应该在编译时进行解析

d.语言元素template、signature、altstep和function支持动态的值的参数化,即这个参数化过程应该在开始运行时运行
posted on 2009-02-06 03:27  菜鸟爱技术  阅读(4762)  评论(0编辑  收藏  举报