CN109582566A - 一种脚本录制方法 - Google Patents
一种脚本录制方法 Download PDFInfo
- Publication number
- CN109582566A CN109582566A CN201811294395.5A CN201811294395A CN109582566A CN 109582566 A CN109582566 A CN 109582566A CN 201811294395 A CN201811294395 A CN 201811294395A CN 109582566 A CN109582566 A CN 109582566A
- Authority
- CN
- China
- Prior art keywords
- script
- recording
- record
- playback
- recording according
- 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.)
- Withdrawn
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/3688—Test management for test execution, e.g. scheduling of test suites
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
一种脚本录制方法,包括以下步骤,打开需要录制的应用;录制脚本,同时将测试人员的操作记录到脚本中;回放脚本;调整脚本;选择脚本语言。本发明的脚本录制方法,能够与各种Android设备上的软件产品交互,可以忠实的记录和重现复杂的用户操作动作,使用脚本完整模仿用户操作、实时读取手机系统数据、自动在多款手机上运行应用提高测试效率,可以录制兼容性、性能、稳定性甚至只是某一个单独功能的测试脚本。记录测试步骤并截图,及时发现测试中的问题,大量减少人工成本。
Description
技术领域
本发明涉及自动化测试技术领域,特别是一种自动化测试时的脚本录制方法。
背景技术
目前市场上的各类录制工具,使用步骤繁复,且无法支持所有的Android设备、系统以及其衍生系统,只能对安卓端的网页、应用中的某一类进行录制,录制中没有详细的页面支持,测试行为无法记录和注释,以及需要对每个不同的机型、各种不规则的分辨率进行单独的脚本录制等等问题,无法满足自动化测试各类需求。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种脚本录制方法,在自动化测试时,能够与各种Android设备上的软件产品交互,记录和重现复杂的用户操作动作,完整模仿用户操作、实时读取手机系统数据、自动在多款手机上运行应用提高测试效率。
为实现上述目的,本发明提出了脚本录制方法,包括以下步骤:
1)打开需要录制的应用;
2)录制脚本,同时将测试人员的操作记录到脚本中;
3)回放脚本;
4)调整脚本;
5)选择脚本语言。
进一步地,所述需要录制的应用包括网页、应用、游戏。
进一步地,步骤2)所述测试人员的操作,进一步包括,截图操作、滑动操作、字符输入、点击系统按钮、等待操作、权限确认、控件点击、隐藏系统按钮、控件检查、点击图片、控件滑动操作、检查文本溢出。
进一步地,步骤2)进一步包括,输出日志注释。
进一步地,所述回放脚本和所述调整脚本通过方法段来分段进行脚本回放和调整脚本。
更进一步地,步骤5)中的脚本语言是lua、php或Python。
本发明的脚本录制方法,是基于Android SDK(安卓SDK)中的ddmlib类库结合javaswing类库进行自行开发的实时显示手机应用当前界面并且可以进行相关操作的录制工具,是对Android系统上的各类应用和游戏的脚本自动化录制进行了进一步发展。通过电脑能够与各种Android设备上的软件产品交互,包括系统中的应用以及游戏类产品,通过这个工具创建的脚本可以在许多不同的安卓平台和机型上执行。它可以忠实的记录和重现复杂的用户操作动作,使用脚本完整模仿用户操作、实时读取手机系统数据、自动在多款手机上运行应用提高测试效率,可以录制兼容性、性能、稳定性甚至只是某一个单独功能的测试脚本。记录测试步骤并截图,及时发现测试中的问题,大量减少人工成本。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的脚本录制方法流程图;
图2为根据本发明的脚本录制方法的基础界面的示意图;
图3为根据本发明的脚本录制方法的录制回放界面的示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的脚本录制方法流程图,下面将参考图1,对本发明的脚本录制方法进行详细描述。
首先,在步骤101,打开工具,如果出现无法打开工具的情况,请检查java环境。
在步骤102,连接录制手机,因为录制过程是在PC上完成的,所以具体操作需要完全在PC机器上完成。可以通过调整工具为按照固定时间自动录屏,或者在完成某一个操作后手动点击录屏按钮,再次录屏。
在步骤103,打开需要录制的应用。该应用可以有网页、应用、游戏三类。
在步骤104,按照正常的操作录制脚本,在这个过程中需要测试人员通过在录制工具上的录屏界面进行正常的操作,每次操作的内容都会被记录到脚本中。具体可以执行的行为,已在下文的工具说明中阐述。
在步骤105,回放录制的脚本,把前面录制的脚本进行回放,查看是否按照录制的操作完成了脚本的录制。
在步骤106,调整脚本,为了更加方便调试,可以通过方法段来分段进行回放和调试。
因为现在手机机型千差万别,屏幕分辨率多种多样。总结起来基本可以分为两个类别:规则分辨率(如720*1280、1080*1920)和不规则分辨率(如750*1334、1080*1800),这就需要算法的微调来达到脚本更加准确,有效操作率更高的目的。
在步骤107,选择脚本语言。在该步骤中,可以选择lua、php和Python等脚本语言。
在步骤108,脚本录制完成。
本工具需要在java环境下使用,所以需要安装有java或者jdk环境。
图2为根据本发明的脚本录制方法的基础界面的示意图。
该系统的控件读取方式:
用第三方应用主动发送广播信息到游戏应用,游戏应用根据广播信息封装控件信息并以广播形式返回。
广播信息说明:
广播:com.snailgame.View。
参数说明:
All:返回全部界面上显示的控件信息;
name:ViewName返回控件名称为ViewName的控件信息,如果没有则为空;
Scale:返回界面缩放率。
截图操作1:takePicture。在脚本录制过程中,可以点击该按钮进行截图操作,同时会自动为该截图添加方法getImagePixel;通过该方法确定该截图是否有花屏、黑屏等界面显示问题。
滑动操作2:drag。有部分界面是需要通过滑动操作来完成的,比如游戏应用中的好友界面、淘宝应用中的物品详情界面等等。
输入类型3:type。部分界面的输入可以通过界面点击完成,但是也有比较麻烦的字符输入,就可以通过type方法来完成。
输出日志注释4:log。脚本录制较长之后,对一些操作步骤进行解释,方便后期脚本的调试。
脚本修改回放5:playBack。回放按钮,录制完成的脚本通过回放按钮,打开回放界面。在回放界面,可以调整录制好的脚本。回放时工具会自动重启当前应用,并开始回放脚本。
点击系统按钮6:Press。Android系统的Back、Home、Space等指令可以通过该按钮完成。
等待时间7:waitFor。游戏或者应用在回放过程中,有些步骤可能需要时间来加载,就可以通过该方法完成。
权限确认8:monitor。应用或者游戏在执行过程中,会有些权限的申请,就需要通过该方法完成权限的通过。
游戏控件点击9:clickGameControl。游戏内的控件,点击操作。
系统隐藏控件点击10:clickGameControlHide。部分手机的系统按钮是隐藏的,就需要通过该方法避免误操作。
控件检查11:clickGameControlCheck。控件检查,确认是否是需要点击的控件。
点击图片控件12:clickGameImage。图片点击,游戏的包裹内的物品,基本都是图片组成而非按钮的形式。通过此方法完成点击操作。
控件滑动操作13:dragGameControl,滑动操作。
检查文本溢出14:checkTextOverflow。文本超过按钮长度检查。
方法开始15:function。方法开始。
方法结束16:endFuction。方法结束。
默认控件界面17:录屏后的单个屏幕上的控件界面可能会有多个,工具会把最近的第一个控件界面放在默认控件中,等待选择。
所有控件列表18:屏幕上的控件界面都在这个列表中。
默认图片19:默认图片界面,录屏后的图片单独列出,默认选择第一个图片。
图片列表20:录屏中的所有图片都在这个列表中。
录屏区域21:可以通过参数的修改,工具会在间隔参数时间后自动录屏一次,也可以通过按钮手动录屏。Android上的具体操作都可以直接在录屏区域内完成。
工具目前支持控件操作和屏幕坐标操作两种,部分应用或游戏中存在需点击区域无法识别的问题,可以通过屏幕坐标来完成操作。
图3为根据本发明的脚本录制方法的录制回放界面的示意图。窗口左边示出了脚本显示区域,窗口右边示出了回放日志显示区域。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行所述的脚本录制方法的步骤。其中,所述脚本录制方法请参见前述部分的介绍,不再赘述。
本发明实施例还提供了一种测试终端设备,包括存储器和处理器,所述存储器上储存有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行所述的脚本录制方法的步骤。其中,所述脚本录制方法请参见前述部分的介绍,不再赘述。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种脚本录制方法,包括以下步骤:
1)打开需要录制的应用;
2)录制脚本,同时将测试人员的操作记录到脚本中;
3)回放脚本;
4)调整脚本;
5)选择脚本语言。
2.根据权利要求1所述的脚本录制方法,其特征在于,所述需要录制的应用包括网页、应用、游戏。
3.根据权利要求1所述的脚本录制方法,其特征在于,步骤2)所述测试人员的操作,进一步包括,截图操作、滑动操作、字符输入、点击系统按钮、等待操作、权限确认、控件点击、隐藏系统按钮、控件检查、点击图片、控件滑动操作、检查文本溢出。
4.根据权利要求1所述的脚本录制方法,其特征在于,步骤2)进一步包括,输出日志注释。
5.根据权利要求1所述的脚本录制方法,其特征在于,所述回放脚本和所述调整脚本通过方法段来分段进行脚本回放和调整脚本。
6.根据权利要求1所述的脚本录制方法,其特征在于,步骤5)中的脚本语言是lua、php或Python。
7.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至6任一项所述脚本录制方法的步骤。
8.一种测试终端设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行权利要求1至6任一项所述脚本录制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811294395.5A CN109582566A (zh) | 2018-11-01 | 2018-11-01 | 一种脚本录制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811294395.5A CN109582566A (zh) | 2018-11-01 | 2018-11-01 | 一种脚本录制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109582566A true CN109582566A (zh) | 2019-04-05 |
Family
ID=65921054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811294395.5A Withdrawn CN109582566A (zh) | 2018-11-01 | 2018-11-01 | 一种脚本录制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109582566A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110533969A (zh) * | 2019-08-05 | 2019-12-03 | 深圳市编玩边学教育科技有限公司 | 一种编程教学端及系统 |
CN112231206A (zh) * | 2020-09-30 | 2021-01-15 | 广州掌动智能科技有限公司 | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 |
CN113722164A (zh) * | 2021-08-23 | 2021-11-30 | 中国电力科学研究院有限公司 | 移动端自动化测试和远程真机调试方法、系统及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104407980A (zh) * | 2014-12-17 | 2015-03-11 | 用友软件股份有限公司 | 移动应用自动化测试装置和方法 |
CN105740154A (zh) * | 2016-03-03 | 2016-07-06 | 北京白鹭时代信息技术有限公司 | 一种网页游戏测试脚本生成方法及装置 |
CN107357724A (zh) * | 2017-06-27 | 2017-11-17 | 深圳市泰衡诺科技有限公司上海分公司 | 安卓系统中的软件自动化测试方法及装置 |
US20170337122A1 (en) * | 2016-05-18 | 2017-11-23 | Dynatrace Llc | Synthetic test recorder installed inline with a web portal |
CN108153672A (zh) * | 2017-12-25 | 2018-06-12 | 苏州蜗牛数字科技股份有限公司 | 一种移动应用的自动化测试系统及测试方法 |
-
2018
- 2018-11-01 CN CN201811294395.5A patent/CN109582566A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104407980A (zh) * | 2014-12-17 | 2015-03-11 | 用友软件股份有限公司 | 移动应用自动化测试装置和方法 |
CN105740154A (zh) * | 2016-03-03 | 2016-07-06 | 北京白鹭时代信息技术有限公司 | 一种网页游戏测试脚本生成方法及装置 |
US20170337122A1 (en) * | 2016-05-18 | 2017-11-23 | Dynatrace Llc | Synthetic test recorder installed inline with a web portal |
CN107357724A (zh) * | 2017-06-27 | 2017-11-17 | 深圳市泰衡诺科技有限公司上海分公司 | 安卓系统中的软件自动化测试方法及装置 |
CN108153672A (zh) * | 2017-12-25 | 2018-06-12 | 苏州蜗牛数字科技股份有限公司 | 一种移动应用的自动化测试系统及测试方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110533969A (zh) * | 2019-08-05 | 2019-12-03 | 深圳市编玩边学教育科技有限公司 | 一种编程教学端及系统 |
CN110533969B (zh) * | 2019-08-05 | 2022-03-29 | 深圳市编玩边学教育科技有限公司 | 一种编程教学端及系统 |
CN112231206A (zh) * | 2020-09-30 | 2021-01-15 | 广州掌动智能科技有限公司 | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 |
CN113722164A (zh) * | 2021-08-23 | 2021-11-30 | 中国电力科学研究院有限公司 | 移动端自动化测试和远程真机调试方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110191676A1 (en) | Cross-Browser Interactivity Recording, Playback, and Editing | |
US9459994B2 (en) | Mobile application testing systems and methods | |
US10095609B1 (en) | Intermediary for testing content and applications | |
US20110173589A1 (en) | Cross-Browser Interactivity Testing | |
US9983892B2 (en) | Deep linking to mobile application states through programmatic replay of user interface events | |
US9342237B2 (en) | Automated testing of gesture-based applications | |
TWI510913B (zh) | 測試裝置及其測試方法 | |
US20060101404A1 (en) | Automated system for tresting a web application | |
CN105740154A (zh) | 一种网页游戏测试脚本生成方法及装置 | |
CN109582566A (zh) | 一种脚本录制方法 | |
CN109966742B (zh) | 游戏运行中获取渲染性能数据的方法及装置 | |
Tuovenen et al. | MAuto: Automatic mobile game testing tool using image-matching based approach | |
US20220152516A1 (en) | Videogame telemetry data and game asset tracker for session recordings | |
Wu et al. | AppCheck: a crowdsourced testing service for android applications | |
US11106571B2 (en) | Identification of input object in a graphical user interface | |
WO2020057265A1 (en) | Method and system for chat function development, terminal and computer readable storage medium | |
CN111708704A (zh) | 一种云真机测试方法、装置、终端及存储介质 | |
CN110971955B (zh) | 页面处理方法及装置、电子设备以及存储介质 | |
CN110569184B (zh) | 一种测试方法及终端设备 | |
CN112685306A (zh) | 一种测试方法、装置、用户终端及存储介质 | |
CN113821424A (zh) | 应用软件的操作录制、回放方法、装置及电子设备 | |
Kovalenko | PhoneGap By Example | |
US20230367691A1 (en) | Method and apparatus for testing target program, device, and storage medium | |
CN110992360B (zh) | 设备性能测试方法、装置及电子设备 | |
CN111881045A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190405 |