用于仓单页面的分布式测试方法及装置制造方法及图纸

技术编号:22237997 阅读:18 留言:0更新日期:2019-10-09 17:55
本发明专利技术实施例提供一种用于仓单页面的分布式测试方法及装置,本发明专利技术利用UI Recorder在本地进行仓单页面的自动化测试脚本录制,从而不但可以解决仓单页面元素抓取困难的问题,还可以切割整个仓单流程,使其更专注于某个功能点的自动化验证。进一步地,本发明专利技术实施例在服务器安装docker并基于docker构建selenium grid工具以部署分布式测试环境,从而使得仓单页面测试过程可以采用分布式部署测试环境的方式进行,从而使得处理速度较快,效率较高,不占用本机资源,且基于现有的仓单交易程序,不需要交易重构,改造简单,只需部署维护一条命令即可。

Distributed testing method and device for warehouse receipt page

【技术实现步骤摘要】
用于仓单页面的分布式测试方法及装置
本专利技术涉及计算机
,尤其涉及一种用于仓单页面的分布式测试方法及装置。
技术介绍
UIRecorder是一款零成本UI自动化录制工具,支持主流浏览器如(chrome、IE、Firefox、Safari)本机录制脚本结束后执行脚本需要启动selenium-standaloneserver,需要本地安装并selenium-standaloneserver运行,造成本机负载过大,无法实现多浏览器同步执行测试脚本。目前,对于仓储云平台使用第三方YIGO框件开发,已有selenium自动化框架需要抓取页面元素数据,页面元素在YIGO框件内被重写,这就导致无法通过以上方式获得。对于管库管理项目属于供应链产品,流程审批较长,造成单个testcase代码数量较大。例如,图2展示的只是登录的一个页面的元素,而仓单页面所要执行的并完成动作的元素多大几十个,会衍生出大量的元素定位代码。F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案。官方推荐与UIRercoder使用,其中用的组件为(Guacamole:开源的HTML5远程解决方案、WindowsServer最大化复用机器资源、hostsShare跨浏览器,跨服务器的hosts共享)。F2etest的优势是:a、10倍以上硬件利用率:传统WebDriver1台执行机仅能跑1个Job,一台机器可以高并发跑N个Job,这个N取决于机器配置,理论上硬件利用率相当于传统节点的10倍以上。b、支持独立hosts绑定:每次申请节点时,可以指定不同的hosts绑定,保证同一台机器上不同节点的Job不会相互干扰。c、所有节点支持远程在线调试:利用Guacamole的在线远程功能,当自动化出现问题时,能非常便利的对自动化进展进行即时监控和调试。然而,F2etest同样存在比较明显的劣势:一方面,它需要至少3台独立服务器,且安装配置步骤非常多,无运维基础的测试人员难以搭建成功。另一方面,它的日常维护繁琐,且不稳定。
技术实现思路
针对现有技术中的问题,本专利技术实施例提供一种用于仓单页面的分布式测试方法及装置。第一方面,本专利技术实施例提供了一种用于仓单页面的分布式测试方法,包括:利用UIRecorder在本地进行仓单页面的自动化测试脚本录制;在服务器安装docker,并基于docker构建seleniumgrid工具以部署分布式测试环境;将所述测试脚本发送给所述seleniumgrid工具,以使所述seleniumgrid工具中的hub节点和node节点执行所述测试脚本;在本地接收所述seleniumgrid工具发送的脚本执行结果。进一步地,所述利用UIRecorder在本地进行仓单页面的自动化测试脚本录制,具体包括:在本地安装UIRecorder;将整个待测试的仓单流程切割成多个仓单页面;在浏览器分别输入每个仓单页面的统一资源定位符URL,利用UIRecorder录制对应仓单页面的测试脚本。进一步地,所述在服务器安装docker,并基于docker构建seleniumgrid工具以部署分布式测试环境,具体包括:在服务器安装docker,并基于docker配置seleniumgrid工具的测试环境容器镜像;执行docker-composeup–d行命令完成部署,并启动所述seleniumgrid工具中的hub节点和node节点。进一步地,所述将所述测试脚本发送给所述seleniumgrid工具,以使所述seleniumgrid工具中的hub节点和node节点执行所述测试脚本,具体包括:将所述测试脚本发送给所述seleniumgrid工具的hub节点,以使所述hub节点将所述测试脚本转发给位于不同浏览器环境下的node节点执行所述测试脚本。第二方面,本专利技术实施例提供了一种用于仓单页面的分布式测试装置,包括:录制模块,用于利用UIRecorder在本地进行仓单页面的自动化测试脚本录制;部署模块,用于在服务器安装docker,并基于docker构建seleniumgrid工具以部署分布式测试环境;执行模块,用于将所述测试脚本发送给所述seleniumgrid工具,以使所述seleniumgrid工具中的hub节点和node节点执行所述测试脚本;接收模块,用于在本地接收所述seleniumgrid工具发送的脚本执行结果。进一步地,所述录制模块,具体用于:在本地安装UIRecorder;将整个待测试的仓单流程切割成多个仓单页面;在浏览器分别输入每个仓单页面的统一资源定位符URL,利用UIRecorder录制对应仓单页面的测试脚本。进一步地,所述部署模块,具体用于:在服务器安装docker,并基于docker配置seleniumgrid工具的测试环境容器镜像;执行docker-composeup–d行命令完成部署,并启动所述seleniumgrid工具中的hub节点和node节点。进一步地,所述执行模块,具体用于:将所述测试脚本发送给所述seleniumgrid工具的hub节点,以使所述hub节点将所述测试脚本转发给位于不同浏览器环境下的node节点执行所述测试脚本。第三方面,本专利技术实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述用于仓单页面的分布式测试方法的步骤。第四方面,本专利技术实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述用于仓单页面的分布式测试方法的步骤。由上面技术方案可知,本专利技术实施例提供的用于仓单页面的分布式测试方法及装置,利用UIRecorder在本地进行仓单页面的自动化测试脚本录制,从而不但可以解决仓单页面元素抓取困难的问题,还可以切割整个仓单流程,使其更专注于某个功能点的自动化验证。进一步地,本专利技术实施例在服务器安装docker并基于docker构建seleniumgrid工具以部署分布式测试环境,从而使得仓单页面测试过程可以采用分布式部署测试环境的方式进行,从而使得处理速度较快,效率较高,不占用本机资源,且基于现有的仓单交易程序,不需要交易重构,改造简单,只需部署维护一条命令即可。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例提供的用于仓单页面的分布式测试方法的流程图;图2为现有技术中登录页面的元素定位代码示意图;图3为本专利技术一实施例提供的SeleniumGrid框架示意图;图4为本专利技术一实施例提供的Docker容器的虚拟化技术架构示意图;图5为本专利技术一实施例提供的用于仓单页面的分布式测试方法的实现原理示意图;图6为本专利技术一实施例提供的通过执行docker-composeup–d行命令完成部署过程的示意图;图7为本专利技术一实施例提供的SeleniumGridConsole测试环境构建完成示意图;图8为本专利技术一实施例提供的配置confi本文档来自技高网
...

【技术保护点】
1.一种用于仓单页面的分布式测试方法,其特征在于,包括:利用UI Recorder在本地进行仓单页面的自动化测试脚本录制;在服务器安装docker,并基于docker构建selenium grid工具以部署分布式测试环境;将所述测试脚本发送给所述selenium grid工具,以使所述selenium grid工具中的hub节点和node节点执行所述测试脚本;在本地接收所述selenium grid工具发送的脚本执行结果。

【技术特征摘要】
1.一种用于仓单页面的分布式测试方法,其特征在于,包括:利用UIRecorder在本地进行仓单页面的自动化测试脚本录制;在服务器安装docker,并基于docker构建seleniumgrid工具以部署分布式测试环境;将所述测试脚本发送给所述seleniumgrid工具,以使所述seleniumgrid工具中的hub节点和node节点执行所述测试脚本;在本地接收所述seleniumgrid工具发送的脚本执行结果。2.根据权利要求1所述的用于仓单页面的分布式测试方法,其特征在于,所述利用UIRecorder在本地进行仓单页面的自动化测试脚本录制,具体包括:在本地安装UIRecorder;将整个待测试的仓单流程切割成多个仓单页面;在浏览器分别输入每个仓单页面的统一资源定位符URL,利用UIRecorder录制对应仓单页面的测试脚本。3.根据权利要求1所述的用于仓单页面的分布式测试方法,其特征在于,所述在服务器安装docker,并基于docker构建seleniumgrid工具以部署分布式测试环境,具体包括:在服务器安装docker,并基于docker配置seleniumgrid工具的测试环境容器镜像;执行docker-composeup–d行命令完成部署,并启动所述seleniumgrid工具中的hub节点和node节点。4.根据权利要求1所述的用于仓单页面的分布式测试方法,其特征在于,所述将所述测试脚本发送给所述seleniumgrid工具,以使所述seleniumgrid工具中的hub节点和node节点执行所述测试脚本,具体包括:将所述测试脚本发送给所述seleniumgrid工具的hub节点,以使所述hub节点将所述测试脚本转发给位于不同浏览器环境下的node节点执行所述测试脚本。5.一种用于仓单页面的分布式测试装置,其特征在于,包括:录制模块,用...

【专利技术属性】
技术研发人员:杜明岩王海英
申请(专利权)人:中信梧桐港供应链管理有限公司
类型:发明
国别省市:北京,11

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

1