当前位置: 首页 > 专利查询>彭勇专利>正文

一种交互式自动化测试系统技术方案

技术编号:7453326 阅读:235 留言:0更新日期:2012-06-22 20:42
本发明专利技术提出一种交互式自动化测试系统,包括界面录制模块、自动化用例编辑器、测试总控端和代理执行端,所述录制界面通过录制的控件库文件进行连接,所述测试总控端分别与自动化用例编辑器和代理执行端连接;所述自动化用例编辑器和测试总控端应用有类自然语言管理器。由于其实施方案原理与传统测试系统不同,使得软件自动化测试的构建速度大大提高,同时也降低了对自动化测试人员的能力要求,并且能执行传统测试工具无法解决的软件交互式测试的难题。

【技术实现步骤摘要】

本专利技术涉及软件自动化测试领域工具的设计和开发领域,特别涉及一种交互式自动化测试构建工具。技术背景当前的主流测试工具,无论是开源自动化测试工具,还是商业自动化测试工具,都是直接使用某种编程语言,进行测试脚本编写和调试,然后脚本在单机执行自动化测试。这些自动化测试,由于其对缺陷的捕获能力、健壮性和对变更的适应性,都依赖于脚本的编写结果。但是,单个测试脚本的复杂度限制和测试成本效益的限制,不能把脚本写的过于复杂。所以,当前的自动化测试工具,只能用于软件成熟稳定时的回归测试。对于测试过程中, 脚本未考虑到的“意外”错误,在原理上,无法做到有效捕获和自动处理。由于当前测试工具基本都是针对单机执行设计的,所以,很难建立多台机器之间交互过程的业务流用例测试。而这方面的业务流测试,却往往是一个软件的功能需求的核心功能测试。由于自动化测试脚本,是以某种语言,以编程的方式构建成的。所以,自动化测试的构建过程,从设计测试框架和构建调试测试脚本,到准备测试数据的过程,耗费了大量时间和资源,使得自动化测试很难显示出显著的成本效益
技术实现思路
为了解决上述技术问题,本专利技术提供一种交互式自动化测试系统,采用如下技术方案,一种交互式自动化测试系统,包括界面录制模块、自动化用例编辑器、测试总控端和代理执行端,其中所述界面录制模块录制被测对象的所有控件和界面截图,打包封装到控件库中,供自动化用例编辑器用例生成使用和测试总控端及代理执行端执行使用;所述自动化用例编辑器加载界面录制模块录制的控件库,生成自动化测试用例,并在界面上模拟展示出被测系统的全貌,以方便测试用例设计人员直接选取被测控件,生成该控件执行的动作或检查;所述测试总控端把界面录制模块录制的控件库和自动化用例编辑器生成的自动化测试用例加载入系统,执行根据控件库和配置文件的设置,进行被测对象识别,分派自动化测试用例中的执行任务给代理执行端执行,同时,接受代理执行端执行动作后的结果日志和对应的截图,保存成日志文件;所述代理执行端连接测试总控端,并接收执行测试总控端发送过来的控件操作动作, 同时将操作后的结果和截屏发送给测试总控端;所述录制界面通过录制的控件库文件进行连接,所述测试总控端分别与自动化用例编辑器和代理执行端连接;所述自动化用例编辑器和测试总控端应用有类自然语言管理器。所述的测试总控端至少连接一个代理执行端。所述的自动化用例编辑器器用于直接调出录制模块、运行模块录制和执行自动化测试。所述类自然语言管理器将生成好的类自然语言测试用例的每个测试动作语句进行解析,解析出动作名称、动作对象和动作参数语素,送入相应的函数接口执行。 所述的类自然语言管理器为中文和英文两种类自然语言。所述的英文类自然语言是以英文测试用例常用语句为样板提炼加工而成,符合英文测试用例常用的表达习惯。所述的中文类自然语言是以中文测试用例常用语句为样板提炼加工而成,符合中文测试用例常用的表达习惯。本专利技术的优点在于,由于其实施方案原理与传统测试系统不同,使得软件自动化测试的构建速度大大提高,同时也降低了对自动化测试人员的能力要求,并且能执行传统测试工具无法解决的软件交互式测试的难题。具体如下1.该系统采用直接录制控件库,并配合被测界面的截图,能完全展示被测程序的GUI (Graphical User hterface,图形用户界面)界面的外形,使测试人员在该界面上操作时更直观,和在被测软件上直接操作感觉相似,新技术减少了在页面刷新过慢时被测系统刷新的等待时间。2.测试人员在测试工具展示的被测软件的虚拟界面想要操作的控件上点击右键, 可以选择该控件可以执行的任何一种动作或者数据检查,由工具自动生成该测试语句,使得自动化测试操作语句的生成和传统的录制动作的模式速度是等效的。但是在数据检查语句的生成速度上,由于免去了手写脚本和调试脚本的工作,效率提升可为传统方式的2 10倍以上。3、生成的测试语句采用类似自然语言的语法习惯,读起来像人工写成的测试用例语句,使得自动化测试和手动测试可以采用同一个测试用例,让手动测试和自动化测试结合的更加紧密,语句结构简单,减少了用例调试的复杂度。这种用例生成后,几乎不需要调试即可很好的执行。同时,也使不懂编程的纯手工测试人员无需培训即可熟练设计自动化测试用例。既提高了脚本生成的速度和质量,又大大降低了人力资源的成本。4、异常的自动捕获和处理功能。传统测试工具需要自己预设哪里的测试操作会遇到哪些意外错误,并写出完整的处理脚本并调试通过才能完成,并且,脚本编写者由于经验和时间的原因,无法把一个测试脚本中的所有意外错误情况都设计进脚本,使得脚本天生就具备很多缺陷,遇到脚本没有涉及到的情况就无法处理,需要人工干预才可以继续运行, 使自动化执行的效果大打折扣。该系统具有意外错误自动检查功能,使得测试人员省去了设计用例每个动作执行后会出现哪些意外错误,以及如何处理错误的代码设计时间。5、该系统采用Console (测试总控端)-Agent (代理执行端)架构执行测试用例, Console控制每个Agent端的每个测试动作,使得自动化测试能直接执行B/S或C/S软件多终端之间的交互式测试用例。这些测试用例往往就是该软件业务流测试的核心用例,传统4测试工具无此功能。6、该系统采用自动日志和截图功能,使得测试过程中的任何细节,都能够如是准确的记录下来。用户也不需要在测试步骤中加入日志记录和截屏判断语句,减少了自动化测试用例的复杂度。7、该系统采用动态数据存储技术,使得测试用例内部和测试用例之间的数据传递和数据验证,变得简单便捷,使得测试用例的构建更加高效。8、自动异常捕获和记录执行端在遇到任何执行过程中出现的被测软件的异常或错误,执行端都会自动捕获下来,并记入测试执行日志。这个过程是自动的,自动化测试人员在生成测试用例时无需做这方面的考虑,这些节省了大量的工作时间,提高自动化用例的生成效率。附图说明图1是本专利技术的工作流程图; 图2是本专利技术的模块连接关系图。具体实施方式为了使本专利技术实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合图示与具体实施例,进一步阐述本专利技术。如图2所示,本专利技术提出的交互式自动化测试系统包括界面录制模块 (Recorder )、自动化用例编辑器(CaseEditor )、测试总控端(Conso 1 e )和代理执行端 (Agent),其中所述界面录制模块录制被测对象的所有控件和界面截图,打包封装到控件库中,供自动化用例编辑器用例生成使用和测试总控端及代理执行端执行使用;所述自动化用例编辑器加载界面录制模块录制的控件库,生成自动化测试用例,并在界面上模拟展示出被测系统的全貌,以方便测试用例设计人员直接选取被测控件,生成该控件执行的动作或检查;所述测试总控端把界面录制模块录制的控件库和自动化用例编辑器生成的自动化测试用例加载入系统,执行根据控件库和配置文件的设置,进行被测对象识别,分派自动化测试用例中的执行任务给代理执行端执行,同时,接受代理执行端执行动作后的结果日志和对应的截图,保存成日志文件;所述代理执行端连接测试总控端,并接收执行测试总控端发送过来的控件操作动作, 同时将操作后的结果和截屏发送给测试总控端;其中,所述录制界面通过录制的控件库文件进行本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:彭勇
申请(专利权)人:彭勇
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术