CN105354138A - 一种确定手机页面上特定控件属性的方法 - Google Patents
一种确定手机页面上特定控件属性的方法 Download PDFInfo
- Publication number
- CN105354138A CN105354138A CN201510658566.8A CN201510658566A CN105354138A CN 105354138 A CN105354138 A CN 105354138A CN 201510658566 A CN201510658566 A CN 201510658566A CN 105354138 A CN105354138 A CN 105354138A
- Authority
- CN
- China
- Prior art keywords
- node
- control
- mobile phone
- sequential value
- type 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test 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)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种通过手机画面截图坐标和控件序列来确定手机页面上特定控件属性的方法,其特征在于:通过将手机页面截图后,记录用户鼠标点击位置,将该位置和卸出的该页面布局文件中相应属性值做对比,那么就可以得知用户点击的是这个控件。将这个控件的class值在xml中进行对比,若在这个控件以前有相同的class值出现,则序列数依次增大。通过UIautomator工具导入得到的类型名称和序列号来确定该控件,从而可以操作该控件。本发明比起单纯的发送坐标指令,可以判断执行后状态,读取属性值;比起通过单纯的文本信息判断,本发明杜绝因没有文本信息而无法确定控件的问题。
Description
技术领域
本发明涉及移动终端技术领域,尤其涉及一种确定手机页面上特定控件属性的方法,特别涉及通过手机画面截图坐标和控件序列来确定手机页面上特定控件属性的方法,用于智能手机的自动化测试。
背景技术
在对智能手机进行自动化测试的过程中,需要录制执行脚本。在录制执行脚本时,采用以下两种方法对手机界面上的控件进行操作:
第一、测试人员获取当前手机界面截图后,再在当前手机界面截图上点击要操作的控件对应的控件图案,由计算机程序获得点击坐标,再通过相应的命令(例如adb命令)让手机点击该坐标。
这种方法虽然可以让手机出现点击动作,但是无法得到被点击的控件的属性,从而无法判断点击效果。并且,这种方法的通用性较差。
第二种、测试人员获取当前手机界面截图以及卸出的当前手机界面所对应的界面布局文件后,再在当前手机界面截图上点击要操作的控件对应的控件图案,由计算机程序获得文本信息,将文本信息与界面布局文件中各文本信息段内的内容相比较,从而获得控件图案对应的控件。
这种方法在实际应用中有诸多限制,例如:若控件没有文本信息,则无法确定对应的控件;若当前手机界面上的多个控件具有相同的文本信息时,则在确定对应的控件时会发生误判。
发明内容
本发明的目的是提供一种确定手机页面上特定控件属性的方法,尤其涉及过手机画面截图坐标和控件序列来确定手机页面上特定控件属性的方法
为了达到上述目的,本发明的技术方案是提供了一种确定手机页面上特定控件属性的方法,包括以下步骤:
步骤1、获得当前手机界面的截图以及与卸出的与当前手机界面相对应的界面布局文件,在界面布局文件中,当前手机界面上的每一个控件被定义为一个节点,每个节点至少包含记录当前节点坐标范围的边界信息;
步骤2、在截图上点击要操作的控件对应的控件图案;
其特征在于,还包括:
步骤3、获取步骤2中点击处的位置坐标,根据界面布局文件中各节点的边界信息,确定该位置坐标对应的节点;
步骤4、根据上一步得到的结果对控件图案对应的控件进行相应的操作。
优选地,其特征在于:
在所述步骤1中,所述节点还包含记录当前节点类型的类型信息;
在所述步骤3之后,并所述步骤4之前,还包括:
步骤A、得到所述步骤3中确定的节点的类型信息;
步骤B、遍历界面布局文件中所有节点的类型信息,将其与步骤A得到的类型信息相比较,从而得到序列值。
优选地,步骤4中所述相应的操作包括:根据所述步骤A得到的类型信息以及所述步骤B得到的序列值,获得步骤2中所点击的控件图案所对应控件的控件属性和/或根据所述步骤A得到的类型信息以及所述步骤B得到的序列值,操作步骤2中所点击的控件图案所对应的控件。
优选地,所述步骤3包括:
步骤3.1、将界面布局文件中第一个节点设为当前节点;
步骤3.2、判断步骤2中点击处的位置坐标所否落入当前节点的边界信息所记录的坐标范围内,若是,当前节点为与该位置坐标对应的节点,记为控件节点,进入所述步骤4,若否,则进入步骤3.3;
步骤3.3、将下一个节点设为当前节点,返回步骤3.2,直至遍历界面布局文件中的所有节点。
优选地,所述步骤B包括:
步骤B.1、将序列值初始化为a,a为不小于1的整数,并将控件节点的上一个节点设为当前节点;
步骤B.2、将所述步骤A得到的类型信息与当前节点的类型信息相比较,若相同,则将序列值递增或递减,进入步骤B.3,若不同,则直接进入步骤B.3;
步骤B.3、将当前节点的上一个节点设为当前节点,返回步骤B.2,直至遍历界面布局文件中的所有节点,得到最终的序列值。
优选地,在所述步骤B.2中,所述序列值递增1,则所述步骤B.3中,得到的最终的序列值=序列值-a+1。
与现有技术相比,本发明的优点在于:
1、比起单纯的发送坐标指令,本发明实实在在取得了用户点击控件,这样可以判断执行后状态,读取属性值,智能化大大提高;
2、比起通过单纯的文本信息判断,本发明杜绝因没有文本信息而无法确定控件的问题,更进一步,通过确定序列而可以杜绝因文本信息相同引起的误判现象。
附图说明
图1为本发明提供的一种通过手机画面截图坐标和控件序列来确定手机页面上特定控件属性的方法的流程图。
具体实施方式
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
如图1所示,本发明提供了一种通过手机画面截图坐标和控件序列来确定手机页面上特定控件属性的方法,其步骤为:
步骤1、获得当前手机界面的截图以及与卸出的与当前手机界面相对应的界面布局文件。
对于运行Android***的智能手机而言,其界面布局文件通常为XML格式。在界面布局文件中,其所对应的手机界面的上的各个控件以节点表示,每个节点至少包含以下信息:
边界信息,记录节点所对应的控件的上、下、左、右边界的坐标范围,在Android***的界面布局文件中为nodebounds属性值;
类型信息,记录节点所对应控件的类型,在Android***的界面布局文件中为class属性值。对于不同的节点而言,其类型信息,即class属性值可能相同,在此情况下,为了对不同的节点所代表的不同控件加以区分,引入了序列值,具有相同class属性值的不同节点,其序列值是不相同的。通常而言,从手机界面的最上方的位置开始,由上至下,拥有相同class属性值的节点所对应的序列值是递增的,每次递增1,而最上方的节点所对应的序列值则通常设为1。
步骤2、利用鼠标或其他方式在截图上点击要操作的控件对应的控件图案。
步骤3、获取步骤2中点击处的位置坐标,根据界面布局文件中各节点的边界信息,即nodebounds属性值,确定该位置坐标对应的节点,具体包括如下步骤:
步骤3.1、将界面布局文件中第一个节点设为当前节点;
步骤3.2、判断步骤2中点击处的位置坐标所否落入当前节点的nodebounds属性值中,若是,当前节点为与该位置坐标对应的节点,记为控件节点,进入所述步骤4,若否,则进入步骤3.3;
步骤3.3、将下一个节点设为当前节点,返回步骤3.2,直至遍历界面布局文件中的所有节点。
步骤4、获取控件节点的类型信息,即class属性值,将其与界面布局文件中所有节点的class属性值相比较,从而得到序列值,具体包括如下步骤:
步骤4.1、将序列值初始化为1,并将控件节点的上一个节点设为当前节点;
步骤4.2、将控件节点的class属性值与当前节点的class属性值相比较,若相同,则序列值递增1,进入步骤4.3,若不同,则直接进入步骤4.3;
步骤4.3、将当前节点的上一个节点设为当前节点,返回步骤4.2,直至遍历界面布局文件中的所有节点,得到最终的序列值。
步骤5、通过UIautomator工具导入步骤4得到的class属性值及序列值,从而确定步骤2中控件图案对应的控件,对该控件进行操作后,可以读取控件的控件属性,从而对点击效果做出判断。
本发明通过判断类型而可以杜绝应没有文本信息而无法确定控件的问题;通过确定序列而可以杜绝误判现象。通过给出确定的类型名称和序列值可以通过UIautomator工具得到对应的控件从而操作控件或者判断控件属性。
Claims (6)
1.一种确定手机页面上特定控件属性的方法,包括以下步骤:
步骤1、获得当前手机界面的截图以及与卸出的与当前手机界面相对应的界面布局文件,在界面布局文件中,当前手机界面上的每一个控件被定义为一个节点,每个节点至少包含记录当前节点坐标范围的边界信息;
步骤2、在截图上点击要操作的控件对应的控件图案;
其特征在于,还包括:
步骤3、获取步骤2中点击处的位置坐标,根据界面布局文件中各节点的边界信息,确定该位置坐标对应的节点;
步骤4、根据所述对应的节点对控件图案对应的控件进行相应的操作。
2.如权利要求1所述的一种确定手机页面上特定控件属性的方法,其特征在于:
在所述步骤1中,所述节点还包含记录当前节点类型的类型信息;
在所述步骤3之后,并所述步骤4之前,还包括:
步骤A、得到所述步骤3中确定的节点的类型信息;
步骤B、遍历界面布局文件中所有节点的类型信息,将其与步骤A得到的类型信息相比较,从而得到序列值。
3.如权利要求2所述的一种确定手机页面上特定控件属性的方法,其特征在于,步骤4中所述相应的操作包括:根据所述步骤A得到的类型信息以及所述步骤B得到的序列值,获得步骤2中所点击的控件图案所对应控件的控件属性和/或根据所述步骤A得到的类型信息以及所述步骤B得到的序列值,操作步骤2中所点击的控件图案所对应的控件。
4.如权利要求2所述的一种确定手机页面上特定控件属性的方法,其特征在于,所述步骤3包括:
步骤3.1、将界面布局文件中第一个节点设为当前节点;
步骤3.2、判断步骤2中点击处的位置坐标所否落入当前节点的边界信息所记录的坐标范围内,若是,当前节点为与该位置坐标对应的节点,记为控件节点,进入所述步骤4,若否,则进入步骤3.3;
步骤3.3、将下一个节点设为当前节点,返回步骤3.2,直至遍历界面布局文件中的所有节点。
5.如权利要求4所述的一种确定手机页面上特定控件属性的方法,其特征在于,所述步骤B包括:
步骤B.1、将序列值初始化为a,a为不小于1的整数,并将控件节点的上一个节点设为当前节点;
步骤B.2、将所述步骤A得到的类型信息与当前节点的类型信息相比较,若相同,则将序列值递增或递减,进入步骤B.3,若不同,则直接进入步骤B.3;
步骤B.3、将当前节点的上一个节点设为当前节点,返回步骤B.2,直至遍历界面布局文件中的所有节点,得到最终的序列值。
6.如权利要求5所述的一种确定手机页面上特定控件属性的方法,其特征在于:
在所述步骤B.2中,所述序列值递增1,则所述步骤B.3中,得到的最终的序列值=序列值-a+1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510658566.8A CN105354138A (zh) | 2015-10-12 | 2015-10-12 | 一种确定手机页面上特定控件属性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510658566.8A CN105354138A (zh) | 2015-10-12 | 2015-10-12 | 一种确定手机页面上特定控件属性的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105354138A true CN105354138A (zh) | 2016-02-24 |
Family
ID=55330112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510658566.8A Pending CN105354138A (zh) | 2015-10-12 | 2015-10-12 | 一种确定手机页面上特定控件属性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105354138A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021102A (zh) * | 2016-05-16 | 2016-10-12 | 北京奇虎科技有限公司 | 自动化测试文件的生成方法及装置 |
CN106339452A (zh) * | 2016-08-25 | 2017-01-18 | 北京小米移动软件有限公司 | 事件响应方法及装置 |
CN108984239A (zh) * | 2018-05-29 | 2018-12-11 | 北京五八信息技术有限公司 | 选择控件的处理方法、装置、设备和存储介质 |
CN109299960A (zh) * | 2017-07-24 | 2019-02-01 | Tcl集团股份有限公司 | 监控广告的方法、装置及计算机可读存储介质、终端设备 |
CN109614169A (zh) * | 2018-12-29 | 2019-04-12 | 上海上讯信息技术股份有限公司 | 基于像素坐标方式的Windows客户端应用程序自动运行方法 |
CN114025210A (zh) * | 2021-11-01 | 2022-02-08 | 深圳小湃科技有限公司 | 弹窗屏蔽方法、设备、存储介质及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004633A (zh) * | 2009-09-03 | 2011-04-06 | 阿里巴巴集团控股有限公司 | 一种处理控件属性的方法及装置 |
CN103309797A (zh) * | 2012-03-09 | 2013-09-18 | 阿里巴巴集团控股有限公司 | 用户界面自动化测试方法及装置 |
US8689189B1 (en) * | 2008-02-15 | 2014-04-01 | Amazon Technologies, Inc. | Systems and methods for testing widgets |
US8832590B1 (en) * | 2007-08-31 | 2014-09-09 | Google Inc. | Dynamically modifying user interface elements |
CN104881364A (zh) * | 2015-06-26 | 2015-09-02 | 上海斐讯数据通信技术有限公司 | 应用于安卓***的自动化测试方法及*** |
-
2015
- 2015-10-12 CN CN201510658566.8A patent/CN105354138A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8832590B1 (en) * | 2007-08-31 | 2014-09-09 | Google Inc. | Dynamically modifying user interface elements |
US8689189B1 (en) * | 2008-02-15 | 2014-04-01 | Amazon Technologies, Inc. | Systems and methods for testing widgets |
CN102004633A (zh) * | 2009-09-03 | 2011-04-06 | 阿里巴巴集团控股有限公司 | 一种处理控件属性的方法及装置 |
CN103309797A (zh) * | 2012-03-09 | 2013-09-18 | 阿里巴巴集团控股有限公司 | 用户界面自动化测试方法及装置 |
CN104881364A (zh) * | 2015-06-26 | 2015-09-02 | 上海斐讯数据通信技术有限公司 | 应用于安卓***的自动化测试方法及*** |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021102A (zh) * | 2016-05-16 | 2016-10-12 | 北京奇虎科技有限公司 | 自动化测试文件的生成方法及装置 |
CN106339452A (zh) * | 2016-08-25 | 2017-01-18 | 北京小米移动软件有限公司 | 事件响应方法及装置 |
CN109299960A (zh) * | 2017-07-24 | 2019-02-01 | Tcl集团股份有限公司 | 监控广告的方法、装置及计算机可读存储介质、终端设备 |
CN109299960B (zh) * | 2017-07-24 | 2024-02-02 | Tcl科技集团股份有限公司 | 监控广告的方法、装置及计算机可读存储介质、终端设备 |
CN108984239A (zh) * | 2018-05-29 | 2018-12-11 | 北京五八信息技术有限公司 | 选择控件的处理方法、装置、设备和存储介质 |
CN108984239B (zh) * | 2018-05-29 | 2021-07-20 | 北京五八信息技术有限公司 | 选择控件的处理方法、装置、设备和存储介质 |
CN109614169A (zh) * | 2018-12-29 | 2019-04-12 | 上海上讯信息技术股份有限公司 | 基于像素坐标方式的Windows客户端应用程序自动运行方法 |
CN114025210A (zh) * | 2021-11-01 | 2022-02-08 | 深圳小湃科技有限公司 | 弹窗屏蔽方法、设备、存储介质及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297759B (zh) | 一种制作测试页面脚本的方法、装置、设备及存储介质 | |
CN105354138A (zh) | 一种确定手机页面上特定控件属性的方法 | |
US11561887B2 (en) | Test script debugging using an automated testing framework and UI rendering tree | |
CN107861655B (zh) | 控件匹配方法、装置、计算机设备和存储介质 | |
US8219582B2 (en) | System, method, and computer readable media for identifying a user-initiated log file record in a log file | |
CN104252410A (zh) | 一种对页面中的控件进行测试的方法和设备 | |
CN104679658A (zh) | Web页面的测试方法和*** | |
CN103377119A (zh) | 一种非标准控件自动化测试方法和装置 | |
CN104615538A (zh) | 一种基于手机界面控件元素的手机应用测试方法 | |
CN104980552B (zh) | 实现Android移动终端自动化测试的方法及*** | |
CN103631590A (zh) | 自动化测试脚本的编辑方法 | |
CN105183291A (zh) | 显示界面中的信息提取方法及*** | |
CN109840201B (zh) | Ui测试方法、装置、电子设备及计算机可读存储介质 | |
CN109656652B (zh) | 网页图表绘制方法、装置、计算机设备和存储介质 | |
KR102635847B1 (ko) | 애플리케이션 테스트 자동화 장치 및 방법 | |
CN103279420B (zh) | 优化的移动终端应用程序自动化测试方法和*** | |
CN107871128A (zh) | 一种基于svg动态图表的高鲁棒性图像识别方法 | |
CN105446752A (zh) | 应用程序中控件的触发方法、装置及移动终端 | |
CN105306928A (zh) | 一种测试机顶盒浏览器的方法及装置 | |
JP2009223568A (ja) | シナリオ生成装置及びプログラム | |
CN107590044B (zh) | 一种分布式存储集群的测试方法、装置及设备 | |
CN104142885A (zh) | 一种用于对被测程序进行异常测试的方法和装置 | |
CN112188192A (zh) | 码流适应性测试方法、***、计算机设备及存储介质 | |
CN105740141A (zh) | 一种自动化检测方法及其装置 | |
CN110781092A (zh) | 一种脚本测试方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160224 |
|
RJ01 | Rejection of invention patent application after publication |