基于C++语言的TTCN—3测试平台中字符模式匹配实现方法

上传人:lis****666 文档编号:172160492 上传时间:2022-12-01 格式:DOCX 页数:4 大小:13.66KB
收藏 版权申诉 举报 下载
基于C++语言的TTCN—3测试平台中字符模式匹配实现方法_第1页
第1页 / 共4页
基于C++语言的TTCN—3测试平台中字符模式匹配实现方法_第2页
第2页 / 共4页
基于C++语言的TTCN—3测试平台中字符模式匹配实现方法_第3页
第3页 / 共4页
资源描述:

《基于C++语言的TTCN—3测试平台中字符模式匹配实现方法》由会员分享,可在线阅读,更多相关《基于C++语言的TTCN—3测试平台中字符模式匹配实现方法(4页珍藏版)》请在装配图网上搜索。

1、基于C+语言的TTCN3测试平台中字符模式匹配实现方法摘要:TTCN-3是一个由ETSI维护的全球适用的规范测试语言。在TTCN-3测试平台设计与实现中,字符模式匹配机制是一个重要组成局部。提出一种采用面向对象的程序设计语言C+来实现TTCN-3测试平台中字符模式匹配办法,并给出了实例验证。关键词:C+;TTCN-3;正那么叙述式;字符模式匹配中图分类号:TP306文献标识码:A 文章编号:1672-78002022003-0030-020 引言TTCN-3Testing and Test Control Notation Version 3是目前流行的一种测试语言。在TTCN-3测试平台设计

2、与实现过程中,模板匹配机制是需要实现的一个重要局部,包括指定值匹配、缺省值匹配、值列表匹配、补值列表匹配、任意值匹配、任意值或空匹配、值范围匹配、超集匹配、子集匹配、任意元素匹配、任意元素或空匹配、排列匹配、字符模式匹配共计13种匹配机制1,其中一个重要匹配机制为字符模式匹配,它可以用于定义一个接收模板需求的字符串格式并允许一些元字符的使用,示例,在一个字符模式中,“?和“*分别意味着匹配任一字符和匹配任意数目的任一字符。字符模式匹配机制与正那么叙述式有许多相似之处,本文采用面向对象的程序设计语言C+中的“准规范库boost库中的正那么叙述式库regex来实现TTCN-3模板的字符模式匹配机制

3、。boost库是一个开源并且完全免费的C+程序库,而boost:regex是目前C+语言对于正那么叙述式支持较好的程序库。1 问题分析TTCN-3中可以定义的模板包括用于发送的模板和用于接收的模板,而字符模式匹配机制可以用于在接收模板中定义一个需要接收字符串的格式,关键字是“pattern。需要注意的是,字符模式匹配机制只能用于匹配TTCN-3中的charstring和univeral charstring数据值1-2。举示例下:template charstring MyTemplate :=pattern “a*bc该模板可以匹配任意以字母“a开头,接着可以是任意数目可以是0个任一字符,之

4、后是以字母“bc结尾的字符串。其中“*称为字符模式的元字符,TTCN-3字符模式中的元字符指那些在字符模式中具有特殊意义的专用字符。元字符本身是一个个单一字符,但是不同或者相同的元字符组合起来可以构成大的元字符。正那么叙述式Regular Expression通常缩写成“regex指一个用来描述或者匹配一系列合乎某个语法规那么的字符串的单个字符串,因而具有比单个或多个字符串更强大的描述能力。通俗地讲就是用一个“字符串来描述一个特征,然后去验证另一个“字符串是否合乎该特征3-4。正那么叙述式对于解决相当数量的模式匹配问题至关重要,许多程序设计语言都支持利用正那么叙述式进行字符串操作。正那么叙述式

5、引擎那么是一种可以处理正那么叙述式的软件,引擎通常是更大的应用程序的一局部。C+程序设计语言中支持正那么叙述式的准规范库boost:regex,头文件是,boost:regex支持的默认正那么叙述式语法是perl语法。从以上分析可以看到,实际上,TTCN-3中的字符模式也即是TTCN-3所支持的正那么叙述式,但是由于TTCN-3字符模式的语法规那么和C+所支持的perl语法正那么叙述式有所不同,两者并不兼容,因而在TTCN-3测试平台实现中,需要将合乎TTCN-3语法规那么的字符模式翻译成合乎perl语法的面向对象程序设计语言C+所支持的正那么叙述式。以charstring类型为例,对TTCN

6、-3测试平台开发过程中定义与实现字符模式匹配的过程加以表明:首先定义charstring类型的模板,实例化为对应的数据值,设定相应的字符模式匹配标识,为相应数据值模板对象赋值无论是否带有具有特殊意义的元字符均视为普通字符串类型,最终返回带有字符模板匹配机制的charstring数据值模板对象实例;在接收操作中,需要将系统接收到的charstring数据值与带有字符模式匹配机制的模板进行匹配,实现匹配操作时,首先应该将带有字符模式匹配机制的模式串转换为合乎Perl语法的正那么叙述式,之后才可以使用匹配算法regex_match进行匹配操作,并返回匹配结果true 或是false,系统根据匹配结果

7、进行下一步测试操作,如图1所示。以上过程实际上波及了TTCN-3测试平台中TE实体内部的3个交互实体:ETS、TTCN-3运行时系统T3RTS和一个可选的内部编解码系统EDS实体。为了突出本文内容,这里隐去这一局部,TTCN-3数据类型、数据值及模板表示见参考文献5,不再赘述。2 实现办法从以上分析可以看到,匹配操作中的关键一步就是实现模板字符串从TTCN-3字符模式匹配机制到合乎Perl语法的正那么叙述式的转换,两者区别主要在于某些带有特殊意义的元字符有所不同。TTCN-3字符模式匹配机制与Perl语法的正那么叙述式中不同元字符的比照如表1所示。从表1可以看出,两者元字符的含义的确不同。本文

8、采用的转换思想如下:构造含有需替换TTCN-3字符模式元字符的正那么叙述式reg;使用boost:regex_replace办法进行字符串的查找与替换,以及格式转换,如果字符模式中含有“?、“*、“*#n、“#n,m,那么替换为合乎Perl语法的正那么叙述式的字符,否那么不作任何修改;使用boost:regex_match办法进行正那么叙述式的匹配操作,返回值为True或是False。 3 翻译例如对上述例子进行表明如下:TTCN-3代码:template charstring MyTemplate :=pattern “a*bc;对应接收操作时模板匹配的C+翻译代码:int i = Stri

9、ng.find*;String.replacei, 1, “.*;boost:regex regString;bool b=boost:regex_matchdata,reg;/data是测试系统接收到的数据值4 结语本文提出了一种采用面向对象的程序设计语言C+实现TTCN-3中模板的字符模式匹配办法。通过分析字符模式匹配机制与Perl语法的正那么叙述式的不同,找到两者转换的办法,并给出了实例表明。研究中需注意正那么叙述式的贪婪性,本文使用正那么叙述式的默认贪婪模式。参考文献:1 ETSI.Methods for testing and specificationMTS;The testing

10、 and test control notation version3;part5:TTCN-3 runtime interface TRI S. FRANCE, ETSI ES 201 873-1 V3.2.1,2022.2 ETSI.Methods for testing and specificationMTS;the testing and test control notation version3;part1:TTCN-3 core languageS. FRANCE,ETSI ES 201 873-1 V3.2.1,2022.3 王艳,李冬梅.基于正那么叙述式的协议辨认计划J.软件导刊,20222:47-49.4 贺炜.网包正那么叙述式匹配算法研究D.郑州:解放军信息项目大学,2022.5 郑冰.基于TTCN-3测试平台的模板匹配问题的研究与实现D.呼和浩特:内蒙古大学,2022.6 周冬初,鞠凤娟,郭东珲.基于Struts2框架校验数据及整合正那么叙述式的实现办法J.计算机与现代化,20221:85-87.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!