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

技术编号:15329399 阅读:203 留言:0更新日期:2017-05-16 13:05
本发明专利技术涉及测试领域,尤其涉及一种自动化测试方法及系统。通过根据软件中各页面节点的层级关系生成相应的树状图;遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;生成与所述第一路径相应的测试脚本。实现无需测试人员编写测试脚本就能够自动生成与各UI功能相应的测试脚本,提高了测试效率,并有效地减少了测试过程中投入的时间和人力。

Automatic test method and system

The invention relates to the testing field, in particular to an automatic test method and system. According to the dendrogram generated by the corresponding hierarchy of each page node in the software; and traversing the tree, in order to obtain a path to the leaf node to the root node, the first generation of test script path; and the first path corresponding. The test script can automatically generate test scripts corresponding to each UI function without the need for testers to write test scripts, thus improving the testing efficiency and effectively reducing the time and manpower involved in the testing process.

【技术实现步骤摘要】
一种自动化测试方法及系统
本专利技术涉及测试领域,尤其涉及一种自动化测试方法及系统。
技术介绍
目前大多数Android软件的UI功能测试需由测试人员人工操作。现有的自动化测试方法需要编写相应的功能测试脚本,要求测试人员有一定的编程基础。此外,当更新Android软件版本时,测试人员需要重新手动测试一次UI的功能或者修改之前编写的测试脚本,使得测试人员需要不停的重复做功能回归测试,浪费大量的时间和人力。
技术实现思路
本专利技术所要解决的技术问题是:提供一种自动化测试方法及系统,实现自动测试软件的UI功能。为了解决上述技术问题,本专利技术采用的技术方案为:本专利技术提供一种自动化测试方法,包括:S1、根据软件中各页面节点的层级关系生成相应的树状图;S2、遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;S3、生成与所述第一路径相应的测试脚本。本专利技术还提供一种自动化测试系统,包括:第一生成模块,用于根据软件中各页面节点的层级关系生成相应的树状图;遍历模块,用于遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;第二生成模块,用于生成与所述第一路径相应的测试脚本。本专利技术的有益效果在于:区别于现有技术需由测试人员编写测试脚本,本专利技术通过遍历根据软件各页面的层级关系自动生成的树状图,自动生成相应的测试脚本,从而实现自动测试软件的UI功能。其中,所述树状图的每一分支所包含的页面节点为实现某一功能时按顺序调取的页面节点,因此,根据所述树状图,无需测试人员编写测试脚本就能够自动生成与各UI功能相应的测试脚本,提高了测试效率,并有效地减少了测试过程中投入的时间和人力。附图说明图1为本专利技术一种自动测试方法的流程框图;图2为社交软件的树状图;图3为本专利技术一种自动测试方法的结构框图;图4为微博新建分组功能的测试用例图;图5为微博新建分组功能树状图;图6为发布文字微博功能的树状图;图7为发布照片微博功能的树状图;图8为发布头条文章功能的树状图;图9为签到功能的树状图;图10为发布微博功能的树状图;标号说明:1、第一生成模块;2、遍历模块;3、第二生成模块。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:通过遍历与软件各页面节点的层级关系相应的树状图,自动生成各功能的测试脚本,实现无需由测试人员编写测试脚本,即可自动测试软件的UI功能。请参照图1至图5,如图1所示,本专利技术提供一种自动化测试方法,包括:S1、根据软件中各页面节点的层级关系生成相应的树状图;S2、遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;S3、生成与所述第一路径相应的测试脚本。进一步地,所述S1具体为:预设与软件各功能相应的测试用例,得到测试用例集合;根据所述测试用例集合获取与所述各功能对应的页面节点及页面节点间的层级关系;根据所述页面节点及页面节点间的层级关系生成与所述各功能相应的树状图,得到树状图集合;合并所述树状图集合包含的树状图,得到与软件相应的树状图。由上述描述可知,大型软件功能繁多,页面之间的逻辑关系复杂,通过合并各功能的树状图,从而生成与软件相应的树状图,能够快速、高效、完整、清晰地理清软件中各页面的逻辑关系。进一步地,所述S3具体为:获取与所述第一路径中各个页面节点包含的控件元素的属性相应的测试代码模板,形成第一测试代码模板集合;根据所述第一测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。由上述描述可知,实现自动匹配控件元素和测试代码模板,并结合预设测试数据集,生成与软件中各功能相应的测试脚本。控件元素的属性包括标签、文本框、编辑框、命令按钮、复选框和列表框等。根据控件元素的属性选取相应的测试模板。如,与文本框相应的测试模板中的操作为获取文本框中的信息,并判断文本框中的信息与预设的测试数据集是否匹配。再如,与命令按钮相应的测试模板中的操作为触发所述命令按钮,判断是否有执行与所述命令按钮相应的操作。进一步地,所述S3具体为:获取与所述第一路径中已生成相应测试代码的节点包含的控件元素的属性所对应的测试代码,形成第一测试代码集合;获取与所述第一路径中未生成相应测试代码的节点包含的控件元素的属性相应的测试代码模板,形成第二测试代码模板集合;根据所述第一测试代码集合、所述第二测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。由上述描述可知,实现可复用已生成的测试代码,提高测试效率。社交软件的树状图如图2所示,若当前测试脚本中已存在从个人主页根节点到个人档案叶子节点这一路径的测试代码,则当要生成从个人主页根节点到我的关注叶子节点这一路径的测试代码时,可复用从个人主页根节点到TA的主页节点这一路径的测试代码。进一步地,还包括:获取用户对软件的操作记录;分析所述操作记录,得到操作记录中涉及的页面节点的层级关系;根据所述操作记录中涉及的页面节点的层级关系更新所述树状图。由上述描述可知,同一软件的不同版本,其页面节点的层级关系略有不同,组织结构可能会有微小的变化,可通过分析用户对该软件不同版本的操作记录,更新树状图,从而自动更新相应的测试脚本。如图3所示,本专利技术还提供一种自动化测试系统,包括:第一生成模块1,用于根据软件中各页面节点的层级关系生成相应的树状图;遍历模块2,用于遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;第二生成模块3,用于生成与所述第一路径相应的测试脚本。进一步地,所述第一生成模块包括:预设单元,用于预设与软件各功能相应的测试用例,得到测试用例集合;第一获取单元,用于根据所述测试用例集合获取与所述各功能对应的页面节点及页面节点间的层级关系;第一生成单元,用于根据所述页面节点及页面节点间的层级关系生成与所述各功能相应的树状图,得到树状图集合;合并单元,用于合并所述树状图集合包含的树状图,得到与软件相应的树状图。进一步地,所述第二生成模块包括:第二获取单元,用于获取与所述第一路径中各个页面节点包含的控件元素的属性相应的测试代码模板,形成第一测试代码模板集合;第二生成单元,用于根据所述第一测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。进一步地,所述第二生成模块还包括:第三获取单元,用于获取与所述第一路径中已生成相应测试代码的节点包含的控件元素的属性所对应的测试代码,形成第一测试代码集合;第四获取单元,用于获取与所述第一路径中未生成相应测试代码的节点包含的控件元素的属性相应的测试代码模板,形成第二测试代码模板集合;第三生成单元,用于根据所述第一测试代码集合、所述第二测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。进一步地,还包括:获取模块,用于获取用户对软件的操作记录;分析模块,用于分析所述操作记录,得到操作记录中涉及的页面节点的层级关系;更新模块,用于根据所述操作记录中涉及的页面节点的层级关系更新所述树状图。本专利技术的实施例一为:预设与软件各功能相应的测试用例,得到测试用例集合;根据所述测试用例集合获取与所述各功能对应的页面节点及页面节点间的层级关系;根据所述页面节点及页面节点间的层级关系生成与所述各功能相应的树状图,得到树状图集合;合并所述树状图集合包含的树本文档来自技高网
...
一种自动化测试方法及系统

【技术保护点】
一种自动化测试方法,其特征在于,包括:S1、根据软件中各页面节点的层级关系生成相应的树状图;S2、遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;S3、生成与所述第一路径相应的测试脚本。

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括:S1、根据软件中各页面节点的层级关系生成相应的树状图;S2、遍历所述树状图,依次获取一叶子节点到根节点的路径,得到第一路径;S3、生成与所述第一路径相应的测试脚本。2.根据权利要求1所述的自动化测试方法,其特征在于,所述S1具体为:预设与软件各功能相应的测试用例,得到测试用例集合;根据所述测试用例集合获取与所述各功能对应的页面节点及页面节点间的层级关系;根据所述页面节点及页面节点间的层级关系生成与所述各功能相应的树状图,得到树状图集合;合并所述树状图集合包含的树状图,得到与软件相应的树状图。3.根据权利要求1所述的自动化测试方法,其特征在于,所述S3具体为:获取与所述第一路径中各个页面节点包含的控件元素的属性相应的测试代码模板,形成第一测试代码模板集合;根据所述第一测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。4.根据权利要求1所述的自动化测试方法,其特征在于,所述S3具体为:获取与所述第一路径中已生成相应测试代码的节点包含的控件元素的属性所对应的测试代码,形成第一测试代码集合;获取与所述第一路径中未生成相应测试代码的节点包含的控件元素的属性相应的测试代码模板,形成第二测试代码模板集合;根据所述第一测试代码集合、所述第二测试代码模板集合和预设测试数据集生成与所述第一路径相应的测试脚本。5.根据权利要求1所述的自动化测试方法,其特征在于,还包括:获取用户对软件的操作记录;分析所述操作记录,得到操作记录中涉及的页面节点的层级关系;根据所述操作记录中涉及的页面节点的层级关系更新所述树状图。6.一种自动化测试系统,其特征在于,包括:第一生成模块,用于根据软件中各页面节点的层级关系生成相应的树状图;遍历模块,用于遍...

【专利技术属性】
技术研发人员:刘德建杨郑旋吴巧敏林燕燕黄坚王柟陈钦肖秀敏曾捷
申请(专利权)人:福建天晴数码有限公司
类型:发明
国别省市:福建,35

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

1