除了对上述已有的形式化方法的研究外,在自定义语言的研究方面,国内外也已取得众多研究成果。由于脚本技术的引入是实现测试自动化的重要支撑,因此这些基于自定义语言的形式化方法,大多是针对特定测试系统或工具的专用脚本语言。常用测试脚本技术如表3-2所示。
表3-2 常用测试脚本技术总结
美国喷气推进实验室采用扩展的Tcl/Tk作为测试脚本语言,通过脚本可以模拟整个飞行器寿命内的大部分功能,通过上层图形化的开发环境加载测试脚本,下载到网络节点(子系统),各测试脚本在各自的节点上通过脚本解释器完成相应功能的仿真测试。但这个环境的实时性较差,无法控制时间特性,只能进行功能模拟,而且是一个分布式系统,是一个半自动的测试环境。国内华中科技大学开发了一种面向Internet的简单网络协议设计与测试平台(SNPDTP),该平台开发了自己的测试脚本语言(C-Script),该脚本语言采用简化了的C语言语法,并对一些特性进行了修改,如加入时间驱动机制和对网络的协议的描述支持。因此于该系统是针对网络协议的设计与测试而开发的,因此没有考虑嵌入式软件所需要的实时特性和测试反馈的处理,仅仅是用软件的方式模拟网络环境的实现,但它的设计思想是可以借鉴的。此外,测试领域还存在针对非实时软件的测试描述语言TestTalk,该语言采用对测试描述的各个组成部分进行分离的方式,形成编程语言形式的测试脚本,再通过解释器的解释执行,达到驱动测试的目的。但该方法仅针对非实时软件的测试,没有引入实时软件测试中对时间特性(如并发、同步、优先级等)的描述要求,用户难以快速掌握,因此该方法不适合实时嵌入式软件测试的描述。