一种自动化测试方法及系统技术方案

技术编号:15124604 阅读:107 留言:0更新日期:2017-04-10 02:50
本发明专利技术公开了一种自动化测试方法及系统。所述方法以下步骤:(1)根据触发机制触发测试代码提取;(2)挖掘所述测试代码中的测试关键字及测试对象;(3)将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;(4)执行所述测试代码包并生成测试报告。所述系统包括:测试代码管理模块、测试关键字挖掘模块、测试代码包生成模块、以及测试报告生成模块。本发明专利技术提供的自动化测试方法及系统,由于功能测试人员能利用自然语言描述测试用例,而代码开发人员能根据标准需求开发测试代码,能够取得下列测试自动化、脚本标准化、测试代码稳定性、鲁棒性高、测试报告可靠的有益效果。

【技术实现步骤摘要】

本专利技术属于软件测试领域,更具体地,涉及一种自动化测试方法及系统
技术介绍
现有的自动化测试,常常由独立的自动化测试团队来执行和维护功能测试人员收到自身编程水平的限制,一般无法十分了解自动化测试包的细节,导致无法按照自身多类型的测试需求来执行自动化脚本。编写自动化脚本成员由于无法准确了解功能测试用例测试点导致编写自动化测试用例缺乏测试重点性,使自动化测试用例很难有效发现测试中的缺陷。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种自动化测试方法及系统,其目的在于通过挖掘自然语言中测试工作相关的关键字实现相应的测试动作,由此解决现有的自动化技术功能测试人员不了解自动化测试包的细节而变成人员无法准确了解功能测试用例的测试点,造成的测试需求不明或者测试重点性不佳的技术问题。为实现上述目的,按照本专利技术的一个方面,提供了一种自动化测试方法,包括以下步骤:(1)根据触发机制触发测试代码提取;(2)挖掘所述测试代码中的测试关键字及测试对象;(3)将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;(4)执行所述测试代码包并生成测试报告。优选地,所述自动化测试方法,其步骤(1)所述触发机制为时间触发和/或事件触发。优选地,所述自动化测试方法,其步骤(1)所述测试代码提取顺序为先进先出或先进后出。优选地,所述自动化测试方法,其步骤(2)所述关键字包括操作关键字和验证关键字。优选地,所述自动化测试方法,所述测试对象基于安卓平台;所述步骤(3)具体为:将所述关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包并生成安卓测试应用;所述步骤(4)具体为:安装所述安卓测试应用并执行测试代码,生成测试报告。按照本专利技术的另一方面,提供了一种自动化测试系统,包括:测试代码管理模块:用于保存功能测试人员开发的测试代码,并根据触发机制触发测试代码提取到测试关键字挖掘模块;测试关键字挖掘模块:挖掘所述测试代码中的测试关键字;测试代码包生成模块:用于将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;测试报告生成模块:用于执行所述测试代码包并生成测试报告。优选地,所述自动化测试系统,其代码管理模块采用时间触发和/或事件触发。优选地,所述自动化测试系统,其代码管理模块包括测试代码存储单元,用于存储测试代码;所述测试代码存储单元为堆栈结构或队列结构。优选地,所述自动化测试系统,其关键字挖掘模块包括测试关键字库,用于存储测试关键字。优选地,所述自动化测试系统,所述测试对象基于安卓平台,所述代码包生成模块,用于将所述测试脚本打包为安卓测试应用;所述测试代码生成模块,用于安装所述安卓测试应用并执行所述测试代码包。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,由于功能测试人员能利用自然语言描述测试用例,而代码开发人员能根据标准需求开发测试代码,能够取得下列测试自动化、脚本标准化、测试代码稳定性、鲁棒性高、测试报告可靠的有益效果。附图说明图1是本专利技术的自动化测试方法的流程简图;图2是本专利技术的自动化测试系统的结构示意图;图3是本专利技术实施例提供的自动化测试系统的实现示意图;图4是本专利技术实施例提供的自动化测试方法的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。本专利技术提供了一种自动化测试方法,如图1所示,包括以下步骤:(1)根据触发机制触发测试代码提取;所述触发机制可采用时间触发或者事件触发:时间触发如定时触发;事件触发如代码更新时触发。多种触发方式可单一使用或者同时使用。所述测试代码提取可采用先进先出或先进后出顺序。所述测试代码为功能测试人员根据测试用例编写,可采用自然语言编写,如中文或英文,例如:进入<登录页>。(2)挖掘所述测试代码中的测试关键字及测试对象;例如:其中“进入”为动作,“登录页”为测试对象。测试关键字为测试常用动作,包括:A、操作关键字:进入、进入连接、点击、填写、选择、以及等待。B、验证关键字:显示、验证数值、验证表格、验证数值差、等待出现、以及不显示。(3)将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;如所述测试对象基于安卓平台:则将所述关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包并生成安卓测试应用。所述测试脚本为开发人员编写,执行测试关键字对应的测试程序,采用计算机语言编写,优选采用脚本语言编写,如Ruby、Python、Java等。(4)执行所述测试代码包并生成测试报告。如所述测试对象基于安卓平台:所述步骤(4)具体为:安装所述安卓测试应用并执行测试代码,生成测试报告。执行所述测试代码包的过程中,如执行成功则记录测试数据,否则进行异常处理,并记录出错数据。执行所述测试代码包记录的所有数据形成测试报告,包括测试数据和出错数据。一种自动化测试系统,如图2所示,包括测试代码管理模块:用于保存功能测试人员开发的测试代码,并根据触发机制触发测试代码提取到测试关键字挖掘模块。所述触发机制可采用时间触发或者事件触发:时间触发如定时触发;事件触发如代码更新时触发。多种触发方式可单一使用或者同时使用。所述测试代码管理模块包括测试代码存储单元,所述测试代码存储单元可采用堆栈结构或者队列结构。所述测试代码为功能测试人员根据测试用例编写,可采用自然语言编写,如中文或英文。例如:进入<登录页>。测试关键字挖掘模块:挖掘所述测试代码中的测试关键字和测试对象;例如,其中“进入”为测试关键字,“登录页”为测试对象。测试关键字为测试常用动作,包括:A、操作关键字:进入、进入连接、点击、填写、选择、以及等待。B、验证关键字:显示、验证数值、验证表格、验证数值差、等待出现、以及不显示。所述关键字挖掘模块,包括测试关键字库,用于存储测试关键字。具体地,该模块首先对测试代码进行匹配,以Ruby语言为例:测试用例为“进入<个人中心&本文档来自技高网...

【技术保护点】
一种自动化测试方法,其特征在于,包括以下步骤:(1)根据触发机制触发测试代码提取;(2)挖掘所述测试代码中的测试关键字及测试对象;(3)将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;(4)执行所述测试代码包并生成测试报告。

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括以下步骤:
(1)根据触发机制触发测试代码提取;
(2)挖掘所述测试代码中的测试关键字及测试对象;
(3)将所述测试关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包;
(4)执行所述测试代码包并生成测试报告。
2.如权利要求1所述的自动化测试方法,其特征在于,步骤(1)所述触发机制为时间触发和/或事件触发。
3.如权利要求1所述的自动化测试方法,其特征在于,步骤(1)所述测试代码提取顺序为先进先出或先进后出。
4.如权利要求1所述的自动化测试方法,其特征在于,步骤(2)所述关键字包括操作关键字和验证关键字。
5.如权利要求1所述的自动化测试方法,其特征在于,所述测试对象基于安卓平台;
所述步骤(3)具体为:将所述关键字对应的测试脚本按照测试代码的顺序集合,形成测试代码包并生成安卓测试应用;
所述步骤(4)具体为:安装所述安卓测试应用并执行测试代码,生成测试报告。
6.一种自动化测试系统,其特征在于,包括:
测试...

【专利技术属性】
技术研发人员:刘致微谭敏
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

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

1