收藏本站 收藏本站
积木网首页 - 技术学院 - 软件测试 - 网站黄页 - 常用手册 - 站长工具 - 技术社区
软件测试 > TTCN > 正文

首页 | 领域细分: 游戏测试 安全测试 手机测试 Web测试 | 技术研究: 单元测试 入门教程 用例设计 性能测试 功能测试 | 测试职场: 面试精选 职场发展 面试试题

测试管理: 配置及流程 - 需求管理 - 质量验收 - 缺陷管理 - 其它管理相关 | 开发语言: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码

测试工具: LoadRunner JiRa QuickTestPro RoBot WinRunner TestDirector 其它测试工具 | 数据库: Mysql数据库 Oracle数据库 CSS/DIV基础 HTML基础

对于国际标准测试语言:TTCN-3的理解

来源:互联网 日期:2012-05-08 20:30

  在当前的软件开发领域,测试语言有很多的选择,对于不同的行业、不同的开发阶段都可以选择不同的测试语言。即使在同一个项目的不同开发阶段,我们的测试语言也可能不同。当然每个阶段或者每个领域到底应该选择什么样的测试,其实是无解的问题。我们应该根据实际的情况做灵活的决策。通常情况下,UT或者低级别的测试尽量选择和被测测试实现语言相同的测试语言。而高级别的测试可能更趋向选择更加抽象的测试语言。本文不涉及如何选择测试语言,而是给大家介绍一种国际标准的测试语言TTCN-3。当然如果大家对在什么领域、什么阶段到底应该怎么去选择测试语言,也可以留言一起交流。

  什么是TTCN-3

  TTCN-3即Testing and Test Control Notation Version 3:是ETSI专门为测试领域制定的通用测试语言。目前在很多领域以及不同的软件开发阶段都有运用,下面简单的描述了TTCN-3当前的一个使用领域以及被用在软件开发哪些阶段。

  关于更多的TTCN-3知识可以参考官方网站:http://www.ttcn-3.org

  TTCN-3有哪些优点

  新事物的产生肯定会招来一部分的质疑,他们经常会说和现在相比有什么区别?有什么好处等等疑问。。这里对于TTCN-3这门ETSI专门为测试领域制定的标准测试语言给出我自己的认识,如果有不对,大家可以一起讨论交流。

  1、从架构上将抽象的测试套与底层适配层分析,这样可以使同一测试套可以在不同的平台运行,而且明确各组件的接口,可以让不同的角色聚焦自己的工作(测试人员和工具开发人员)

  2、 内置非常强的匹配机制

  3、支持并发测试以及动态的配置测试系统

  。。。。。。

  下图给出TTCN-3完整的测试系统的架构图,供大家参考。

  TTCN-3核心语言理解

  TTCN-3既然是专门为测试领域打造的语言,自然它的核心语言也应该是按照测试的思维去架构设计的。下面我们一起看看TTCN-3的核心语言的构成。

  首先我们来看测试的步骤和需要什么?

  从上图可以看出,实际上从高层抽象来看,测试行为是很简单的过程。就是激励出发被测系统,然后观察被测系统的行为表现是否正确而已(当然可能还包含环境的建立等等)。

  1、激励、观察的组成

  对于测试来说,激励和观察都需要数据和动作,而数据又需要描述它是什么样的,所以TTCN-3需要包含测试数据类型的定义、以及我们测试数据的描述。

  对于动作,我们需要函数。而一系列的动作组成了我们的一个测试意图,这就是我们的一个测试用例。

  通常情况下我们需要灵活的控制我们测试用例的执行,比如:在版本初验的时候,我想得到较快的质量反馈,所以我可能只需要控制执行基本功能验证的自动化脚本。

  在大型测试系统中,我们可能需要根据功能划分功能模块,而且各个功能模块之间需要通信。

  。。。。

  经过上面对测试过程需要的内容,目前通用的语言都不能直接支持(当然你开发一个测试框架让其支持)。TTCN-3作为一个专门设计用于测试的语言怎么满足上面的要求了,下面是一个TTCN-3测试套的组成以及测试文件的组织结构。

  A、测试数据类型:这里除了基本的编程语言所需要的类型外(integer、record等等),还包含了测试特有类型(component, port, verdicttype, default等等)

  B、测试数据:这里和其他语言不同的是新增了模板,正是它提供给了TTCN-3更加灵活的匹配机制

  C、测试系统配置:这里实现了测试各组件的关系connect或者map等

  D、测试行为:实际上就是testcase以及相应的function、altstep等等

  在TTCN-3中每个文件都是包含在module中,一个module包含了两部分,一个是定义部分,一个是控制部分(可选)。在控制部分你可以灵活的控制在和组装你的测试场景和行为。

本周排行

别人正在浏览

强悍的草根IT技术社区,这里应该有您想要的! 友情链接:b2b电子商务
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号