CN113282502A - 脚本生成方法、装置、存储介质及电子装置 - Google Patents

脚本生成方法、装置、存储介质及电子装置 Download PDF

Info

Publication number
CN113282502A
CN113282502A CN202110626909.8A CN202110626909A CN113282502A CN 113282502 A CN113282502 A CN 113282502A CN 202110626909 A CN202110626909 A CN 202110626909A CN 113282502 A CN113282502 A CN 113282502A
Authority
CN
China
Prior art keywords
target
script
area
operation instruction
instruction
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
CN202110626909.8A
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.)
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Original Assignee
Qingdao Haier Technology Co Ltd
Haier Smart Home 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 Qingdao Haier Technology Co Ltd, Haier Smart Home Co Ltd filed Critical Qingdao Haier Technology Co Ltd
Priority to CN202110626909.8A priority Critical patent/CN113282502A/zh
Publication of CN113282502A publication Critical patent/CN113282502A/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/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种脚本生成方法、装置、存储介质及电子装置,其中,该方法包括:在确定第一设备已连接目标设备,且在确定目标设备处于开机状态的情况下,在第一区域同步显示目标设备的屏幕,第一区域为第一设备的显示屏中包括的区域;在接收到输入的操作指令的情况下,将操作指令发送给目标设备,以指示目标设备对操作指令进行响应,操作指令用于指示对目标设备执行目标操作;在第一区域显示目标设备对操作指令进行响应的响应结果,并基于响应结果在第二区域生成目标脚本,第二区域为第一设备的显示屏中包括的区域。通过本发明,解决了相关技术中存在的测试脚本的开发效率低的问题,进而达到了提高脚本开发效率的效果。

Description

脚本生成方法、装置、存储介质及电子装置
技术领域
本发明实施例涉及人工智能领域,具体而言,涉及一种脚本生成方法、装置、存储介质及电子装置。
背景技术
随着智能终端技术的快速发展,各类应用程序层出不穷,例如安卓应用程序,市面上每年仍在不断推出一些新的应用程序,各类应用程序已经逐步渗透到人们的日常生活中,因此,应用程序开发商们在开发应用程序的同时,需要保证应用程序的稳定性以提高用户体验,这就需要在应用程序正式上线发布之前对其进行充分的测试。为了对应用程序进行测试,一般需要编写测试脚本,不同应用程序的测试脚本也可能不同,有时为了满足不同型号设备的测试需求,需要编写不同语言类型的测试脚本,需要耗费大量的人力和成本,这种测试方法会过度依赖于测试人员的测试水平及测试脚本的编写能力,而目前一般的测试团队成员的脚本开发能力也是参差不齐的,应用程序的测试脚本的开发效率也难以保证。
针对现有技术中存在的测试脚本的开发效率低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种脚本生成方法、装置、存储介质及电子装置,以至少解决相关技术中存在的测试脚本的开发效率低的问题。
根据本发明的一个实施例,提供了一种脚本生成方法,包括:在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
在一个示例性实施例中,基于所述响应结果在第二区域生成目标脚本包括:基于所述响应结果在所述第二区域生成目标语言的所述目标脚本。
在一个示例性实施例中,在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应包括:在接收到输入的屏幕截取指令的情况下,将所述屏幕截取指令发送给所述目标设备,以指示所述目标设备截取目标图像;在基于所述响应结果在第二区域生成目标脚本之后,所述方法还包括:基于所述目标图像验证所述目标脚本的正确性。
在一个示例性实施例中,基于所述目标图像验证所述目标脚本的正确性包括:基于调试指令对所述目标脚本进行调试,以得到第二目标图像;将所述第二目标图像与所述目标图像进行比对,以得到比对结果,其中,所述比对结果用于指示所述第二目标图像与所述目标图像之间的相似度;基于所述比对结果验证所述目标脚本是否正确。
在一个示例性实施例中,在验证出所述目标脚本为问题脚本之后,所述方法还包括:将所述目标脚本标注为问题脚本。
在一个示例性实施例中,所述方法还包括:在验证出所述目标脚本为正确脚本的情况下,将所述目标脚本导出;在验证出所述目标脚本为问题脚本的情况下,基于修改指令在所述第二区域对所述目标脚本进行修改。
在一个示例性实施例中,所述操作指令包括以下指令至少之一:通过点击屏幕所触发的指令;通过键盘输入的指令;通过拖动屏幕所触发的指令;通过输入文本所触发的指令。
根据本发明的另一个实施例,还提供了一种脚本生成装置,包括:显示模块,用于在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;发送模块,用于在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;处理模块,用于在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,在第一设备已连接目标设备且所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,通过接收输入操作指令并将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,然后在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,实现了自动生成脚本的目的。解决了相关技术中存在的测试脚本的开发效率低的问题,进而达到了提高脚本开发效率的效果。
附图说明
图1是本发明实施例的脚本生成方法的移动终端的硬件结构框图;
图2是根据本发明实施例的脚本生成方法的流程图;
图3是根据本发明实施例的脚本生成工具功能框图;
图4是根据本发明实施例的脚本生成工具示例图;
图5是根据本发明具体实施例的脚本生成方法的流程图;
图6是根据本发明实施例的脚本生成装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的脚本生成方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的脚本生成方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种脚本生成方法,图2是根据本发明实施例的脚本生成方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;
步骤S204,在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;
步骤S206,在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
通过上述步骤,在第一设备已连接目标设备且所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,通过接收输入操作指令并将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,然后在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,实现了自动生成脚本的目的。解决了相关技术中存在的测试脚本的开发效率低的问题,进而达到了提高脚本开发效率的效果。
其中,上述步骤的执行主体可以为计算机终端,或者为具备类似处理能力的处理设备或处理单元等,但不限于此。下面以计算机终端执行上述操作为例(仅是一种示例性说明,在实际操作中还可以是其他的设备或模块来执行上述操作)进行说明:
在上述实施例中,计算机终端在确定已连接目标设备(例如移动终端、平板设备或其它屏端设备),且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,所述第一区域为所述第一设备的显示屏中包括的区域;当所述计算机终端在接收到输入的操作指令(例如点击屏幕、键盘输入或其它指令)的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,所述操作指令用于指示对所述目标设备执行目标操作;然后计算机终端在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,所述第二区域为所述第一设备的显示屏中包括的区域。通过本实施例,可缩短脚本开发周期,并且针对不同的操作指令,均可生成相应的目标脚本,实现了快速开发脚本的目的。
在一个可选的实施例中,基于所述响应结果在第二区域生成目标脚本包括:基于所述响应结果在所述第二区域生成目标语言的所述目标脚本。在本实施例中,计算机终端基于所述响应结果在第二区域生成目标脚本包括:基于所述响应结果在计算机终端的第二区域生成目标语言的脚本,例如python+monkeyrunner脚本,或其他语言的脚本,实现了自动生成脚本的目的,避免了相关技术中存在的由人员编写脚本而导致的开发效率低的问题。
在一个可选的实施例中,在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应包括:在接收到输入的屏幕截取指令的情况下,将所述屏幕截取指令发送给所述目标设备,以指示所述目标设备截取目标图像;在基于所述响应结果在第二区域生成目标脚本之后,所述方法还包括:基于所述目标图像验证所述目标脚本的正确性。在本实施例中,计算机终端在在接收到输入的屏幕截取指令的情况下,将所述屏幕截取指令发送给所述目标设备(如移动终端),以指示所述目标设备截取所述目标设备(如移动终端)的显示屏以得到第一图像,可选地,在实际应用中,可将该第一图像进行存储;以及,在存储第一图像之后,所述计算机终端截取掉所述第一图像中包括的标题栏titlebar,以得到第二图像,例如,标题栏上可能有时间或运营商等控件,可选地,在实际应用中,截屏幕得到第一图像以及截掉第一图像中包含的标题栏,是所述脚本的最后一部分,可作为自动化测试的断言,通过图像OCR(OpticalCharacter Recognition,光学字符识别)进行对比;在基于所述响应结果在第二区域生成目标脚本之后,计算机终端可基于所述第二图像(即相当于上述目标图像)验证所述目标脚本的正确性,通过本实施例,可以达到判断生成的目标脚本是否存在缺陷(或称为问题脚本),实现了进一步提高脚本的准确性的效果。
在一个可选的实施例中,基于所述目标图像验证所述目标脚本的正确性包括:基于调试指令对所述目标脚本进行调试,以得到第二目标图像;将所述第二目标图像与所述目标图像进行比对,以得到比对结果,其中,所述比对结果用于指示所述第二目标图像与所述目标图像之间的相似度;基于所述比对结果验证所述目标脚本是否正确。在本实施例中,基于所述目标图像验证所述目标脚本的正确性包括:基于调试指令对所述目标脚本进行调试,以得到第二目标图像,可选地,在实际应用中,计算机终端在第二区域生成目标脚本(如python+monkeyrunner脚本)之后,还可基于调试指令对所述目标脚本进行调试,以验证所述目标脚本的正确性,即上述所生成的脚本具备可调试功能,以确保生成的脚本可以调试通过,在实际应用中,计算机终端生成自动化测试脚本的工具中可设置一个回放按键(如button按键,或其它按键),当前述目标脚本生成之后,通过点击回放按键可以对生成的目标脚本进行调试,在对上述目标脚本进行调试的过程中,其中截掉标题栏会得到第三图像(相当于上述第二目标图像);再将所述第三图像与前述第二图像(即相当于上述目标图像)进行对比,以得到结果,当比对结果指示所述第三图像与所述第二图像之间的相似度达到预定阈值(如95%,90%或其它值)情况下,可验证出所述目标脚本为正确脚本;当比对结果指示所述第三图像与所述第二图像之间的相似度低于预定阈值(如90%,80%或其它值)的情况下,可验证出所述目标脚本为问题脚本,在实际应用中,还可据此判断目标设备(或目标设备中运行的APP应用程序)是否有缺陷(或称为漏洞,bug)。通过本实施例,可以实现判断生成的目标脚本是否有缺陷的目的,可有效提高脚本的准确性。
在一个可选的实施例中,在验证出所述目标脚本为问题脚本之后,所述方法还包括:将所述目标脚本标注为问题脚本。在实际应用中,当验证出目标脚本为问题脚本之后,可将该目标脚本进行标注,以提示相关工作人员及时进行检查、修改,或重新进行验证等。
在一个可选的实施例中,上述方法还包括:在验证出所述目标脚本为正确脚本的情况下,将所述目标脚本导出;在验证出所述目标脚本为问题脚本的情况下,基于修改指令在所述第二区域对所述目标脚本进行修改。在本实施例中,计算机终端在基于调试指令对所述目标脚本进行调试之后,当验证出所述目标脚本为正确脚本的情况下,将所述目标脚本导出,当验证出所述目标脚本为问题脚本的情况下,基于修改指令在所述第二区域对所述目标脚本进行修改,通过本实施例,导出脚本可实现脚本的再利用,可缩短脚本开发的周期,而在脚本调试不成功的情况下,还可对脚本进行修改,达到了在提高脚本开发效率的同时,也保证了脚本的准确性的效果。
在一个可选的实施例中,所述操作指令包括以下指令至少之一:通过点击屏幕所触发的指令;通过键盘输入的指令;通过拖动屏幕所触发的指令;通过输入文本所触发的指令。在本实施例中,所述操作指令包括以下至少之一:通过点击屏幕所触发的指令;通过键盘输入的指令;通过拖动屏幕所触发的指令;通过输入文本所触发的指令;或通过选择测试软件开发工具包APK所触发的指令;以及其它的测试指令;可选地,在实际应用中,可在计算机终端的第一区域进行点击、滑动、输入区输入内容等一系列功能测试用例的操作,计算机终端的第一区域会做出相应的响应,与计算机终端连接的目标设备(如移动终端)也会做出相应的响应,并且在计算机终端的第二区域会生成与各种指令相应的目标脚本。
显然,上述所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。
下面结合实施例对本发明进行具体说明:
图3是根据本发明实施例的脚本生成工具功能框图,如图3所示,该脚本生成工具功能包括:图像显示(包括前述第一区域和第二区域)、生成脚本、可触发的测试功能、回放脚本,其中,可触发的测试功能包括:START ACTIVITY测试模块、按键盘Press事件(相当于前述通过键盘输入的指令)、Drag事件(相当于前述通过拖动屏幕所触发的指令)、Type事件(相当于前述通过输入文本所触发的指令)、TOUCH事件(相当于前述通过点击屏幕所触发的指令)、截屏幕,此外,脚本生成工具运行于PC端(对应前述第一设备),并与所述PC端进行信息交互,同时,所述PC端还与主机端(对应前述目标设备)连接并进行信息交互,可选地,在实际应用中,PC端的快速生成自动化测试脚本的工具与主机端(即目标设备)可通过wifi或者usb建立通信连接。图4是根据本发明实施例的脚本生成工具示例图,如图4所示,可选地,在实际应用中,上述脚本生成工具的部分功能可通过控件设置于所述脚本生成工具的主界面中,对于一些可触发的测试功能事件可通过脚本生成工具的主界面中的选择列表进行选择,同时进行相关参数的设置,实现了脚本自动生成的目的,同时还提高了操作的便利性。
图5是根据本发明具体实施例的脚本生成方法的流程图,如图5所示,该流程包括如下步骤:
S502,开启DEBUG模式,脚本生成工具运行于PC端,PC端与目标设备(如移动终端)进行连接,当连通USB后显示已通过USB连接,相当于前述第一设备与目标设备连接,在实际应用中,还可通过wifi建立连接;
S504,选择测试APK,可在PC端的快速生成自动化测试脚本的工具上选择一个模块,即一个APK后进行测试;
S506,按工具上键盘的Press事件(相当于前述通过键盘输入的指令),即通过键盘输入的方式对目标设备进行测试;
S508,选择其他事件对目标设备进行测试,在实际应用中,其他事件根据需要可设置多项不同事件,可选地,在脚本生成工具的主界面中设置有与其他事件对应的列表选项,当点击下拉箭头后,其他事件中所包括的各项事件即可在下拉列表中显示出来,再点击下拉箭头后,又可将该下拉列表隐藏起来,一般默认是隐藏该下拉列表的;
S510,如步骤S508所述,在选择其他事件后,通过点击下拉箭头可进行具体事件的选择,例如,Touch事件(相当于前述通过点击屏幕所触发的指令),Drag事件(相当于前述通过拖动屏幕所触发的指令),Type事件(相当于前述通过输入文本所触发的指令)等,相当于对脚本生成工具输入不同的操作指令,即测试目标设备对不同事件(相当于不同操作指令)的响应情况;
S512,显示图像,在PC端与目标设备通过USB连接后,如打开目标设备的屏幕,可在PC端的脚本生成工具中同步显示目标设备的屏幕;
S514,触发笔点屏幕的Touch事件,以测试目标设备对笔点屏幕的Touch事件的响应情况;
S516,触发截屏幕事件,以测试目标设备对截屏幕事件的响应情况;
S518,在截屏幕之后,将所截取的图像(对应前述第一图像)保存在根目录下,例如,可保存为png或其它文件;
S520,在截屏幕之后,还可将所截取的图像(即对应前述第一图像)保存在粘贴板上,并裁掉标题栏titlebar;
S522,在脚本生成工具的AreaText(对应于前述第二区域)中生成脚本,例如python+monkeyrunner脚本,当然,在实际应用中,根据需要还可生成其它语言的测试脚本;
S524,回放脚本,在实际应用中,可在脚本生成工具的主界面中点击回放控件button,可以对生成的相应的python+monkeyrunner脚本进行调试;
S526,清空AreaText区域,即对脚本生成工具的AreaText区域(对应于前述第二区域)进行清除,可选地,在实际应用中,在生成脚本并调试成功后可对AreaText区域进行清除,或者在发现生成脚本为问题脚本时也可对AreaText区域进行清除;
S528,保存脚本,对于生成的脚本经过调试成功后,可将相应的脚本进行保存,在实际应用中,还可将该脚本导出。
需要说明的是,上述S504-S508的操作步骤不分先后顺序,上述步骤S504-S520中各种事件(相当于脚本生成工具接收不同的操作指令)都会对应在脚本生成工具的AreaText区域生成相应的python+monkeyrunner脚本,且在步骤S524中回放测试脚本(相当于调试脚本)后,若脚本调试失败,还可在AreaText区域进行脚本的编辑修改,然后再进行调试,直至调试成功为止。通过本实施例,可实现提高脚本开发效率的同时,也保证了脚本开发的准确性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种脚本生成装置,图6是根据本发明实施例的脚本生成装置的结构框图,如图6所示,该装置包括:
显示模块602,用于在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;
发送模块604,用于在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;
处理模块606,用于在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
在一个可选的实施例中,所述处理模块606包括:生成单元,用于基于所述响应结果在所述第二区域生成python+monkeyrunner脚本。
在一个可选的实施例中,所述装置还包括:调试模块,用于在基于所述响应结果在所述第二区域生成python+monkeyrunner脚本之后,基于调试指令对所述python+monkeyrunner脚本进行调试,以验证所述python+monkeyrunner脚本的正确性。
在一个可选的实施例中,所述装置还包括:导出模块,用于在基于调试指令对所述python+monkeyrunner脚本进行调试之后,且在验证出所述python+monkeyrunner脚本为正确脚本的情况下,将所述python+monkeyrunner脚本导出;修改模块,用于在验证出所述python+monkeyrunner脚本为问题脚本的情况下,基于修改指令在所述第二区域对所述python+monkeyrunner脚本进行修改。
在一个可选的实施例中,所述装置还包括:第一截取模块,用于在第一区域同步显示所述目标设备的屏幕之后,且在接收到屏幕截取指令的情况下,截取所述目标设备的显示屏的第一图像,并存储所述第一图像;生成模块,用于在所述第二区域生成与所述屏幕截取指令对应的第二目标脚本。
在一个可选的实施例中,所述装置还包括:第二截取模块,用于在存储所述第一图像之后,截取掉所述第一图像中的标题栏titlebar,以得到第二图像;判断模块,用于基于所述第二图像判断所述第二目标脚本是否存在漏洞。
在一个可选的实施例中,上述操作指令包括以下指令至少之一:通过点击屏幕所触发的指令;通过键盘输入的指令;通过拖动屏幕所触发的指令;通过输入文本所触发的指令。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种脚本生成方法,其特征在于,包括:
在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;
在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;
在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
2.根据权利要求1所述的方法,其特征在于,基于所述响应结果在第二区域生成目标脚本包括:
基于所述响应结果在所述第二区域生成目标语言的所述目标脚本。
3.根据权利要求1所述的方法,其特征在于,在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应包括:
在接收到输入的屏幕截取指令的情况下,将所述屏幕截取指令发送给所述目标设备,以指示所述目标设备截取目标图像;
在基于所述响应结果在第二区域生成目标脚本之后,所述方法还包括:基于所述目标图像验证所述目标脚本的正确性。
4.根据权利要求3所述的方法,其特征在于,基于所述目标图像验证所述目标脚本的正确性包括:
基于调试指令对所述目标脚本进行调试,以得到第二目标图像;
将所述第二目标图像与所述目标图像进行比对,以得到比对结果,其中,所述比对结果用于指示所述第二目标图像与所述目标图像之间的相似度;
基于所述比对结果验证所述目标脚本是否正确。
5.根据权利要求4所述的方法,其特征在于,在验证出所述目标脚本为问题脚本之后,所述方法还包括:
将所述目标脚本标注为问题脚本。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在验证出所述目标脚本为正确脚本的情况下,将所述目标脚本导出;
在验证出所述目标脚本为问题脚本的情况下,基于修改指令在所述第二区域对所述目标脚本进行修改。
7.根据权利要求1所述的方法,其特征在于,所述操作指令包括以下指令至少之一:
通过点击屏幕所触发的指令;
通过键盘输入的指令;
通过拖动屏幕所触发的指令;
通过输入文本所触发的指令。
8.一种脚本生成装置,其特征在于,包括:
显示模块,用于在确定第一设备已连接目标设备,且在确定所述目标设备处于开机状态的情况下,在第一区域同步显示所述目标设备的屏幕,其中,所述第一区域为所述第一设备的显示屏中包括的区域;
发送模块,用于在接收到输入的操作指令的情况下,将所述操作指令发送给所述目标设备,以指示所述目标设备对所述操作指令进行响应,其中,所述操作指令用于指示对所述目标设备执行目标操作;
处理模块,用于在所述第一区域显示所述目标设备对所述操作指令进行响应的响应结果,并基于所述响应结果在第二区域生成目标脚本,其中,所述第二区域为所述第一设备的显示屏中包括的区域。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
CN202110626909.8A 2021-06-04 2021-06-04 脚本生成方法、装置、存储介质及电子装置 Pending CN113282502A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110626909.8A CN113282502A (zh) 2021-06-04 2021-06-04 脚本生成方法、装置、存储介质及电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110626909.8A CN113282502A (zh) 2021-06-04 2021-06-04 脚本生成方法、装置、存储介质及电子装置

Publications (1)

Publication Number Publication Date
CN113282502A true CN113282502A (zh) 2021-08-20

Family

ID=77283516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110626909.8A Pending CN113282502A (zh) 2021-06-04 2021-06-04 脚本生成方法、装置、存储介质及电子装置

Country Status (1)

Country Link
CN (1) CN113282502A (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224456A (zh) * 2015-09-29 2016-01-06 北京奇虎科技有限公司 一种测试脚本生成方法、装置和系统
CN106161134A (zh) * 2015-04-21 2016-11-23 腾讯科技(深圳)有限公司 移动终端自动化测试方法、装置及移动终端
CN106708528A (zh) * 2016-12-28 2017-05-24 北京奇虎科技有限公司 脚本生成方法及装置
CN107885665A (zh) * 2017-12-28 2018-04-06 努比亚技术有限公司 用例脚本测试方法、移动终端及计算机可读存储介质
CN108446227A (zh) * 2018-03-12 2018-08-24 广东睿江云计算股份有限公司 一种基于selenium的虚拟机浏览器兼容性测试方法
CN108549604A (zh) * 2018-04-11 2018-09-18 上海达梦数据库有限公司 一种测试脚本生成方法、装置、终端设备及存储介质
CN109857652A (zh) * 2019-01-16 2019-06-07 深圳壹账通智能科技有限公司 一种用户界面的自动化测试方法、终端设备及介质
CN112148594A (zh) * 2020-09-03 2020-12-29 长沙市到家悠享网络科技有限公司 一种脚本测试方法、装置、电子设备及存储介质
CN112860699A (zh) * 2021-02-22 2021-05-28 北京互金新融科技有限公司 数据库的管理方法和装置、存储介质及电子装置
CN112866312A (zh) * 2019-11-27 2021-05-28 北京奇艺世纪科技有限公司 一种脚本生成方法、远程操作方法及相关设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161134A (zh) * 2015-04-21 2016-11-23 腾讯科技(深圳)有限公司 移动终端自动化测试方法、装置及移动终端
CN105224456A (zh) * 2015-09-29 2016-01-06 北京奇虎科技有限公司 一种测试脚本生成方法、装置和系统
CN106708528A (zh) * 2016-12-28 2017-05-24 北京奇虎科技有限公司 脚本生成方法及装置
CN107885665A (zh) * 2017-12-28 2018-04-06 努比亚技术有限公司 用例脚本测试方法、移动终端及计算机可读存储介质
CN108446227A (zh) * 2018-03-12 2018-08-24 广东睿江云计算股份有限公司 一种基于selenium的虚拟机浏览器兼容性测试方法
CN108549604A (zh) * 2018-04-11 2018-09-18 上海达梦数据库有限公司 一种测试脚本生成方法、装置、终端设备及存储介质
CN109857652A (zh) * 2019-01-16 2019-06-07 深圳壹账通智能科技有限公司 一种用户界面的自动化测试方法、终端设备及介质
CN112866312A (zh) * 2019-11-27 2021-05-28 北京奇艺世纪科技有限公司 一种脚本生成方法、远程操作方法及相关设备
CN112148594A (zh) * 2020-09-03 2020-12-29 长沙市到家悠享网络科技有限公司 一种脚本测试方法、装置、电子设备及存储介质
CN112860699A (zh) * 2021-02-22 2021-05-28 北京互金新融科技有限公司 数据库的管理方法和装置、存储介质及电子装置

Similar Documents

Publication Publication Date Title
CN106844217B (zh) 对应用的控件进行埋点的方法及装置、可读存储介质
CN108959068B (zh) 软件界面测试方法、设备及存储介质
CN105094783B (zh) 安卓应用稳定性测试的方法及装置
CN108845930B (zh) 界面操作测试方法和装置、存储介质及电子装置
CN103164300A (zh) 一种移动终端触摸屏自动测试方法及装置
CN108717393A (zh) 一种应用程序测试方法及移动终端
CN111240973B (zh) 基于仿真的设备测试方法、系统及可读存储介质
CN110941467A (zh) 数据处理方法、装置及系统
CN103268289B (zh) 在移动终端上录制应用测试脚本的方法和系统
CN112463467B (zh) 自动化的整合测试系统及其方法
CN112882930B (zh) 自动化测试方法、装置、存储介质及电子设备
CN106713011B (zh) 一种获取测试数据的方法与系统
CN112597065B (zh) 页面测试方法和装置
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN113449877A (zh) 用于展示机器学习建模过程的方法及系统
CN111831542A (zh) Api应用调测方法及装置、存储介质
CN113268416A (zh) 一种应用程序的测试方法、装置、存储介质及终端
CN112269746A (zh) 自动化测试方法及相关设备
CN115757014A (zh) 一种功耗测试方法及装置
CN112685299B (zh) 自动测试方法、装置、电子设备及可读存储介质
CN111078529A (zh) 客户端写入模块测试方法、装置、电子设备
CN113282502A (zh) 脚本生成方法、装置、存储介质及电子装置
CN107885648B (zh) 一种生成测试报告的方法和装置
CN114546850A (zh) 一种埋点的自动化测试方法、系统、装置及存储介质
CN114297057A (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: 20210820