基于BDD的移动APP自动测试平台和测试方法技术

技术编号:13638440 阅读:81 留言:0更新日期:2016-09-03 03:37
本发明专利技术属于数据处理技术领域,提供了基于BDD的移动APP自动测试平台和测试方法,包括:案例模块、案例集模块、项目管理模块、页面维护模块、参数维护模块、终端设备维护模块、测试报告模块、配置模块和用户管理模块;本发明专利技术的自动化测试平台是基于行为驱动开发BDD理念实现的,能够测试安卓和IOS系统,在BDD模式下构建测试用例应该先于开发代码,测试用例使用自然语言描述,以便于没有IT专业背景的业务专家也能够理解测试用例逻辑;并且自动化测试平台的系统管理员可以预定义用自然语言描述的命令,而测试项目师和业务专家只需简单地选择预定义命令,就可以完成测试用例的开发,减轻了测试项目师和业务专家的工作量,合理、轻松的实现了测试。

【技术实现步骤摘要】

本专利技术属于数据处理
,特别涉及一种基于BDD的移动APP自动测试平台和测试方法
技术介绍
软件的自动化测试是把人为驱动的测试行为转化为机器执行的一种过程。测试人员按照测试用例编写自动化测试脚本,再由机器执行验证。自动化脚本可以在工程师疲累或者离开的时候自动运行,并且记录测试结果;自动化测试还可以不断地重复某个动作而不会感到疲倦。现在人们的生活已经与智能手机紧密相连,而为移动APP编写自动化测试脚本是一件非常复杂的事情,并且很难保证正确性;进一步地,由于手机分为Android和IOS两种安装系统,不同的安装系统适用于不同的自动化测试脚本,因此如何开发出一款既能够适用于Android,又能够适用于IOS系统的自动化测试平台成为了本数据处理
要解决的首要难题。现有技术中也存在一些学习成本较低的自动化测试工具,本身会带有录制功能,即:录制所有在终端上的操作动作后自动生成一系列可运行的脚本代码,但测试的核心工作是验证脚本代码运行后所最终产生的结果是否符合预期,而现有技术中的自动化测试工具不具备分析是否符合预期的功能,仍需IT专业人员使用相应工具及计算机语言编写。因此,数据处理
急需基于BDD的移动APP自动测试平台和测试方法,自动化测试平台是基于行为驱动开发BDD理念实现的,在BDD模式下构建测试用例应该先于开发代码,测试用例使用自然语言描述,以便于没有IT专业背景的业务专家也能够理解测试用例逻辑;并且自动化测试平台的系统管理员可以预定义用自然语言描述的命令,而测试项目师和业务专家只需简单地选择预定义命令,就可以完成测试用例的开发,减轻了测试项目师和业务专家的工作量,用最合理的方式轻松实现测试驱动开发;能够实现操作动作及验证结果的全部编写,非IT专业人员经过简单培训即可使用,适用性更强。
技术实现思路
本专利技术提供了基于BDD的移动APP自动测试平台和测试方法,技术方案如下:基于BDD的移动APP自动测试平台,包括:案例模块、案例集模块、项目管理模块、页面维护模块、参数维护模块、终端设备维护模块、测试报告模块、配置模块和用户管理模块,用户管理模块分别与终端设备维护模块、项目管理模块相连接,终端设备维护模块分别与页面维护模块、参数维护模块相连接,项目管理模块分别与页面维护模块、参数维护模块、案例模块、案例集模块相连接,页面维护模块与配置模块相连接,案例模块与测试报告模块相连接;优选的,在上述基于BDD的移动APP自动测试平台中,案例模块用于通过具有规则性的自然语言,进行具体的案例编写、修改维护和无用案例的删除工作;案例集模块,用于将案例模块内的多个单独案例整合为一个案例集,进而实现一次测试多个案例;能够在运行多个案例集的同时记录具体案例集的执行情况,在每个案例出现异常、错误时自动截屏保存,并记录每个案例集的具体报错信息;项目管理模块,用于配置待测APP的项目名称、项目应用平台类型Android或IOS,以及待测APP的具体路径、版本、备注,并对待测APP的具体项目进行维护;页面维护模块,用于根据待测APP中的不同界面创建不同的页面,并在界面上具体配置、维护该页面下的具体元素;参数维护模块,用于配置参数名称、参数值、所属项目以及所属设备信息;终端设备维护模块,用于配置设备名称、设备硬件名称、平台名称、版本、服务端地址URL、分辨率、设备的唯一ID或UID,以及备注信息;测试报告模块,用于查看具体的截屏报告、报错语句、成本核算、同步绩效管理系统QC,以及导出EXCEL文档和发送邮件;配置模块,用于提供页面、案例、参数的快捷复制以及邮件的收发配置;用户管理模块,用于提供各个人员的角色权限管理和项目名称管理。基于BDD的移动APP自动测试方法,包括如下步骤:步骤一,在电脑PC 端安装待测应用程序,手机通过 USB 数据线连接于PC 端上,在 USB 调试模式下识别出手机连接;步骤二,在项目管理模块下配置待测APP的项目名称、项目应用平台类型Android或IOS,以及待测APP的具体路径、版本和备注;步骤三,在终端设备维护模块下配置设备名称、设备硬件名称、平台名称、版本号、服务端地址URL、分辨率、设备的唯一ID或UID,以及备注信息;步骤四,在页面维护模块下新增页面,并配置相关页面元素;步骤五,在案例模块下新增案例,并在项目名称选项下使其与相关项目关联,在步骤列表内依据规范编写对应的测试语句;步骤六,在案例模块下运行该待测案例或在案例集模块中运行该待测案例集;步骤七,在测试报告模块中查看具体测试结果和案例具体错误信息。本专利技术的有益效果:1、本专利技术兼容了安卓和IOS双系统的测试,以及支持QC组同步,内置了邮件发送服务和BUG截图功能,其中安卓系统调用了SDK的API,IOS系统调用了XCODE的API以实现真正意义上的双测试。在IOS系统调用XODE的API时由于IOS的核心及IOS下被测APP应用的IPA包是闭源的,导致无法正常调用,针对此问题,本专利技术的解决方式为:取得开发者账号、开发者证书及开发者包后通过XCODE编译并同步安装至IOS终端设备中。2、本专利技术通过APPIUM框架实现了Android/IOS不同平台下,同一应用案例可跨平台执行业务的测试;根据APPIUM框架下的getElementText方法来获取元素文本,通过sendKey方法来进行文本输入,通过swap方法来文本滑动操作,通过click方法进行点击操作,来实现点击、输入、滑动、输入文本等操作。附图说明下面结合附图和具体实施方式来详细说明本专利技术:图1是本专利技术基于BDD的移动APP自动测试平台的框架图。图2是本专利技术一条模拟自动化用例的流程图。具体实施方式为了使本专利技术技术实现的措施、创作特征、达成目的与功效易于明白了解,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1:图1是本专利技术基于BDD的移动APP自动测试平台的框架图。如图1所示,基于BDD的移动APP自动测试平台,包括:基于BDD的移动APP自动测试平台,包括:案例模块、案例集模块、项目管理模块、页面维护模块、参数维护模块、终端设备维护模块、测试报告模块、配置模块和用户管理模块,用户管理模块分别与终端设备维护模块、项目管理模块相连接,终端设备维护模块分别与页面维护模块、参数维护模块相连接,项目管理模块分别与页面维护模块、参数维护模块、案例模块、案例集模块相连接,页面维护模块与配置模块相连接,案例模块与测试报告模块相连接;案例模块下自动化案例的运行需要调用项目管理模块、页面维护模块、参数维护模块下的数据;项目模块下新增项目时需要调用终端设备维护模块下的终端设备信息;案例集模块下的案例集运行需要调用案例模块下的自动化案例;测试报告模块下的测试报告信息读取自数据库表,而其写入实际是通过运行案例或案例集生成的测试报告信息;用户管理模块决定登录用户取得的权限,如:用户类型为测试人员的用户登录本专利技术平台是无法使用项目管理、配置、用户管理等等模块的。案例模块,用于本文档来自技高网
...

【技术保护点】
基于BDD的移动APP自动测试平台,其特征在于,包括:案例模块、案例集模块、项目管理模块、页面维护模块、参数维护模块、终端设备维护模块、测试报告模块、配置模块和用户管理模块;所述用户管理模块分别与终端设备维护模块、项目管理模块相连接;所述终端设备维护模块分别与页面维护模块、参数维护模块相连接;所述项目管理模块分别与页面维护模块、参数维护模块、案例模块、案例集模块相连接;所述页面维护模块与配置模块相连接;所述案例模块与测试报告模块相连接。

【技术特征摘要】
1.基于BDD的移动APP自动测试平台,其特征在于,包括:案例模块、案例集模块、项目管理模块、页面维护模块、参数维护模块、终端设备维护模块、测试报告模块、配置模块和用户管理模块;所述用户管理模块分别与终端设备维护模块、项目管理模块相连接;所述终端设备维护模块分别与页面维护模块、参数维护模块相连接;所述项目管理模块分别与页面维护模块、参数维护模块、案例模块、案例集模块相连接;所述页面维护模块与配置模块相连接;所述案例模块与测试报告模块相连接。2.根据权利要求1所述的基于BDD的移动APP自动测试平台,其特征在于,所述案例模块,用于通过具有规则性的自然语言,进行具体的案例编写、修改维护和无用案例的删除工作;所述案例集模块,用于将所述案例模块内的多个单独案例整合为一个案例集,进而实现一次测试多个案例;能够在运行多个案例集的同时记录具体案例集的执行情况,在每个案例出现异常、错误时自动截屏保存,并记录每个案例集的具体报错信息;所述项目管理模块,用于配置待测APP的项目名称、项目应用平台类型Android或IOS,以及待测APP的具体路径、版本、备注,并对待测APP的具体项目进行维护;所述页面维护模块,用于根据待测APP中的不同界面创建不同的页面,并在界面上具体配置、维护该页面下的具体元素;所述参数维护模块,用于配置参数名称、参数值、所属项...

【专利技术属性】
技术研发人员:高华忠黄家晏杨明明桂燕萍张羽
申请(专利权)人:上海海万信息科技有限公司
类型:发明
国别省市:上海;31

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

1