测试试述一种用于自动化测试的脚本语言的设计与实现

vps测试脚本  时间:2021-05-03  阅读:()

试述一种用于自动化测试的脚本语言的设计与实现

文档信息

目录

1脚本语言cript的特色

11语法风格严谨、简便

12高度动态化的面向对象技术

13与被测试程序的无缝交互

14多任务、高并发的协程机制

15支持库依赖程度低、可跨平台

2嵌入式测试脚本语言cript的实现

21预处理

22字节码编译

23主控程序与被测系统交互

24解释执行

31被测试系统简介

32测试任务

正文

摘要对软件进行经常性、规范的测试是保证软件质量的重要手段灵活地使用脚本技术能够使软件测试更加的自动化软件测试的脚本化在大大的减少测试人员的工作量的同时使整个测试项目更易被维

护测试用的脚本语言具有较好的可移植性使脚本代码具有很强的复用性与通用性所以设计实现了一种自动化测试的脚本语言cript并对该语言的设计思路、实现及其应用加以阐述

关键字 自动测试脚本语言编译器

0引言

近年来软件行业蓬勃发展软件的规模急剧增大对软件的测试所需要的工作量越来越大操作也越来越繁琐因此建立一种易维护、可复用、高度自动化的测试策略的需求也越来越迫切

在测试中使用脚本技术是实现软件测试的自动化的有效手段以脚本代码的形式描述测试用例、测试步骤较之测试人员手动实现更为规范、精确脚本语言的宿主虚拟机能够反复地、高速地执行脚本代码极大的减少了测试人员的繁冗操作提高了测试工作的复用性与可维护性

目前市场出现了多种具有脚本技术的软件自动化测试框架或平台但是所附带的脚本语言体系简单特性单一该文将对作者所设计的一种具有丰富特性的脚本语言加以阐述

1脚本语言cript的特色

11语法风格严谨、简便

cript语法风格接近C/C++但是比其二者语法要求更加规范严谨同时充分的考虑到了测试人员在编写代码时对于简便快捷的要求增加了譬如foreach  quote之类的“语法糖” 这些“语法糖”仅存在于预处理期之前故而在提高便携性的同时不会降低脚本的执行效率

12高度动态化的面向对象技术

大部分现代化高级编程语言都实现了OO object oriented特性 OO技术能够提供对代码非常好的组织能力 cript语言为了方便测试人员组织测试项目 同样加入了OO特性但没有照搬模仿诸如J AVA 、 C++的O O实现方式 JAV A、 C++等高级语言在编译阶段就已确定类型的结构及继承体系而cript的面向对象是高度动态的在编译阶段仅仅确定了对象成员的元数据但是并没有对类型以及操作方式做任何推断所以测试人员非常自然的在编程时享受多态、函数闭包的好处

13与被测试程序的无缝交互cript脚本引擎会在测试开始之前建立一个通信管道同时建立一个被测试程序的接口映射表能够将被测试程序的接口符号绑定到测试脚本之中可以不通过其他渠道直接驱动被测试软件

14多任务、高并发的协程机制

为了实现测试操作的多任务性 引入了协程机制协程不同于一般的例程或者是函数它能够被人为的制约执行流程或挂起在cript中加入了yield关键字来挂起当前的任务执行后续的任务

15支持库依赖程度低、可跨平台

为了方便测试不同的操作系统下的软件脚本引擎本身被设计为高度跨平台其具体实现使用遵循的AI -C 89标准的C语言编码完成cript仅仅依赖与少量的标准库这使脚本语言引擎本身可以在绝大部分部分的平台上能够顺利编译成功目前 已经windows xp或者更高版本 、 linux kernel26以上 、 Mac OS X测试编译通过执行情况良好

2嵌入式测试脚本语言cript的实现cript脚本引擎对脚本代码执行的操作总体而言分为四个步骤“预处理+字节码编译+主控程序与被测系统的交互+解释执行” 每个步骤都使用了一个或几个模块 以下将阐述全部步骤以及所使用的模块的实现细节

21预处理

预处理是在程序源代码被编译之前 由预处理器Preprocessor对程序源代码进行处理这个过程并不对程序的源代码一种用于自动化测试的脚本语言的设计与实现相关范文由写论文的好帮手http: 转载

请保留 .进行剖析但它把源代码分割或处理成为特定的符号用来支持宏调用

首先 bufferloader模块将脚本代码读入缓存并将缓存的地址传给preprocessor模块该模块负责对代码文本进行预处理把不会被执行的注释消除并完成宏展开、以及将一些“语法糖”转换成规范的形式紧接着压缩空白符的数量提高接下来的词法分析速度

22字节码编译

Preprocessor将处理的结果提交给lexer_analyzer模块负责分析词法lexer_analyzer本质是一个字符串扫描器扫描器的游标不断向后扫描并获得一个子串与内置的一个词法单元类型的hash表I中的模式串进行字符串全匹配把匹配的结果以及该子串提交给语法分析器

23主控程序与被测系统交互

编译阶段完成之后虚拟机VM会与被测试的软件交互API_register模块将会寻找软件导出C/C++的函数接口的地址并与之前syntax_analyzer提供接口的字符串形式使之与编译阶段生成的符号表匹配、绑定完成接口链接VM使用pipe_holder分配一定大小的缓存默认64K来建立字符管道

24解释执行

31被测试系统简介

目标系统是一个简易的制约小车系统通过外部给定的输入制约小车进行直行、旋转、并根据摄像头输入的数据捕捉障碍物、测距使小车能够具有一定的避障能力

32测试任务

测试人员通过脚本输入一组障碍物的数据 同时通过该系统提供的接口函数截获系统所响应的序列并记录使测试人员能在模拟的环境下测试该代码的性能与效果

结束语

该文给出了一个用于程序自动化测试的脚本语言的设计、实现及其实际测试举例现在这个脚本语言已经成为我们工程中的一个重要技术进一步的工作是不断的提供新的调度操控方式并提供可视化的编辑工具方便测试人员使用

参考文献

[1]Alfred V Aho  Monica S lam Ravi Sethi  et alCompile Principles Techniques and Tools Second Edition[M]赵建华郑涛戴新宇译北京机械工业出版社 2009229-273

[2]Newell A Shaw J C Programming the logic theorymachine[C] Proc Western Joint Computer Conference 1957

[3]Ullman J D Fast algorithms for the elimination ofcommon subexpressio Acta Inf 1973 2  191-213

[4] [ZK #]Alfred V Aho Monica S lam Ravi Sethi et alCompile Principles Techniques and Tools Second Edition[M]

[5]Bebenita M brandner F Fahndrich M et al Tillmannand H Venter SPUR a trace-based JIT compiler for CIL[C] InProceedings of ACM conference on Object-Oriented

Programming Systems Languages and Appli cat io OOPSLA

2010

708-725

[6]赵斌飞刘磊测试脚本自动生成器的设计与实现[J]计算机科学 2008 6

[7]Jeremy Siek Philip Wadler Threesomes with andwithout blame In Script to Program Evolution STOP  2009

责任编辑李家云

“试述一种用于自动化测试的脚本语言的设计与实现”文档源于网络本人编辑整理。本着保护作者知识产权的原则仅供学习交流请勿商用。如有侵犯作者

权益请作者留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载

RackNerd 2022春节促销提供三款年付套餐 低至年付10.88美元

RackNerd 商家我们应该是比较熟悉的商家,速度一般,但是人家便宜且可选机房也是比较多的,较多集中在美国机房。包括前面的新年元旦促销的时候有提供年付10美元左右的方案,实际上RackNerd商家的营销策略也是如此,每逢节日都有活动,配置简单变化,价格基本差不多,所以我们网友看到没有必要囤货,有需要就选择。RackNerd 商家这次2022农历新年也是有几款年付套餐。低至RackNerd VPS...

优林70/月,西南高防地区最低70/月

优林怎么样?优林好不好?优林 是一家国人VPS主机商,成立于2016年,主营国内外服务器产品。云服务器基于hyper-v和kvm虚拟架构,国内速度还不错。今天优林给我们带来促销的是国内西南地区高防云服务器!全部是独享带宽!续费同价!官方网站:https://www.idc857.com​地区CPU内存硬盘流量带宽防御价格购买地址德阳高防4核4g50G无限流量10M100G70元/月点击购买德阳高防...

HostYun 新增美国三网CN2 GIA VPS主机 采用美国原生IP低至月15元

在之前几个月中也有陆续提到两次HostYun主机商,这个商家前身是我们可能有些网友熟悉的主机分享团队的,后来改名称的。目前这个品牌主营低价便宜VPS主机,这次有可以看到推出廉价版本的美国CN2 GIA VPS主机,月费地址15元,适合有需要入门级且需要便宜的用户。第一、廉价版美国CN2 GIA VPS主机方案我们可看到这个类型的VPS目前三网都走CN2 GIA网络,而且是原生IP。根据信息可能后续...

vps测试脚本为你推荐
保护器fastreport2交换机route支持ipadtracerouteLinux 下traceroute的工作原理是什么 !win10445端口windows server2008怎么开放4443端口itunes备份itunes 里面的资料如何备份?firefoxflash插件火狐安装不了FLASH为什么?下载完后明明安装完成,火狐却仍然提示“缺少插件”google分析google analysis干什么用的?迅雷雷鸟啊啊,想下载《看门狗》可13GB的大小,我每秒才450KB,我该怎么样才能大幅度地免费提高电脑下载联通合约机iphone5联通合约机iphone5和电信合约机Iphone5哪个好
域名服务器 vps优惠码cnyvps 工信部域名备案 新网域名解析 国外永久服务器 bluevm mach 英文简历模板word godaddy域名转出 40g硬盘 怎样建立邮箱 softbank邮箱 adroit 服务器合租 Updog ca187 in域名 闪讯官网 web服务器搭建 重庆电信服务器托管 更多