基于数据操作的自动化测试技术研究与应用

合集下载

基于AI技术的自动化测试研究

基于AI技术的自动化测试研究

基于AI技术的自动化测试研究在数字化时代的浪潮下,人工智能(AI)已经逐渐渗透到我们生活的各个领域,自动化测试也是其中之一。

随着软件技术的不断更新和发展,自动化测试成为了越来越重要的技术手段,AI技术更是让自动化测试变得更加智能和高效。

本文将简要介绍AI在自动化测试中的应用和研究现状。

一、AI在自动化测试中的应用AI技术能够在自动化测试中实现智能化操作,包括识别测试用例和关键字,执行测试用例,分析测试结果等等。

AI在自动化测试中的应用主要涉及以下几个方面:1、测试用例的智能分类在进行自动化测试时,测试用例的数量很大,分类很多,需要花费大量的人力和时间。

而AI技术可以通过模型训练和数据分析,自动分类测试用例,提高测试效率和准确性。

2、测试脚本的自动生成测试脚本的编写是自动化测试过程中的一个重要环节,需要运用丰富的编程知识。

AI技术可以通过分析测试需求和测试文档,自动生成测试脚本,减少人力成本和开发时间。

3、智能测试执行AI技术可以模拟用户行为,模拟各种不同的应用场景,并对测试结果进行分析和评估。

同时,通过实时监测测试执行过程,及时发现测试中的问题并进行修复。

4、自动化测试平台的智能化AI技术可以根据测试结果实时调整测试策略,优化测试计划和质量保证过程,提高测试效率。

二、AI在自动化测试中的研究现状AI在自动化测试中的研究主要集中在以下几个领域:1、数据挖掘与机器学习数据挖掘和机器学习能够对测试数据进行深度分析,识别和预测测试结果,从而更好地支持测试决策。

举个例子,可以通过数据挖掘技术挖掘测试用例间的相似性和关联性,提高测试用例的覆盖度和准确性;通过机器学习技术实现测试结果预测和缺陷预测,提前预知可能的质量问题。

2、自然语言处理自然语言处理可以解决测试需求与测试用例之间的转换问题。

通过自然语言处理技术,将人类语言需求转换为可执行的自动化测试用例,并将测试结果转化为人类语言结果,提高测试工作效率和质量。

RPA+AI在中台服务标准化测试中的研究及应用

RPA+AI在中台服务标准化测试中的研究及应用

RPA+AI在中台服务标准化测试中的研究及应用作者:沈倩雷蕾来源:《中国新通信》2022年第17期摘要:当前各行各业都在推动数字化、智能化转型,作为典型代表的中台、RPA、AI智能等技术是目前研究的重点。

这种大背景下,相对应的测试技术、测试方法也应积极进行探索和创新。

本文根据中台服务标准化测试特点,特别是面对服务发布后数量巨大的内外部调用,同时还要兼顾上线前和上线后服务测试时间短等困难点,引入RPA+AI自动化测试技术,让自动化测试平台化、产品化、智能化,提升中台服务标准化测试效率和测试质量,促进跨域能力的共享、拉通与复用。

关键词:RPA;AI;自动化测试;中台;服务标准化一、背景及现状在云计算、大数据、人工智能等技术迅速发展带来的数字化和智能化转型浪潮中,中台[1-2]服务架构应运而生。

中台是将互联网技术和企业级能力结合,通过对企业信息化系统的架构解耦、服务组件化、能力平台化,将企业核心能力以共享服务中心在企业建立多维度共享体系。

服务作为中台的核心资产之一,不仅会被企业内部各系统使用,还会作为资产对外发布。

企业内部和外部系统在使用服务资产过程中,需要按照服务标准化进行调用。

为保障服务调用规范化,服务调用业务流程贯通性以及管理各服务调用情况、快速定位问题,中台服务标准化测试成为上线前和上线后服务可用的重要抓手。

本文根据中台服务标准化测试特点,特别是面对服务发布后数量巨大的内外部调用,同时还要兼顾上线前和上线后服务测试时间短等困难点,引入RPA[3]+AI自动化测试技术[4],让自动化测试平台化、产品化、智能化,提升中台服务标准化测试效率和测试质量。

二、方案研究(一)中台服务标准化测试特点中台服务标准化测试,是对业务操作活动过程中调用的中台服务报文进行检查,检查内容包括:服务英文名称,服务中列出的“输入参数”字段、“输出参数”字段是否有遗漏、字段是否正确,字段的取值约束是否正确。

该测试工作具有如下特点:1.中台服务标准化测试是基于规则的,按照服务提供方标准对外提供能力,需要自动化测试工具能支持服务标准化规范导入、业务参数提取、参数自动化比对功能。

《2024年自动化软件测试技术研究》范文

《2024年自动化软件测试技术研究》范文

《自动化软件测试技术研究》篇一一、引言随着信息技术的飞速发展,软件系统的复杂性和规模都在不断扩大,传统的软件测试方法已经无法满足快速、准确、高效的测试需求。

因此,自动化软件测试技术应运而生,并逐渐成为软件测试领域的重要研究方向。

本文将深入探讨自动化软件测试技术的相关研究,分析其技术原理、应用领域及未来发展趋势。

二、自动化软件测试技术概述自动化软件测试技术是指通过自动化测试工具和测试脚本,对软件系统进行自动化的测试和验证,以发现软件中的缺陷和问题。

该技术可以大大提高软件测试的效率和准确性,降低人工测试的成本和风险。

自动化软件测试技术包括功能测试、性能测试、安全测试等多个方面。

三、自动化软件测试技术原理自动化软件测试技术的原理主要基于自动化测试工具和测试脚本。

自动化测试工具可以模拟用户操作,对软件系统进行各种测试,如输入数据、执行操作、检查输出等。

同时,自动化测试工具还可以记录和回放测试过程,方便后续的测试和维护。

测试脚本则是根据测试需求和测试用例编写的,用于指导自动化测试工具进行测试。

通过测试脚本的编写和执行,可以实现对软件系统的全面、高效、准确的测试。

四、自动化软件测试技术的应用领域自动化软件测试技术在多个领域都有广泛的应用,如互联网、金融、医疗等。

在互联网领域,自动化软件测试技术可以用于对网站、APP等进行功能测试、性能测试和安全测试,确保软件的稳定性和安全性。

在金融领域,自动化软件测试技术可以用于对交易系统、支付系统等进行全面的测试,保障金融交易的安全和稳定。

在医疗领域,自动化软件测试技术可以用于对医疗信息系统进行测试,确保医疗数据的准确性和可靠性。

五、自动化软件测试技术的关键技术自动化软件测试技术的关键技术包括以下几个方面:1. 测试用例设计:根据需求和设计文档,编写全面、准确的测试用例,为自动化测试提供基础。

2. 自动化测试脚本编写:根据测试用例和需求,编写自动化测试脚本,实现自动化的测试和验证。

TESSY自动化测试工具

TESSY自动化测试工具

引言概述:TESSY自动化测试工具是一款功能强大的软件测试工具,它可以帮助软件开发团队自动化执行测试任务,提高测试效率和软件质量。

本文将深入探讨TESSY自动化测试工具的特点和应用场景,并分析其在软件测试过程中的作用,引导读者更好地了解和应用TESSY自动化测试工具。

正文内容:1. 基于模型的测试方法:- TESSY自动化测试工具采用基于模型的测试方法,可以根据软件系统的需求规约和设计模型自动生成测试用例。

这样,测试人员无需手动编写测试用例,大大提高了测试效率,并减少了测试过程中的错误。

- TESSY还支持多种模型,包括状态机模型、数据流模型和决策表模型等。

根据软件项目的特点和需要,测试人员可以选择合适的模型进行测试,以达到最佳的测试效果。

2. 自动化测试执行:- TESSY具有自动化测试执行的能力,可以自动执行测试用例,收集测试结果,并生成测试报告。

这样,测试人员可以将更多的精力放在测试分析和策略制定上,大大提高测试效率。

- TESSY还支持多种测试技术,包括白盒测试、黑盒测试和灰盒测试等。

测试人员可以根据需求选择合适的测试技术,并在自动化测试执行过程中应用这些技术,以发现更多的软件缺陷。

3. 高度可定制的测试环境:- TESSY提供了高度可定制的测试环境,可以根据软件项目的特点和需求,灵活配置测试环境。

测试人员可以选择不同的编程语言和操作系统,以及不同的测试工具和库,以适应不同的测试需求。

- TESSY还支持与其他测试工具和开发工具的集成,包括版本控制工具、缺陷管理工具和构建工具等。

测试人员可以与开发团队紧密合作,共同推动软件测试工作的进展。

4. 高度可扩展的测试框架:- TESSY基于开放式标准和设计原则,提供了高度可扩展的测试框架。

测试人员可以根据自己的需求,使用Tessy提供的API和扩展接口,将其他测试工具和技术集成到TESSY中,以实现更复杂和全面的测试任务。

- TESSY还支持分布式测试和并行测试,可以在多个计算机上同时执行测试任务,并进行结果的汇总和分析。

软件测试技术现状与发展趋势研究

软件测试技术现状与发展趋势研究

软件测试技术现状与发展趋势研究随着软件技术的不断发展,软件测试也在不断壮大和发展。

软件测试作为产品质量保证的重要环节,对软件的质量水平有着至关重要的影响。

随着对软件质量的要求越来越高,测试技术也在不断提高和更新。

本文将介绍测试技术现状和未来发展趋势,并提出一些有意义的建议。

一、测试技术现状1.自动化测试技术自动化测试技术已经成为软件测试的主流技术之一,其优点在于可以规范化测试流程、提高测试效率,并能够降低测试成本。

目前,自动化测试技术已经有了相对成熟的框架和工具,涵盖了功能测试、性能测试、安全测试等多个领域。

在自动化测试技术中,Selenium、Appium、JMeter等开源软件得到了广泛应用。

2.敏捷测试技术随着敏捷开发理念的不断普及,敏捷测试技术也得到了广泛应用。

敏捷测试的特点在于灵活、快速、反馈及时,能够适应快速迭代的开发模式。

敏捷测试技术包括测试驱动开发(TDD)、行为驱动开发(BDD)等新兴技术和流程规范。

3.云测试技术随着云计算技术的普及,云测试技术也得到了广泛应用。

云测试技术能够充分利用云平台的高可用性、高性能和弹性等特点,提高测试效率和可靠性。

云测试技术包括基于云平台的测试环境、测试自动化和测试数据管理等方面。

4.移动测试技术随着移动互联网的普及,移动测试技术也成为测试领域的一个重要方向。

移动软件的特点在于其复杂度高、测试困难度大。

移动测试技术包括功能测试、性能测试、兼容性测试和安全测试等。

移动测试技术中常用的框架和工具包括Calabash、Robotium、Monkey等。

二、测试技术发展趋势1.智能化测试技术智能化测试技术是测试技术未来的重要发展方向。

智能化测试技术包括机器学习、人工智能等多种技术,可以对测试过程进行自动化、优化和智能化处理,能够大大提高测试效率和测试精度。

2.跨平台测试技术跨平台测试技术是测试技术未来的一个重要方向。

随着移动互联网和物联网的普及,设备种类和操作系统的多样性也越来越多。

智能化应用测试的新型技术和方法分析

智能化应用测试的新型技术和方法分析

智能化应用测试的新型技术和方法分析随着企业数字化和智能化化的不断深入,各种应用软件的开发越来越重要。

但是面对企业中日益增多的软件需求和不断繁杂的业务场景,传统应用测试方式已经无法满足测试的准确性、稳定性和效率化的要求。

因此,不断出现新型的智能化应用测试技术和方法,成为企业测试质量的重要保障。

1. 智能化的需求随着人工智能技术和大数据技术的迅猛发展,智能化测试技术已经成为企业升级数字化的必经之路。

智能化测试可以从测试数据的收集和分析、测试用例的自动生成、测试执行的自动化、测试结果的分析和反馈等多个环节,提高测试过程的自动化程度和准确度。

随着应用场景的不断增加,智能化测试技术可以有效降低企业的测试成本、提高测试效率、保证测试质量、提高用户体验等多个方面达到企业的经济效益和社会效益。

2. 智能化测试的新型技术和方法2.1. 基于自动化测试的技术随着各种智能化技术的不断发展,自动化测试技术已经成为企业测试过程中不可或缺的一环。

自动化测试可以通过减少测试用例的人工操作、减少测试过程中的差错率、自动化执行测试过程中的数据分析和结果反馈等方式来实现测试的智能化。

基于自动化测试的新型技术和方法包括自动化测试平台、基于AI的自动化测试、基于大数据的自动化测试等。

2.2. 基于机器学习的技术机器学习是智能化应用测试非常有效的技术支持,通过数据分析、特征提取、模型建立等过程,实现测试用例的自动化生成、测试用例的优化、随机测试的自动化、错误定位和修复的自动化等多种智能化测试过程。

机器学习技术的普及,可以高效地在实时制定测试策略、指导测试人员和测试执行中进行实时反馈等方面发挥重要的作用。

2.3. 基于云端大数据的技术传统生产环境下的测试分析数据过多,不利于测试过程的管理。

基于云端大数据的技术可以统一收集和管理测试过程中产生的数据,方便企业测试过程管理和数据分析。

结合后端云数据分析能力,能够生成测试报表或图形化数据展示,有效地支撑人工智能测试的优化、稳定性和准确度等方面的需求。

智能卡操作系统自动化测试方法的研究与实现

智能卡操作系统自动化测试方法的研究与实现

能需求 。
0 引 言
近年来 , 随着 电子技术 的不断发展 , 智能卡 已经成 为我们 日 常生活 中不可缺少 的一部分 。从手机卡 、 银行卡 、 医疗 保健卡到 公交卡 、 门禁卡 、 高速公路 收费 卡等 等 , 智能卡 以其安全性高 、 方 便快捷 、 容量大 、 多功能 等诸 多优 点” ’ ] , 为 我们 的生 活带 来 了 极大的便利 。智能卡 的使用离不开 其内部软件的支持 。智能卡
严婷婷 张志鸿
( 郑州大学信息工程学院 河南 郑 州 4 5 0 0 0 1 )


针 对现有智能卡操 作 系统 C O S ( C h i p O p e r a t i n g S y s t e m) 测试难 、 效率低 , 以及现有测试工具 通用性 差、 测试脚本 复用程度
Ab s t r a c t E x i s t i n g C OS h a s t h e p r o b l e ms o f d i f f i c u l t i n t e s t ,l o w e ic f i e n c y ,i t s c u r r e n t t e s t t o o l s a r e o f p o o r u n i v e r s a l i t y ,a n d l o w l e v e l o f
a s we l l a s t h e d e s i g n o f i t s c o r r e s p o nd i ng i n t e r p r e t e r . Ap pl i e d pr a c t i c e s h o ws t ha t t he UCS L s c r i pt i ng l a ng u a g e ha s t h e a dv a nt a g e s f o s i mpl e

机械自动化论文参考文献

机械自动化论文参考文献

机械自动化论文参考文献文后参考文献的著录是被著录的文献本身。

专著、连续出版物等可依次按题名页、封面、刊头等著录。

缩微制品、录音制品等非书资料可依据题名帧、片头、容器上的标签、附件等著录。

下面是和大家分享的机械自动化论文参考文献,更多内容请关注(.oh100./bylw)。

篇一:参考文献[1]王飞,刘洪才,潘立冬.分层式结构变电站自动化通信系统研究综述[J].华北电力大学学报(自然科学版).xx(01)[2]周文瑜,温刚,王钇,苏迪.SCL在变电站自动化系统的应用[J].继电器.xx(15)[3]郭嘉,韩力,罗建,高仕红.SCL在变电站智能电子装置通信配置中的应用[J].重庆大学学报(自然科学版).xx(12)[4]谢志迅,邓素碧,臧德扬.数字化变电站通信网络冗余技术[J].电力自动化设备.xx(09)[5]刘洋,罗毅,易秀成,涂光瑜,陈维莉,江伟.变电站综合自动化系统的软件可靠性研究[J].继电器.xx(18)[6]唐富华,郭银景,杨阳.基于IEC61850和嵌入式以太网的变电站网络通信系统[J].电气自动化.xx(03)[7]李俊刚,宋小会,狄军峰,魏勇.基于IEC62439-3的智能变电站通信网络冗余设计[J].电力系统自动化.xx(10)[8]王凤祥,方春恩,李伟.基于IEC61850的SCL配置研究与工具开发[J].电力系统保护与控制.xx(10)[9]于敏,何正友,钱清泉.基于Markov过程的硬/软件综合系统可靠性分析[J].电子学报.xx(02)[10]窦晓波,胡敏强,吴在军,杜炎森,闵涛.数字化变电站通信网络的组建与冗余方案[J].电力自动化设备.xx(01)[11]唐富华,郭银景,杨阳.基于IEC61850和嵌入式以太网的变电站网络通信系统[J].电气自动化.xx(03)[12]张沛超,高翔.全数字化保护系统的可靠性及元件重要度分析[J].中国电机工程学报.xx(01)[13]许铁峰,徐习东.高可用性无缝环网在数字化变电站通信网络的应用[J].电力自动化设备.xx(10)[14]童晓阳,廖晨淞,周立龙,李映川,章力,王晓茹,许克崃.基于IEC61850-9-2的变电站通信网络仿真[J].电力系统自动化.xx(02)[15]王丽华,马君华,王传启,马长武,江涛,韩明峰,王志华,张丽胜,种惠敏.变电站配置描述语言SCL的应用研究[J].电网技术.xx(S1)[16]陈原子,徐习东.基于并行冗余网络的数字化变电站通信网络构架[J].电力自动化设备.xx(01)[17]方晓洁,季夏轶,卢志刚.基于OPNET的数字化变电站继电保护通信网络仿真研究[J].电力系统保护与控制.xx(23) 篇二:参考文献[1]杜厚鹏.基于监控视频的运动车辆检测与违章分析[D].南京邮电大学xx[2]尹雪雯.中波发射台自动化监控系统的实践和完善[J].电子技术与软件工程.xx(16)[3]李宗辰.基于Android的多路视频监控用户平台的研究与实现[D].南京邮电大学xx[4]孙娜.中波发射台自动化监控系统的实践和完善[J].视听.xx(05)[5]朱少坡.视频监控中目标的空间定位优化技术研究[D].南京邮电大学xx[6]沈忱.视频监控中的预处理、目标检测和跟踪方法研究[D].南京邮电大学xx[7]高滨,孙长海.论广播电视发射台自动化监控桌系统[J].西部广播电视.xx(Z2)[8]邬雪梅.广播电视发射台自动化监控系统[J].科技传播.xx(02)[9]张琦等编着.数字电视制播技术[M].中国广播电视出版社,xx[10]曹金泉.广播电视发射台站自动化监控系统建设[J].电子世界.xx(19)[11]廖楚加.自动化监控技术在电视发射台系统中的应用研究[J].信息通信.xx(04)[12]王涛.基于OMAP的嵌入式视频监控系统[D].南京邮电大学xx[13]朱兴华.中波发射台实现自动化监控如何解决干扰问题[J].内蒙古广播与电视技术.xx(01)[14]刘剑波等编着.有线电视网络[M].中国广播电视出版社,xx[15]张红波.嵌入式系统视频会议控制技术的研究与实现[D].南京邮电大学xx[16]李松.天网高清视频监控存储系统设计与实现[D].南昌大学xx[17]刘翔.城市视频监控系统设计与实现[D].南京邮电大学xx[18]李森.在广播发射台中实现监控自动化设计[J].信息通信.xx(08)[19]赵栖平.监控视频中基于在线学习的车辆跟踪检测算法与实现[D].南京邮电大学xx篇三:参考文献[1]吴莹.基于Selenium的Web自动化测试框架[J].科技传播.xx(18)[2]顾国庆.移动图书馆的研发与实现[D].南昌大学xx[3]高凌琴.基于STAF的自动化测试框架的研究[J].曲阜师范大学学报(自然科学版).xx(03)[4]王玉蓉.青南村村务信息管理系统的研究与开发[D].浙江农林大学xx[5]李斌.工控软件的层次化设计及应用[D].苏州大学xx[6]李首文,何贵兵.自动技术在软件测试过程中的研究与实施[J].科技信息.xx(15)[7]周宁.移动考勤管理的应用与研究[D].南昌大学xx[8]姚砺,束永安.软件测试自动化关键技术的研究[J].安徽大学学报(自然科学版).xx(04)[9]张永梅,陈立潮,马礼,郭韶升.软件测试技术研究[J].测试技术学报.xx(02)[10]吕诚昭,孟洛明.一个软件测试自动化系统:TSBAG[J].北京邮电学院学报.1993(01)[11]徐磊.烟草行业商零物流在途监管信息系统设计[D].南昌大学xx[12]黄彪贤,熊建斌,李振坤.金融软件功能自动化测试的分析及应用[J].计算机工程与设计.xx(02)[13]兰欣.微信公众平台CMS的设计与实现[D].南昌大学xx[14]刘腾.软件测试技术与自动化测试框架模型的研究与应用[J].电脑知识与技术.xx(26)[15]中国农业银行股份有限公司江苏省南通市分行课题组.银行软件自动化测试技术的应用[J].中国金融电脑.xx(12)[16]郭巍,龚兵,张武光.基于数据操作的自动化测试技术研究与应用[J].飞行器测控学报.xx(04)[17]赵杰,张晶,高继森.基于XML的测试用例复用[J].重庆工学院学报(自然科学版).xx(09)[18]刘星,蔡勉,李燕,郭颖.基于关键字驱动机制的安全操作系统的测评系统[J].计算机安全.xx(10)[19]蒋云,赵佳宝.自动化测试脚本自动生成技术的研究[J].计算机技术与发展.xx(07)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第28卷第4期2009年8月飞行器测控学报Journal of Spacecraft TT&C TechnologyVol.28No.4Aug.2009基于数据操作的自动化测试技术研究与应用*郭巍1,2,龚兵1,张武光1(11西安交通大学#陕西西安#710043;21西安卫星测控中心#陕西西安#710043)摘要:首先分析了数据驱动实时软件自动化测试中存在的问题,提出了基于数据操作的改进关键字驱动脚本自动化测试方法,并在此基础上实现了航天测控软件系统的自动化测试平台。

关键词:数据操作;改进关键字驱动脚本;数据结构描述;测试自动化中图分类号:TP311文献标识码:A文章编号:167425620(2009)0420048205Research and Implementation of Test AutomationBased on Data ManipulationGUO Wei1,2,GONG Bing1,ZHANG Wu2guang1(1.Xi.an J iaotong University,Xi.an,Shaanxi Province710043;2.Xi.an Satellite Control Center,Xi.an,Shaanxi Province710043)A bstract:Following analysis of problems in data2driven realtime software testing,the paper presents an improved keywords2 driven script automation framework.The paper also intr oduces application of a data2driven space TT&C software testing platform in XSCC based on automatic framewor k.Keyw or ds:Data Manipulation;Impr oved Keywords2Driven Script;Data Structure Description;Test Automation0引言测试自动化技术作为传统测试理论和实际工程应用的重要纽带,日益彰显重要作用。

IBM在发布自动化测试工具IBM Rational的技术白皮书中明确指出成功测试之处在于:及早测试、连续测试和自动化测试。

自动化测试可减少测试工作量,提高测试效率,准确获得测试数据和实测结果[1]。

典型的航天测控软件(以下简称测控软件),大部分是基于事件的作业调度与数据驱动式软件,软件处理对实时性、容错性和精度要求较高,较少需要人工交互操作。

此外,测控软件处理的测控数据,多数为具有特定制约关系的一组数据诸元构成的复杂结构,因此,航天测控实时软件测试具有复杂数据模拟、实时数据生成等要求。

由于缺乏有效的数据自定义和操作支持,成熟的商用自动化测试工具在面向GUI 应用中凸显的快捷、便利等优点无法发挥,很难胜任测控软件的测试需要。

因此在繁琐的数据驱动测控软件测试中,决定测试效果的主要是测试用例的自动化设计和执行、测试数据的产生自动化以及完备合理性,因此本文提出了测试数据的格式定制与完备化自动生成、测试用例设计与运行控制脚本的自动化2大研究内容。

1改进的关键字驱动测试脚本测试脚本是由自定义的脚本语言编写的一段程序,测试脚本用来描述一个测试过程或测试包。

测试用例的脚本化,一方面使得测试过程自动化执行成为可能,另一方面大大简化了回归测试工作,进而增强了测试用例的复用性[2]。

IBM Rational Robot能够录制用户GU I操作并生成脚本供回归测试,但这种脚本绑定了测试操作和数据,同时由于其针对特定GUI 应用,造成它的可移植性和重用性较差,因此必须在研究用例脚本技术基础上,形成适应航天测控软件的测试脚本运行机制。

流行的测试脚本技术主要有以下几类:线形脚本、结构化的线形脚本、共享脚本、数据驱动脚本、关键字驱动脚本[2]。

关键字驱动脚本技术在导航脚本的控制下,读取基本测试数据和关键字对象数据,遇到关键字时则调用对应的支持脚本,同时传递对象和数据,通过导航脚本和关键字支持脚本*收稿日期:2009-02-02;修回日期:2009-02-23第一作者简介:郭巍(1974-),男,硕士,高工,主要从事航天测控软件质量保证与测试技术研究。

第4期郭巍,等:基于数据操作的自动化测试技术研究与应用的嵌套运行,实现了测试用例自动运行。

可以看出,这种测试操作和数据的剥离以及关键字驱动用例自动化执行思想比较适合航天测控软件测试。

但是由于高实时性和数据格式特殊且多样化等要求,造成该技术应用存在2大缺陷:一是测试用例执行过程中需要多次访问多个数据文件,无法满足高实时性要求;二是由于测试数据存储在特定文件中,测试人员不可能人工穷举测试数据并编入数据文件,故无法解决测试数据自动生成和完备覆盖数据值域的要求。

针对上述问题,本文提出了基于数据操作改进关键字驱动脚本方法。

所谓数据操作,就是把数据作为测试动作应用的基本对象,并以此为出发点,把对数据驱动的软件测试活动转化为一系列数据操作,通过不同的数据操作体现被测软件的应激状态,进而达到软件测试的目的。

从上文可知,关键字驱动脚本通过导航脚本控制,分别读取关键字支持脚本和数据文件的固有机制带来了执行效率问题,因此可以合并导航脚本和关键字支持脚本,即提高关键字脚本所处的层次,也就是说,把脚本执行控制字和数据操作关键字合并,形成一种真正的面向数据操作的脚本语言,同时为了解决文件数据固定问题,使用另一种脚本来描述多样的数据结构,同时把对数据的不同加工方式融入脚本描述中,这样就解决了数据结构定制和完备产生的困难。

同样,为避免对测试用例脚本在执行过程中嵌套解释数据定义脚本带来的效率问题,首先采用X ML脚本来描述数据结构,并使用数据库和XML相结合,把数据描述转化为数据表存放,同时在测试用例脚本中增加数据生成关键字(语句),使得用例执行伊始,按照用户给出的数据格式定义和产生方式描述,加工好所需的数据供后续数据操作(关键字)语句使用,即使在后续操作中需要修改数据内容,也无需重新读取数据描述脚本。

通过这样2大措施改进的关键字驱动脚本,在运行效率和数据产生灵活性、完整性上都具有更强的实用性,尤其适合测控软件的测试。

改进的关键字驱动脚本语句主要分为2大类:执行控制语句和测试数据操作语句。

其中控制语句主要包括:start、end、for、if,then,else、sleep等语句,其解释过程比较成熟,本文不作描述。

测试数据操作语句包括:数据格式自定义、数据自动生成(包括正常数据和异常数据)、数据发送与接收(进程间和分布网络)、数据检查比对等语句,主要用于控制测试数据的加工、发送等,语句关联定义了用户定义的数据结构与数据操作。

测试用例执行过程中,脚本引擎自动解析各类关键字语句,对数据操作关键字,读取用户设定的参数,按照不同的数据操作执行数据加工、发送、接收、比对等工作,同时为了解决被测软件间的逻辑控制,可定义消息等待和接收关键字以控制测试脚本的执行。

一方面,改进的关键字驱动脚本技术大大简化了测试人员对测试数据的操作,用户可以方便地使用这种类自然语言定义对被测软件进行激活,并接收和评估被测系统的数据和逻辑、时序反应;另一方面,当出现未定义的数据操作时,可灵活扩充关键字语句集,大大提高了应用的广泛性。

使用该方法可以便利地定义测试数据产生规律,定制产生固定数据、边界数据和函数变化数据及其他异常数据,还可控制对测试数据输入方式、频率,也就是定义对已生成数据的操作。

现在首先介绍对数据的操作。

例如在强度测试或某些性能测试中,测试的目的通常是确认被测对象处理信息的最大能力或满足系统需求的程度,测试过程一般是逐步加大测试数据输入的频率,直到被测对象运行状态处于不正常或处理结果不正确。

在每次加大测试数据输入频率之前,被测对象要经过3种形式的测试,第一种称为/均匀式0测试,即每隔T/X时间向被测对象输入测试数据1次(X为当前每单位时间对被测对象测试的次数,T为单位时间);第二种叫做/集中式0测试,也就是在单位时间T内连续、无间隔向被测对象输入X次测试数据;第三种形式是前2种形式的综合,它把X次均匀分成5段,每段连续、无间隔测试X/5次。

对于这种具有普遍性的要求,只需分别调用data.SendData(flag,time),脚本引擎将传递不同flag取值和时间间隔给相应的关键字语句处理模块,从而解释执行相应的数据发送操作。

图1中给出了某测控软件的测试脚本,描述了对测试数据的操作和控制过程。

首先用户使用下文提出的数据结构定义方法定义具有特定逻辑结构的测控数据DataStructure,而后使用数据方向定义语句DefineDirection定义了通过网络方式发送该数据的操作要求,接着在循环体内使用固定码产生该格式数据,并每间隔2s向指定的网络地址发送该数据。

2基于XML的数据描述脚本测试的关键之一在于,针对某种数据结构格式、按照某种策略产生测试输入数据,然后再通过某种传递方式把产生的数据传给被测对象[3]。

对一个被测对象进行测试一般是产生多组测试数据,而不是一组49飞行器测控学报第28卷图1 改进关键字驱动脚本运行示意图数据。

因此,依靠手工编程或排列组合来产生多组测试数据非常麻烦,商业软件C++T est 、IBM Rational Robot 测试工具仅提供了简单数据生成,但是任意结构格式的数据生成,特别是产生连续的、符合某种规律的、特殊类型的变长结构的测试数据,上述2种工具都无能为力。

测控软件需要处理大量的复杂数据结构,图2给出了一种抽象测量数据的封装格式。

图2 专用数据结构示意图只有实现任意结构数据(固定格式、可变格式及嵌套格式)的自动生成,才能根本解决测控软件自动化测试存在的数据不完备问题。

通过对这些不同格式的数据分析可以发现,不同的数据结构可以看作一些不可再分的数据元按照特定规律的组合,而这种组合关系是可以描述的。

对数据结构的描述就是对接口的格式、属性的详细定义,数据接口层次图见图3。

图3 复杂数据结构层次示意图有些数据项实际具有某种控制结构的作用,称其为控制项,通过在结构描述中增加/控制方式0可解决数据项的重复问题,如数组、重复子结构定义等,同时还可使用算术表达式表示某些数据项占用内存的字节数。

在描述特定结构中不同参数的类型、长度、取值范围、量纲等静态属性基础上,还可以描述该参数的动态变化规律,这就使得用户能够灵活地使用脚本来描述多样化的数据类型,在对数据定义脚本解释基础上也实现了测试数据的自动生成,并满足了充分性要求。

相关文档
最新文档