一种页面元素采集方法和装置制造方法及图纸

技术编号:24352568 阅读:30 留言:0更新日期:2020-06-03 01:53
本发明专利技术公开了一种页面元素采集方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:接收对页面的采集需求,在所述页面的源代码中获取与所述采集需求对应的代码;从代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代;基于所述代码、所述后代和所述第一后代,生成采集模板,利用所述采集模板对所述页面进行元素采集,得到页面元素。该实施方式基于采集需求进行代码提取以生成采集模板,以此批量采集页面元素,不同于手工逐个录制采集的方式,加快了页面元素的采集速度,提升采集效率。

A collection method and device of page elements

【技术实现步骤摘要】
一种页面元素采集方法和装置
本专利技术涉及计算机
,尤其涉及一种页面元素采集方法和装置。
技术介绍
软件开发领域中的UI(UserInterface,用户界面)测试工作重复性大,例如新功能以及变更功能的多轮次测试、未变动功能的回归测试等。若将人力从重复劳动中解脱出来,不仅能够有效节约人力资源、降低成本,还能避免不同人员实施所带来的质量不稳定问题。目前市面上主流的UI自动化测试产品、工具或框架,主要都是通过录制脚本或手工点选页面来逐个采集页面元素以及生成步骤脚本,例如QTP(QuickTestProfessional,自动化测试工具)或SeleniumIDE(开源Web自动化测试工具)。在实现本专利技术的过程中,专利技术人发现现有技术至少存在如下问题:1)需直接根据目标元素(即锁定的页面元素)的属性或目标元素的外层元素(即父元素、祖父元素等)定义锁定条件,无法通过定义锚点元素(即目标元素的上一级元素,用以锁定目标元素)使用更稳定的锁定条件;2)只能逐个产生对页面元素定义(即定位页面元素的路径和条件),不支持批量生成;3)基于手动采集页面元素方式,当页面元素较多时逐个采集较为耗时。
技术实现思路
有鉴于此,本专利技术实施例提供一种页面元素采集方法和装置,至少能够解决现有技术中页面元素特征定义层次过于单一,以及元素录制采集效率低的问题。为实现上述目的,根据本专利技术实施例的一个方面,提供了一种页面元素采集方法,包括:接收对页面的采集需求,在所述页面的源代码中获取与所述采集需求对应的代码;从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代;基于所述代码、所述后代和所述第一后代,生成采集模板,利用所述采集模板对所述页面进行元素采集,得到页面元素。可选的,从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代,包括:从所述代码所处位置开始,获取与所述代码存在父子关系、且结构与所述语法结构相似的后代;从所述后代所处位置开始,获取与所述后代存在父子关系、且结构与所述语法结构相似的第一后代。可选的,所述从所述后代所处位置开始,获取与所述后代存在父子关系、且结构与所述语法结构相似的第一后代,包括:从所述后代所处位置开始,确定与所述后代处于兄弟关系、且与所述代码存在父子关系的后续兄弟;从所述后续兄弟所处位置开始,获取与所述后续兄弟存在父子关系、且结构与所述语法结构相似的第二后代。可选的,在所述得到页面元素之后,还包括;获取所述后代的左值和右值;其中,所述左值和所述右值表示位于赋值运算符两侧的两个值;将所述左值作为所述页面元素的页面元素定义的左值,将所述右值作为所述页面元素定义中左值的属性值;其中,所述页面元素定义表示定位页面元素的路径和条件。可选的,在所述得到页面元素之后,还包括:分析所述页面元素的特征,基于所述特征构建第一采集模板,以利用所述第一采集模板对所述页面进行页面元素采集,得到所述页面中的所有页面元素。可选的,在所述得到页面元素之后,还包括:响应于对至少一个页面元素的选择操作,以在所述页面中,基于预定颜色对所述至少一个页面元素进行高亮显示。可选的,在所述得到页面元素之后,还包括:确定对象库中与所述页面对应的树节点,将所述页面元素添加至所述树节点的子节点中,以构建所述页面和所述页面元素组成的树形结构。可选的,在构建所述页面和所述页面元素组成的树形结构之后,还包括:接收对单个页面元素的编程语言定义或可扩展标记语言定义;基于与所述编程语言对应的第一颜色或与所述可扩展标记语言对应的第二颜色,对所述树形结构中与所述单个页面元素对应的子节点进行着色。可选的,在构建所述页面和所述页面元素组成的树形结构之后,还包括:响应于对所述对象库中页面元素的选择操作,确定所提取的页面元素的类型,获取对所述类型的操作步骤;其中,操作步骤为一个页面操作行为;按照对页面元素的选择顺序对所述操作步骤进行排序组合,以生成操作动作;接收对所述操作动作中各个操作步骤的测试数据输入,执行测试得到测试结果。可选的,在生成操作动作之后,还包括:响应于对所述操作动作中至少一个操作步骤的变更操作,基于所述变更操作中的变更信息,对所述操作动作进行更新。为实现上述目的,根据本专利技术实施例的另一方面,提供了一种页面元素采集装置,包括:需求接收模块,用于接收对页面的采集需求,在所述页面的源代码中获取与所述采集需求对应的代码;代码获取模块,用于从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代;元素采集模块,用于基于所述代码、所述后代和所述第一后代,生成采集模板,利用所述采集模板对所述页面进行元素采集,得到页面元素。可选的,所述代码获取模块,用于:从所述代码所处位置开始,获取与所述代码存在父子关系、且结构与所述语法结构相似的后代;从所述后代所处位置开始,获取与所述后代存在父子关系、且结构与所述语法结构相似的第一后代。可选的,所述代码获取模块,用于:从所述后代所处位置开始,确定与所述后代处于兄弟关系、且与所述代码存在父子关系的后续兄弟;从所述后续兄弟所处位置开始,获取与所述后续兄弟存在父子关系、且结构与所述语法结构相似的第二后代。可选的,还包括元素定义模块,用于;获取所述后代的左值和右值;其中,所述左值和所述右值表示位于赋值运算符两侧的两个值;将所述左值作为所述页面元素的页面元素定义的左值,将所述右值作为所述页面元素定义中左值的属性值;其中,所述页面元素定义表示定位页面元素的路径和条件。可选的,还包括第一元素采集模块,用于:分析所述页面元素的特征,基于所述特征构建第一采集模板,以利用所述第一采集模板对所述页面进行页面元素采集,得到所述页面中的所有页面元素。可选的,还包括元素高亮模块,用于:响应于对至少一个页面元素的选择操作,以在所述页面中,基于预定颜色对所述至少一个页面元素进行高亮显示。可选的,还包括对象库模块,用于:确定对象库中与所述页面对应的树节点,将所述页面元素添加至所述树节点的子节点中,以构建所述页面和所述页面元素组成的树形结构。可选的,还包括元素着色模块,用于:接收对单个页面元素的编程语言定义或可扩展标记语言定义;基于与所述编程语言对应的第一颜色或与所述可扩展标记语言对应的第二颜色,对所述树形结构中与所述单个页面元素对应的子节点进行着色。可选的,还包括测试模块,用于:响应于对所述对象库中页面元素的选择操作,确定所提取的页面元素的类型,获取对所述类型的操作步骤;其中,操作步骤为一个页面操作行为;按照对页面元素的选择顺序对所述操作步骤进行排序组合,以生成操作动作;接收对所述操作动作中各个操作步骤的测试数据输入,执行测试本文档来自技高网...

【技术保护点】
1.一种页面元素采集方法,其特征在于,包括:/n接收对页面的采集需求,在所述页面的源代码中获取与所述采集需求对应的代码;/n从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代;/n基于所述代码、所述后代和所述第一后代,生成采集模板,利用所述采集模板对所述页面进行元素采集,得到页面元素。/n

【技术特征摘要】
1.一种页面元素采集方法,其特征在于,包括:
接收对页面的采集需求,在所述页面的源代码中获取与所述采集需求对应的代码;
从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代;
基于所述代码、所述后代和所述第一后代,生成采集模板,利用所述采集模板对所述页面进行元素采集,得到页面元素。


2.根据权利要求1所述的方法,其特征在于,从所述代码所处位置开始,获取与所述代码的语法结构相似的后代和所述后代的第一后代,包括:
从所述代码所处位置开始,获取与所述代码存在父子关系、且结构与所述语法结构相似的后代;
从所述后代所处位置开始,获取与所述后代存在父子关系、且结构与所述语法结构相似的第一后代。


3.根据权利要求2所述的方法,其特征在于,所述从所述后代所处位置开始,获取与所述后代存在父子关系、且结构与所述语法结构相似的第一后代,包括:
从所述后代所处位置开始,确定与所述后代处于兄弟关系、且与所述代码存在父子关系的后续兄弟;
从所述后续兄弟所处位置开始,获取与所述后续兄弟存在父子关系、且结构与所述语法结构相似的第二后代。


4.根据权利要求2或3所述的方法,其特征在于,在所述得到页面元素之后,还包括;
获取所述后代的左值和右值;其中,所述左值和所述右值表示位于赋值运算符两侧的两个值;
将所述左值作为所述页面元素的页面元素定义的左值,将所述右值作为所述页面元素定义中左值的属性值;其中,所述页面元素定义表示定位页面元素的路径和条件。


5.根据权利要求1所述的方法,其特征在于,在所述得到页面元素之后,还包括:
分析所述页面元素的特征,基于所述特征构建第一采集模板,以利用所述第一采集模板对所述页面进行页面元素采集,得到所述页面中的所有页面元素。


6.根据权利要求1所述的方法,其特征在于,在所述得到页面元素之后,还包括:
响应于对至少一个页面元素的选择操作,以在所述页面中,基于预定颜色对所述至少一个页面元素进行高亮显示。


7.根据权利要求1所述的方法,其特征在于,在所述...

【专利技术属性】
技术研发人员:高媛媛刘水泉刘庆文孙启舜
申请(专利权)人:中国建设银行股份有限公司建信金融科技有限责任公司
类型:发明
国别省市:北京;11

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

1