CN112115051A - 应用的页面遍历探测方法、装置、设备及可读存储介质 - Google Patents

应用的页面遍历探测方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN112115051A
CN112115051A CN202010938687.9A CN202010938687A CN112115051A CN 112115051 A CN112115051 A CN 112115051A CN 202010938687 A CN202010938687 A CN 202010938687A CN 112115051 A CN112115051 A CN 112115051A
Authority
CN
China
Prior art keywords
page
application
clicked
acquiring
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010938687.9A
Other languages
English (en)
Inventor
李钻达
何正锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujia Newland Software Engineering Co ltd
Original Assignee
Fujia Newland Software Engineering Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujia Newland Software Engineering Co ltd filed Critical Fujia Newland Software Engineering Co ltd
Priority to CN202010938687.9A priority Critical patent/CN112115051A/zh
Publication of CN112115051A publication Critical patent/CN112115051A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种应用的页面遍历探测方法、装置、设备及可读存储介质,获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;判断页面中是否有需要被点击的元素;如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结果;退回至应用的第一级页面,判断是否还有需要被点击的元素;如否,则保存页面内容及探测结果,并上传信息。本发明技术方案通过自动化流程减少人工干预,仅需配置少量必要脚本就可以自动进行页面监控、探测。并且能对数据进行自动化整理、采集、上传,方便用户了解指定产品、提早发现问题。

Description

应用的页面遍历探测方法、装置、设备及可读存储介质
技术领域
本发明涉及计算机互联网技术,特别涉及一种应用的页面遍历探测方法、装置、设备及可读存储介质。
背景技术
随着移动互联网时代的到来,用户越来越离不开手机,各种手机应用应运而生,包括了:Native App(原生应用)、Web App(网页应用)及Hybrid App(混合应用)。现如今手机应用自动化测试技术主要有以下几种:1、Monkey 2、Monkeyrunner 3、Uiautomator 4、Robotium 5、Appium。五种自动化测试技术各有利弊。每个技术的侧重点不同,所带来的效果也是不一样的。其中一部分手机应用自动化测试技术仅支持安卓系统;一部分手机应用自动化测试技术仅支持原生应用的探测,无法进行混合型应用的自动化测试。
目前市面上的自动化测试技术中,Monkey更多用于客户端性能,但发送的随机事件是基本没法控制的;Monkeyrunner录制的脚本是以坐标轴来作为定位方式,安卓设备类型多,移植性不好;Uiautomator仅支持安卓4.1和以上的版本,且webview兼容性不强;Robotium只支持Java开发且不支持跨进程;Appium需要设备通过usb与探测程序部署PC连接,无法进行大批量测试。并无一种适应性强、可大批量、自动化测试的手机应用测试方法。
发明内容
本发明要解决的技术问题是如何提供一种适应性强、可大批量、自动化测试的应用的页面遍历探测方法、装置、设备及可读存储介质。
为了解决上述技术问题,本发明的技术方案为:
一方面,本发明提出了一种应用的页面遍历探测方法,包括步骤:
S10:获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
S20:判断页面中是否有需要被点击的元素;
S30:如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结果;
S40:退回至应用的第一级页面,判断是否还有需要被点击的元素;
S50:如否,则保存页面内容及探测结果,并上传信息。
优选地,步骤S40中,在判断是否还有需要被点击的元素前,通过元素所在坐标来判断是否有需要被点击的元素在屏幕外;如有,则滑动页面,将需要被点击的元素移动至屏幕内。
优选地,步骤S10的过程为:启动应用,并打开应用至指定页面;对被测试的应用进行页面遍历探测,获取指定页面的所有元素信息,并保存到xml文件中。
优选地,步骤S20中,判断元素是否需要被点击具体包括:解析xml文件,按照先后顺序获取页面所有的元素信息,并根据获取到的元素信息来判断该元素是否能被点击;判断元素是否为需要点击的类型;判断是否有父元素已经点击过。
优选地,步骤S30的过程为:获取元素的text属性、坐标信息或xpath进行定位点击,点击某元素,当跳转的页面加载完毕后,获取新页面的内容并进行截图、保存,根据获取的新页面内容来判断网页是否正常,并保存判断结果。
优选地:步骤S40中,退回至应用的第一级页面的步骤包括,通过指令模拟返回按键,同时获取返回后页面信息,与预存的首页信息进行比对,判断是否返回首页成功;如尝试预设次数后仍未返回指定网页,则通过点击页面上的回退进行页面回退。
优选地:步骤S50,上传信息的步骤包括:将该任务所有结果信息上传至服务端,通过后台数据库进行存储,并将数据库的数据可视化的展示在平台详情页中。
另一方面,本发明还提出了一种应用的页面遍历探测装置,包括:
配置模块:获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
判断模块:判断页面中是否有需要被点击的元素;
测试模块:如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结;
遍历模块:退回至应用的第一级页面,判断是否还有需要被点击的元素;
上传模块:如否,则保存页面内容及探测结果,并上传信息。
又一方面,本发明提出了一种应用的页面遍历探测设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的应用的页面遍历探测方法的步骤。
再一方面,本发明提出了一种应用的页面遍历探测的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述的应用的页面遍历探测方法的步骤。
采用上述技术方案,本技术方案可减少应用测试的人力成本、时间成本,可以全天候对手机应用页面进行全方位的监控、探测。普通的自动化探测需要配置全量的详细脚本信息,工作量大,此外,普通的自动化探测的脚本配置过程有可能出现人工失误等情况;本发明通过自动化流程减少人工干预,仅需配置少量必要脚本就可以自动进行页面监控、探测。并且能对数据进行自动化整理、采集、上传,方便用户了解指定产品、提早发现问题。
附图说明
图1为本发明应用的页面遍历探测方法一实施例的流程图;
图2为本发明应用的页面遍历探测装置一实施例的原理图。
图中,10-配置模块,20-判断模块,30-测试模块,40-遍历模块,50-上传模块。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。
参照图1,本发明提出了一种应用的页面遍历探测方法,包括步骤:
S10:启动应用,并打开应用至指定页面;对被测试的应用进行页面遍历探测,获取指定页面的所有元素信息,并保存到xml文件中。
S20:判断页面中是否有需要被点击的元素;解析xml文件,按照先后顺序获取页面所有的元素信息,并根据获取到的元素信息来判断该元素是否能被点击(元素clickable属性);判断元素是否为需要点击的类型(元素class属性);判断是否有父元素已经点击过(避免父元素点击后子元素重复点击情况)。
S30:如有,则获取元素的text属性、坐标信息或xpath进行定位点击,点击某元素,当跳转的页面加载完毕后,获取新页面的内容并进行截图、保存,根据获取的新页面内容来判断网页是否正常,并保存判断结果。
S40:通过指令模拟返回按键,同时获取返回后页面信息,与预存的首页信息进行比对,判断是否返回首页成功;如尝试预设次数后仍未返回指定网页,则通过点击页面上的回退进行页面回退。判断是否还有需要被点击的元素;在判断是否还有需要被点击的元素前,通过元素所在坐标来判断是否有需要被点击的元素在屏幕外;如有,则滑动页面,将需要被点击的元素移动至屏幕内。如还有需要被点击的元素,则重复步骤重复步骤S20及S30,将需要被点击的元素进行点击。
S50:如没有需要被点击的元素,则保存页面内容及探测结果至本地,管理任务结果、各子步骤结果及页面截图地址。将该任务所有结果信息上传至服务端,通过后台数据库进行存储,存储完成之后,将数据库数据可视化的展示在平台详情页当中,详情页通过表格的方式展示出每一个详细步骤的结果,用最直观的的方式向用户展示探测数据。可方便用户进行分析,例如页面加载异常、页面显示异常、断坏链等,大大减少了人工配置详细脚本的人力成本。
本发明实施例中,探测软件集成工具包采用的是Uiautomator封装改造的Jar包,其仅为本实施例中采用的一种方案,并不构成对本发明的限定。
采用上述技术方案,本技术方案可减少应用测试的人力成本、时间成本,可以全天候对手机应用页面进行全方位的监控、探测。普通的自动化探测需要配置全量的详细脚本信息,工作量大,此外,普通的自动化探测的脚本配置过程有可能出现人工失误等情况;本发明通过自动化流程减少人工干预,仅需配置少量必要脚本就可以自动进行页面监控、探测。并且能对数据进行自动化整理、采集、上传,方便用户了解指定产品、提早发现问题。
参照图2,本发明还提出了一种应用的页面遍历探测装置,包括:
配置模块10:获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
判断模块20:判断页面中是否有需要被点击的元素;
测试模块30:如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结;
遍历模块40:退回至应用的第一级页面,判断是否还有需要被点击的元素;
上传模块50:如否,则保存页面内容及探测结果,并上传信息。
又一方面,本发明提出了一种应用的页面遍历探测设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如上的应用的页面遍历探测方法的步骤。该应用的页面遍历探测方法包括步骤:
获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
判断页面中是否有需要被点击的元素;
如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结果;
退回至应用的第一级页面,判断是否还有需要被点击的元素;
如否,则保存页面内容及探测结果,并上传信息。
再一方面,本发明提出了一种应用的页面遍历探测的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上的应用的页面遍历探测方法的步骤。
该应用的页面遍历探测方法包括步骤:
获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
判断页面中是否有需要被点击的元素;
如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结果;
退回至应用的第一级页面,判断是否还有需要被点击的元素;
如否,则保存页面内容及探测结果,并上传信息。
本发明能支持原生应用页面、混合型应用页面及网页应用页面自动化测试,并将脚本模式的探测方式进行进一步改进,使其仅需配置从启动应用到指定页面部分的脚本,便可以在到达指定页面后自动进行页面元素遍历探测。
本发明通过安装到手机、通过网络进行通讯的方式,解决了大批量部署探测问题,方便手机管理;本发明通过获取原生WebView页面内容的方式,提高本发明与混合型应用的兼容性;本发明可自启动应用、自动执行任务,可将页面中的元素按照先后顺序,自动进行点击操作,自动判断页面加载异常情形。
以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。

Claims (10)

1.一种应用的页面遍历探测方法,其特征在于,包括步骤:
S10:获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
S20:判断页面中是否有需要被点击的元素;
S30:如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结果;
S40:退回至应用的第一级页面,判断是否还有需要被点击的元素;
S50:如否,则保存页面内容及探测结果,并上传信息。
2.根据权利要求1所述的应用的页面遍历探测方法,其特征在于:步骤S40中,在判断是否还有需要被点击的元素前,通过元素所在坐标来判断是否有需要被点击的元素在屏幕外;如有,则滑动页面,将需要被点击的元素移动至屏幕内。
3.根据权利要求1所述的应用的页面遍历探测方法,其特征在于,步骤S10的过程为:启动应用,并打开应用至指定页面;对被测试的应用进行页面遍历探测,获取指定页面的所有元素信息,并保存到xml文件中。
4.根据权利要求3所述的应用的页面遍历探测方法,其特征在于,步骤S20中,判断元素是否需要被点击具体包括:解析xml文件,按照先后顺序获取页面所有的元素信息,并根据获取到的元素信息来判断该元素是否能被点击;判断元素是否为需要点击的类型;判断是否有父元素已经点击过。
5.根据权利要求1所述的应用的页面遍历探测方法,其特征在于,步骤S30的过程为:获取元素的text属性、坐标信息或xpath进行定位点击,点击某元素,当跳转的页面加载完毕后,获取新页面的内容并进行截图、保存,根据获取的新页面内容来判断网页是否正常,并保存判断结果。
6.根据权利要求1所述的应用的页面遍历探测方法,其特征在于:步骤S40中,退回至应用的第一级页面的步骤包括,通过指令模拟返回按键,同时获取返回后页面信息,与预存的首页信息进行比对,判断是否返回首页成功;如尝试预设次数后仍未返回指定网页,则通过点击页面上的回退进行页面回退。
7.根据权利要求1所述的应用的页面遍历探测方法,其特征在于:步骤S50,上传信息的步骤包括:将该任务所有结果信息上传至服务端,通过后台数据库进行存储,并将数据库的数据可视化的展示在平台详情页中。
8.一种应用的页面遍历探测装置,其特征在于,包括:
配置模块:获取并执行任务脚本,对应用进行页面遍历探测,获取并解析页面内容;
判断模块:判断页面中是否有需要被点击的元素;
测试模块:如有,则点击元素,获取新页面的内容,判断新页面是否正常,并保存判断结;
遍历模块:退回至应用的第一级页面,判断是否还有需要被点击的元素;
上传模块:如否,则保存页面内容及探测结果,并上传信息。
9.一种应用的页面遍历探测设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现权利要求1至7任一项所述的应用的页面遍历探测方法的步骤。
10.一种应用的页面遍历探测的可读存储介质,其上存储有计算机程序,其特征在于:该计算机程序被处理器执行时实现权利要求1至7任一项所述的应用的页面遍历探测方法的步骤。
CN202010938687.9A 2020-09-09 2020-09-09 应用的页面遍历探测方法、装置、设备及可读存储介质 Pending CN112115051A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010938687.9A CN112115051A (zh) 2020-09-09 2020-09-09 应用的页面遍历探测方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010938687.9A CN112115051A (zh) 2020-09-09 2020-09-09 应用的页面遍历探测方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN112115051A true CN112115051A (zh) 2020-12-22

Family

ID=73802358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010938687.9A Pending CN112115051A (zh) 2020-09-09 2020-09-09 应用的页面遍历探测方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN112115051A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112784194A (zh) * 2021-01-28 2021-05-11 济南大学 一种Android应用页面自动化遍历方法及系统
CN113094281A (zh) * 2021-04-28 2021-07-09 杭州网易云音乐科技有限公司 一种混合式App的测试方法及装置
CN113742211A (zh) * 2021-01-21 2021-12-03 北京沃东天骏信息技术有限公司 一种测试方法、Appium客户端及计算机存储介质
CN113779352A (zh) * 2021-07-27 2021-12-10 浙江大学 面向无障碍检测的移动端应用页面自动遍历方法
CN113986769A (zh) * 2021-12-24 2022-01-28 深圳市明源云链互联网科技有限公司 应用测试方法、系统、设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710506A (zh) * 2017-10-25 2019-05-03 卓望数码技术(深圳)有限公司 一种基于树遍历的终端app覆盖性测试方法和装置
CN110781091A (zh) * 2019-10-31 2020-02-11 北京奇艺世纪科技有限公司 应用程序的测试方法、装置、电子设备及存储介质
CN110865851A (zh) * 2019-11-18 2020-03-06 中国民航信息网络股份有限公司 一种Android应用数据自动采集方法及系统
US20200089597A1 (en) * 2018-09-19 2020-03-19 Servicenow, Inc. Automated webpage testing
CN111428166A (zh) * 2020-02-28 2020-07-17 深圳壹账通智能科技有限公司 页面配置方法、页面元素替换方法、装置、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710506A (zh) * 2017-10-25 2019-05-03 卓望数码技术(深圳)有限公司 一种基于树遍历的终端app覆盖性测试方法和装置
US20200089597A1 (en) * 2018-09-19 2020-03-19 Servicenow, Inc. Automated webpage testing
CN110781091A (zh) * 2019-10-31 2020-02-11 北京奇艺世纪科技有限公司 应用程序的测试方法、装置、电子设备及存储介质
CN110865851A (zh) * 2019-11-18 2020-03-06 中国民航信息网络股份有限公司 一种Android应用数据自动采集方法及系统
CN111428166A (zh) * 2020-02-28 2020-07-17 深圳壹账通智能科技有限公司 页面配置方法、页面元素替换方法、装置、设备及介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113742211A (zh) * 2021-01-21 2021-12-03 北京沃东天骏信息技术有限公司 一种测试方法、Appium客户端及计算机存储介质
CN112784194A (zh) * 2021-01-28 2021-05-11 济南大学 一种Android应用页面自动化遍历方法及系统
CN112784194B (zh) * 2021-01-28 2022-06-21 济南大学 一种Android应用页面自动化遍历方法及系统
CN113094281A (zh) * 2021-04-28 2021-07-09 杭州网易云音乐科技有限公司 一种混合式App的测试方法及装置
CN113094281B (zh) * 2021-04-28 2024-05-03 杭州网易云音乐科技有限公司 一种混合式App的测试方法及装置
CN113779352A (zh) * 2021-07-27 2021-12-10 浙江大学 面向无障碍检测的移动端应用页面自动遍历方法
CN113779352B (zh) * 2021-07-27 2023-11-24 浙江大学 面向无障碍检测的移动端应用页面自动遍历方法
CN113986769A (zh) * 2021-12-24 2022-01-28 深圳市明源云链互联网科技有限公司 应用测试方法、系统、设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN112115051A (zh) 应用的页面遍历探测方法、装置、设备及可读存储介质
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
AU2017258963B2 (en) Simultaneous multi-platform testing
WO2018010552A1 (zh) 测试方法和装置
US10853232B2 (en) Adaptive system for mobile device testing
US9164870B2 (en) Integrated fuzzing
CN108763086B (zh) 基于远程真机的脚本录制方法、终端及计算机可读存储介质
CN108959068B (zh) 软件界面测试方法、设备及存储介质
CN105302722B (zh) Cts自动测试方法及装置
WO2019227708A1 (zh) 测试案例的在线调试装置、方法及计算机可读存储介质
CN110825619A (zh) 接口测试用例自动生成方法、装置及存储介质
CN104424089A (zh) 终端的测试方法及装置
CN111274154A (zh) 一种自动化测试的方法、装置、设备及存储介质
CN112269697B (zh) 一种设备存储性能测试方法、系统及相关装置
EP3333712A2 (en) Simultaneous multi-platform testing
CN108923997B (zh) 一种基于python的云服务节点自动测试方法及装置
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN112231206A (zh) 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台
CN112911283B (zh) 智能电视测试方法及装置
US11106571B2 (en) Identification of input object in a graphical user interface
JP4795404B2 (ja) 動作検証装置および動作検証プログラム
CN111666200A (zh) 一种pc软件冷启动耗时的测试方法及终端
CN115576756A (zh) 一种服务器测试的方法、装置、电子设备及介质
CN113094281B (zh) 一种混合式App的测试方法及装置
CN113377468A (zh) 一种脚本执行方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20201222

RJ01 Rejection of invention patent application after publication